22
1.Para que aparezca una conversación: RunConv(“Nombre de la conversación”); 2.Para que salga un objetivo: GiveNote(“Nombre del objetivo”); 3.Para quitar un objetivo: RemoveNote(“Nombre del objetivo”); 4.Para que cuando en un grupo (o cuando muera una unidad) quden un número mínimo y máximo ocurra lo que quieras: WaitQueryCountBetween(Nombre del grupo o la unidad,número mínimo de unidades, número máximo de unidades, -1); Lo que quieres que pase. 5.Para que un jugador no vea niebla de guerra en un sitio: _PlaceEx(“WatchEye”, coordenada 1, coordenada 2, número del jugador); 6.Para que una unidad tenga una exclamación y cuando se pinche con el botón derecho en ella se habra una conversación (necesario, sinó da a error): WaitConvRequest(Nombre de la unidad que hay que seleccionar para que otra tenga la exclamación, nombre de la unidad que va a tener la exclamación, -1); RunConv(“Nombre de la conversación que se activa”); 7.Para que aparezca un grupo: SpawnGroup(“Nombre del grupo”); 8.Para que cuando pasen una cantidad de milésimas de segundo ocurra lo que quieras: Sleep(Cantidad de milésimas que deben pasar); Lo que quieres que pase. 9.Para que una unidad o un grupo se traslade de mapa y tú también: Nombre de la unidad o el grupo que se traslada.SetParty(true); ChangeMap("Nombre del mapa al que te trasladas y se traslada la unidad o el grupo" , "nombre del área a la que se traslada la unidad o el grupo en el mapa siguiente"); 10.Para que un héroe tenga asignado a él un grupo: Nombre del grupo.SetCommand(“attach”, nombre del héroe que dirige al grupo.obj); 11.Para que un grupo o una unidad cambie de jugador: GetNamedObj(“Nombre de la unidad o el grupo”).obj.SetPlayer(Número del jugador al que cambia la unidad o el grupo); 12.Para que una unidad diga una frase de las que dice cuando se mueve: Nombre de la unidad.obj.AsUnit.Talk(); 13.Para que una unidad se cure cuando no tenga la salud al máximo: Nombre de la unidad.obj.AsUnit.Bless(); 14.Para que una estructura (menos un foro) mande víveres a una estrucura: GetNamedObj(“Nombre de la estructura que manda los víveres”).SetCommand(“tribute_default”, nombre de la estructura a la que le mandan los víveres.obj); 15.Para cambiar las relaciones diplomáticas entre dos jugadores: -Para que no se ataquen: DiplCeaseFire(Número de un jugador, número del otro, true); DiplCeaseFire(Número del otro, número de un jugador, true);

Scripts Del Imperium

Embed Size (px)

Citation preview

Page 1: Scripts Del Imperium

1.Para que aparezca una conversación:RunConv(“Nombre de la conversación”); 2.Para que salga un objetivo:GiveNote(“Nombre del objetivo”); 3.Para quitar un objetivo:RemoveNote(“Nombre del objetivo”); 4.Para que cuando en un grupo (o cuando muera una unidad) quden un número mínimo y máximo ocurra lo que quieras:WaitQueryCountBetween(Nombre del grupo o la unidad,número mínimo de unidades, número máximo de unidades, -1);Lo que quieres que pase. 5.Para que un jugador no vea niebla de guerra en un sitio:_PlaceEx(“WatchEye”, coordenada 1, coordenada 2, número del jugador); 6.Para que una unidad tenga una exclamación y cuando se pinche con el botón derecho en ella se habra una conversación (necesario, sinó da a error):WaitConvRequest(Nombre de la unidad que hay que seleccionar para que otra tenga la exclamación, nombre de la unidad que va a tener la exclamación, -1);RunConv(“Nombre de la conversación que se activa”); 7.Para que aparezca un grupo:SpawnGroup(“Nombre del grupo”);8.Para que cuando pasen una cantidad de milésimas de segundo ocurra lo que quieras:Sleep(Cantidad de milésimas que deben pasar);Lo que quieres que pase. 9.Para que una unidad o un grupo se traslade de mapa y tú también:Nombre de la unidad o el grupo que se traslada.SetParty(true);ChangeMap("Nombre del mapa al que te trasladas y se traslada la unidad o el grupo" , "nombre del área a la que se traslada la unidad o el grupo en el mapa siguiente"); 10.Para que un héroe tenga asignado a él un grupo:Nombre del grupo.SetCommand(“attach”, nombre del héroe que dirige al grupo.obj); 11.Para que un grupo o una unidad cambie de jugador:GetNamedObj(“Nombre de la unidad o el grupo”).obj.SetPlayer(Número del jugador al que cambia la unidad o el grupo); 12.Para que una unidad diga una frase de las que dice cuando se mueve:Nombre de la unidad.obj.AsUnit.Talk(); 13.Para que una unidad se cure cuando no tenga la salud al máximo:Nombre de la unidad.obj.AsUnit.Bless(); 14.Para que una estructura (menos un foro) mande víveres a una estrucura:GetNamedObj(“Nombre de la estructura que manda los víveres”).SetCommand(“tribute_default”, nombre de la estructura a la que le mandan los víveres.obj);15.Para cambiar las relaciones diplomáticas entre dos jugadores:-Para que no se ataquen:DiplCeaseFire(Número de un jugador, número del otro, true);DiplCeaseFire(Número del otro, número de un jugador, true);-Para que se vean:DiplShareView(Número de un jugador, número del otro, true);DiplShareView(Número del otro, número de un jugador, true);-Para que compartan víveres:DiplShareSupport(Número de un jugador, número del otro, true);DiplShareSupport(Número del otro, número de un jugador, true);-Para que compartan control:DiplShareControl(Número de un jugador, número del otro, true);DiplShareControl(Número del otro, número de un jugador, true);En vez de true pon false si quieres hacer lo contrario. 16.Para que una unidad se traslade al centro de un área:Nombre de la unidad.obj.SetPos(AreaCenter(“Nombre del área”)); 17.Para que una unidad o un grupo vayan a un área:Nombre del grupo o la unidad.SetCommand(“move”, AreaCenter(“Nombre del área”)); 18.Para desvincular una unidad o un grupo de un héroe:

Page 2: Scripts Del Imperium

GetNamedObj(“Nombre de la unidad o el grupo que se van a desvincular”).obj.AsUnit().DetachFrom(GetNamedObj(“Nombbre del héroe que maneja el grupo o la unidad”).obj.AsUnit.hero); 19.Para que un grupo o una unidad mantenga la posición:Nombre del grupo o la unidad.SetCommand(“hold_position”);20.Para que cuando una unidad o un grupo esté dentro de un área ocurra lo que quieras:while(!WaitUnitsInArea(Nombre del grupo o la unidad, “nombre del área en la que entra/n”, -1));Lo que quieres que pase. 21.Para que una unidad desaparezca pero que siga en el mapa:Nombre de la unidad.obj.AsUnit.Disappear(); 22.Para que encima de una unidad aparezca una x roja (eso significa que tiene maldición, que dura unos segundos):Nombre de la unidad.obj.AsUnit.Curse(); 23.Para que un héroe use una caractéristica especial:Nombre del héore.obj.AsHero().UseSkill(Código de la habilidad (más abajo)); 

-Liderazgo: hsAdministration-Marcha forzada: hsQuickMarch

-Veteranía: hsLeadership-Ataque heroico: hsEpicAttack

-Curación: hsHealing-Alto al fuego: hsCeaseFire

-Vigor: hsVigor-Sabiduría: hsWisdom

-Recuperación: hsRecovery-Supervivencia: hsSurvival

-Exploración: hsScout-Llamada a la defensa: hsDefensiveCry

-Euforia: hsEuphoria-Superiorodad ofensiva: hsTeamAttack

-Superioridad defensiva: hsTeamDefense-Acomentida: hsRush

-Osadía: hsFrenzy-Fidelidad: hsEgoism-Carisma: hsCharge-Gesta: hsAssault

-Defensa heroica: hsEpicArmor-Movimiento evasivo: hsConcealment-Resistencia heroica: hsEpicEndurance

-Maestría: hsLeaderShip-Proeza: hsBattleCry

24.Para que una unidad no pueda consumir víveres:Nombre de la unidad.obj.AsUnit.SetFeeding(false); 25.Para que una unidad pueda consumir víveres:Nombre de la unidad.obj.AsUnit.SetFeeding(true); 26.Para terminar y ganar la aventura:EndGame(Número de jugador que gana, false, Translate(“Texto que quieres que salga”)); 27.Para que aparezca una unidad:SpawnNamed(“Nombre de la unidad”); 28.Para que desaparezca una unidad o un grupo:Nombre de la unidad o grupo.Erase(); 29.Para fijar la vista solo en el lugar en el que está ahora una unidad:View(Nombre de la unidad.obj.pos, true);

Page 3: Scripts Del Imperium

 30.Para dejar de fijar la vista solo en el lugar en el que está ahora una unidad:View(Nombre de la unidad.obj.pos, false); 31.Para activar la niebla de guerra:SetFog(true);32.Para desactivar la niebla de guerra:SetFog(false) 33.Para que a un jugador se le explore un área:ExploreArea(Número del jugador que va a ver el área, “nombre del área que va a ver”); 34.Para que un grupo o una unidad entre en un barco:Nombre del grupo o la unidad.SetCommand(“boardship”,nombre del barco.obj.AsShip); 35.Para que cuando una estructura sea de un jugador ocurra lo que quieras:WaitSettlementCapture(“Nombre de la estructura que se captura”, número de jugador que debe tener la estructura capturada, -1); 36.Para que una unidad o un grupo ataque un área:Nombre del grupo o la unidad.SetCommand(“attack”, AreaCenter(“Nombre del área”)); 37.Para que una unidad o un grupo ataque un área con otro código:AttackArea(Nombre del grupo o la unidad, “nombre del área”); 38.Para que una unidad o un grupo se muevan a un área con otro código:MoveToArea(Nombre del grupo o la unidad, “nombre del área”); 39.Para que una unidad patrulle desde donde está hasta un área:Nombre de la unidad.SetCommand(“patrol”, AreaCenter(“Nombre del área”));40.Para desembarcar las unidades que hay en un barco en un área (esta área debe tener tierra):Nombre del barco.SetCommand(“unboarall”, GetRandomPointInArea(“Área en la que van a desembarcar las unidades”)); 41.Para que un grupo o una unidad entre en una estructura:Nombre del grupo o la unidad.SetCommand(“enter”, nombre de la estructura.obj); 42.Para que una unidad o un grupo capturen una estructura:Nombre de la unidad o el grupo.SetCommand(“capture”,nombre de la estructura.obj); 43.Para que una unidad sea dirigida por un héore:Nombre de la unidad.AttachTo(Nombre del héroe.obj.AsHero); 44.Para que una unidad o un grupo aparezca en una estructura (código de Imperivm III):SpawnGroupInHolder(“Nombre del grupo o la unidad”, GetNamedObj(“Nombre de la estructura”)); 45.Para desactivar todos los objetivos que haya activados:ClearNotes(); 46.Para que cuando una estructura tenga más de una cantidad de oro ocurra lo que quieras:while(GetSettlement(“Nombre de la estructura”).gold >cantidad de oro);Lo que quieres que pase.47.Para que un grupo patrulle desde donde está hacia un área:int i;Nombre del grupo.SetCommand("patrol",AreaCenter("Nombre del área"));for(i=2 ;i<=4;i+=1)Nombre del grupo.AddCommand(false,"patrol",AreaCenter("Nombre del área"));Nota: int i; se debe poner al principio de la secuencia. 48.Para añadir a una unidad un objeto mágico:

Page 4: Scripts Del Imperium

Nombre de la unidad.obj.AddItem(“Nombre de script del objeto”); 49.Para poner el nivel que quieras a una unidad:Nombre de la unidad.obj.AsUnit.SetLevel(Nivel (del 1 al 1000)); 50.Para que una estructura no se pueda conquistar:GetSettlement("Nombre de la estructura").AllowCapture(false); 51.Para que una estructura sí se pueda capturar:GetSettlement("Nombre de la estructura").AllowCapture(true); 52.Para cambiar de jugador una unidad, un grupo o una estructura:Nombre de la unidad, el grupo o la estructura.SetPlayer(Número de jugador al que se cambia); 53.Para que cuando una unidad esté en un grupo ocurra lo que quieras:while(Nombre de la unidad.obj.IsInGroup("Nombre del grupo"){Lo que quieres que pase.54.Para que un grupo o una unidad construya una catapulta:Nombre del grupo o la unidad que la construye.GetObjList().Siege(Nombre de la estructura que se asedia.obj, 1, 4); 55.Para que un grupo o una unidad salga de una catapulta:Nombre del grupo o la unidad.SetCommand("move", nombre de la estructura que se asedia.obj.pos + Point(100, 100)); 56.Para que cuando una estructura tenga la salud entre otras dos cantidades de salud ocurra lo que quieras:WaitHealthBetween(Nombre de la esructura, valor mínimo de salud que debe tener, valor máximo de salud que debe tener, -1);Lo que quieres que ocurra. 57.Para que una unidad o un grupo no se pueda mover mediante códigos:Nombre de la unidad o el grupo.SetCommand(“close_permanent”); 58.Para que una unidad o un grupo sí se puedan mover durante códigos:Nombrre del grupo o la unidad.SetCommand(“elose_permanent”); 59.Para que una unidad o un grupo se quede quieto:Nombre del grupo o la unidad.SetCommand(“stand_position”); 60.Para que una unidad o un grupo se pare:Nombre del grupo o la unidad.SetCommand(“idle”); 61.Para poner los centinelas que quieras a las murallas de una fortaleza o aldea:GetSettlement("Nombre de la fortaleza o aldea").AddSentries(centinelas (acepta -80 por ejemplo));62.Para que empiece un vídeo (en formato .avi):PlayMovie(Translate(“moviesNombre del vídeo.avi”)); 63.Para que empiece a sonar música (en formato .mp3):PlayMusic(“Dirección del archivo.mp3”); 64.Para que cuando muera una unidad de un grupo ocurra lo que quieras:while(Nombre de grupo.count > número de unidades que tiene el grupo);Lo que quieres que pase. 65.Para que depende de cada dificultad (fácil, media, o dificil) haya ocurra algo:if(GetDifficulty() == dificultad, fácil es 0, medio es 1 y dificil es 2);Lo que debe pasar. 66.Para que pase algo cada cierto tiempo (tiempo si es necesario):

Page 5: Scripts Del Imperium

while(1){Lo que quieres que pase.Sleep(Cantidad de milésimas que quieres que pasen hasta que pase otra vez lo que quieras (si es que tiene que pasar tiempo));} 67.Para que cuando una unidad muera ocurra lo que quieras (con otro código):while(!Nombre de la unidad.obj.AsUnit.IsDead());Lo que quieres que pase. 68.Para quitar una unidad o un grupo de un grupo:Nombre del grupo o la unidad.RemoveFromGroup(“Nombre del grupo del que se quita la unidad o el grupo”);69.Para desvincular todas las unidades que tiene un héroe asignadas:Nombre del héroe.SetCommand(“leavearmy”); 70.Para que cuando un edificio o una uniad o un grupo sea de un jugador ocurra lo que quieras:while(Nombre de una estructura.obj.player != número del jugador que la captura);Lo que quieres que ocurra.Nota: si quieres que sean más edificios, grupos o unidades los que hay que conquistar, añades antes de ); los iconos || y a continuación de ellos lo mismo, y así sucesivamente. 71.Para que a una unidad le pongan una cantidad de puntos de salud:Nombre de la unidad.obj.AsUnit.Heal(Cantidad de puntos de salud que recibe la unidad); 72.Para que una unidad pierda la libertad:Nombre de la unidad.obj.AsUnit().SetFreedom(false); 73.Para que una unidad tenga la libertad:Nombre de la unidad.obj.AsUnit().SetFreedom(true); 74.Para que una unidad o grupo se añadan a un grupo:Nombre del grupo o la unidad.AddToGroup(“Nombre del grupo al que se añaden”); 75.Para que las unidades controladas por un héroe se pongan en formación de línea:Nombre del héroe.obj.AsHero().SetFormation("line");76.Para que las unidades controladas por un héroe se pongan en formación de cuadrado:Nombre del héroe.obj.AsHero().SetFormation("block"); 77.Para que cuando una unidad tenga un objeto mágico ocurra lo que quieras:while(1){while(!Nombre de la unidad.obj.FindItem("Nombre de script del objeto").IsValid)Sleep(200);Lo que quieres que pase.break;} 78Para que una puerta se abra: Nombre de la puerta.obj.AsGate().OpenNow();  79.Para que empieze una cuenta hacia alante: int charges; while (1) {ShowAnnouncement("Nombre del anuncio", Translate("Texto que quieres que salga" + charges));Sleep(1000);if(charges < segundos que va a durar la cuenta alante)

Page 6: Scripts Del Imperium

charges += 1;while(charges > segundos que va a durar la cuenta alante)HideAnnouncement("Nombre del anuncio");} Nota: en vez de charges puedes poner cualquier cosa. 80.Para que cuando haya comenzado una secuencia ocurra lo que quieras:while(IsRunning("Nombre de la secuencia"));Lo que quieres que pase. 81.Para que mientras un objetivo esté activado ocurra lo que quieras:while(IsNoteActive("Nombre del objetivo"));Lo que quieres que pas si el objetivo está activado. 82.Para que cuando una unidad estñe con una cantidad de comida ocurra lo que quieras:while(Nombre de la unidad.obj.AsUnit.food == número de víveres que debe tener );Lo que quieres que pase. 83.Para que se seleccione una unidad:Nombre de la unidad.obj.Select(1); 84.Para activar un anuncio:ShowAnnouncement("Nombre del anuncio" ,Translate("Texto que quieres que salga")); 85.Para desactivar un anuncio:HideAnnouncement("Nombre del anuncio"); 86.Para que cuando un grupo esté vacío ocurra lo que quieras:WaitEmptyQuery(Nombre del grupo, -1 );Lo que quieres que ocurra. 87.Para añadir una cantidad de puntos de salud a una unidad:Nombre de la unidad.Heal(Cantidad de puntos que quieres poner); 88.Para que una unidad se convierta en otra:SpawnNamed(“Nombre de la unidad que va a aparecer”);Nombre de la unidad que va a aparecer.obj.SetPos(Unidad que de momento tienes.obj.pos);Unidad que tienes de momento.Erase();89.Para que una unidad sea invisible:Nombre de la unidad.obj.AsUnit.SetVisible(false); 90.Para que una unidad sea visible:Nombre de la unidad.obj.AsUnit.SetVisible(true); 91.Para que una unidad nunca se pueda hacer invisible:while(1){Sleep(0);Nombre de la unidad.obj.AsUnit.SetVisible(true);} 92.Para que una unidad nunca se pueda hacer visible:while(1){Sleep(0);Nombre de la unidad.obj.AsUnit.SetVisible(false);} 93.Para quitar a una unidad un objeto mágico:GetNamedObj("Nombre de la unidad").obj.RemoveItem("Nombre de script del objeto"); 

Page 7: Scripts Del Imperium

94.Para que una unidad utilize un objeto mágico:Nombre de la unidad.obj.AsUnit().UseItem(“Nombre de script del objeto mágico”); 95.Para que a una unidad le caiga un rayo:CreateFeedback(“Lighthing3”, nombre de la unidad a la que le cae el rayo.obj.AsUnit()); 96.Para que una puerta se abra:Nombre de la puerta.SetCommand(“opengate”);97.Para poner el escenario como una película:BlockUserInput(); 98.Para poner el escenario normal:UnblockUserInput(); 99.Para que la cámara siga a una unidad:StartViewFollow(Nombre de la unidad); 100.Para que la cámara deje de seguir a la unidad que está siguiendo:StopViewFollow();101.Para que se desexplore el mapa:RecreateExploration(); 102.Para que salga un texto arriba a la izquierda a la pantalla:pr(“Texto que quieres que salga”); 103.Para cancelar todas las relaciones diplomáticas:ClearDiplomacy(); 104.Para que aparezca el icono de una unidad o un grupo al lado de la pantalla (en el Imperivm III):SetShorcutSel(1, lugar (del 1 al 6), nombre del grupo o la unidad.GetObjList()); 105.Para que cuando un grupo esté parado ocurra lo que quieras:WaitIdle(Nombre del grupo o unidad, -1);Lo que quieres que ocurra. 106.Para que una unidad o un grupo pueda pasar de mapa:Nombre del grupo o unidad.SetParty(true); 107.Para que un grupo o una unidad no pueda pasar de mapa:Nombre del grupo o unidad.SetParty(false); 108.Para atribuir habilidades especiales a una unidad:Nombre de la unidad.obj.AsUnit().SetSpecial(Número de cada habilidad (más abajo), true);Código de cada habilidad: 

1: extenuación2: ferocidad.

3: golpe triple.4: inmunidad.5: vitalidad.6: absorción.

7: determinación.8: reanimación.9: resistencia.

10: ataque experto.11: tácticas defensivas.

12: penetración.13: daño reflejado.

14: obstinación.15: ataque especial.

Page 8: Scripts Del Imperium

16: defensa especial.17: golpe mortal.18: ataque letal.

19: golpe experto.20: carga.

21: regeneración.22: furia.

23: venganza.24: triunfo.

25: ataque venenoso.26: ocultación.

27: encubrimiento.28: aprendizaje.29: iniciación.30: libertad.

31: desvanecimiento.32: curación.

33: vista de lince.34: daño epansivo.

35: maldición. 109.Para que la IA deje de controlar a un jugador:AIStop(Número del jugador que controlaba); 110.Para que una unidad o un grupo se trasladen al lado de un objeto:Nombre de la unidad.obj.SetPos(Nombre del objeto.obj.pos); 111.Para que una unidad o un grupo se traslade a un punto aleatorio de un área:Nombre de la unidad.obj.SetPos(GetRandomPointInArea(“Área”)); 112.Para romper la función de un while(1){:while(1){Función que hacía el while(1){.break;}113.Para hacer aparecer una unidad en un área:Unit u;u=Place(“Código de cada unidad (más abajo)”, AreaCenter(“Nombre del área en la que aparece la unidad”),número del jugador al que va a apertenecer la unidad);u.SetStamin(Puntos de energía);u.SetLevel(Nivel que va a tener la unidad);u.SetCommand(“spawn”);Nota: u.SetStamin(Puntos de energía); es un código que solo sirve para el Imperivm III.Nota: Unit u; se debe poner al prncipio de la secuencia. Códigos de las unidades: 

HÉROES: Roma Imperial: MHero1, MHero2, MHero3, MHero4 

Roma Republicana: RHero1, RHero2, RHero3, RHero4 Ibero: IHero1, IHero2, IHero3, IHero4 

Britania: BHero1, BHero2, BHero3, BHero4 Germania: GHero1, GHero2, GHero3, GHero4 

Egipto: EHero1, EHero2, EHero3, EHero4 Galia: GHero1, GHero2, GHero3, GHero4 Cartago: CHero1, CHero2, CHero3, Chero4

 ROMA IMPERIAL Y REPUBLICANA: 

Héroe republicano: RepublicanRomanHero Héroe imperia: ImperialRomanHero 

Page 9: Scripts Del Imperium

Legionario: RHastatus Arquero romano: RArcher 

Velite: RVelit Princep: RPrinciple 

Equite: RScout Pretoriano: RPraetorian Liberatus: RLiberatus 

Sacerdote: RPriest Gladiador: RGladiator 

Tribuno: RTribune Carro de guerra: RChariot

 BRITANIA: 

Héroe britano: BritonHero Guerrero: BSwordsman 

Arquero: BBowman Lancero: BBronzeSpearman 

Luchador caledonio: BShieldBearer Jabalinas: BJavelineer 

Highlander: BHighlander Jefe normando: BVikingLord (en el Imperivm I y II se pone G en vez de B)

Druida: BDruid 

CARTAGO: Heroe: CarthaginianHero 

Infante númida: CLibyanFootman Lancero libio: CJavelinThrower 

Luchador mauritano: CBerberAssassin Guerrero con maza: CMaceman 

Tuareg: CNumidianRider Noble: CNoble 

Elefante: CWarElephant Chaman: CShaman

IBEROS: Héroe: IberianHero 

Miliciano: IMilitiaman Arquero: IArcher Hondero: ISlinger 

Defensor: IDefender Jinete: ICavalry 

Elite: IEliteGuard Guerrillero: IMountaineer Sacerdotisa: IEnchantress

 GALOS: 

Heroe galo: GaulHero Guerrero: GSwordsman 

Arquero: GArcher Guerrero con hacha: GAxeman 

Lancero: GSpearman Jinete: GHorseman 

Guerrera: GWomanWarrior Guerrero de fand: GTridentWarrior 

Druida: GDruid 

GERMANIA: Heroe: GermanHero 

Guerrero germano: TSwordsman Arquero: TArcher 

Guerrero con hacha: TAxeman 

Page 10: Scripts Del Imperium

Cazadora: THuntress Arquero teuton: TTeutonArcher

Jinete teuton: TTeutonRide Guerrero con maza: TMaceman 

Valkiria: TValkyrie Hechizera: TEnchantress

 EGIPTO:

Héroe: EgyptianHero Luchador: ESwordsman 

Arquero: EArcher Lanzador de hachas: EAxetrower 

Guerrero de Anubis: EAnubisWarrior Guerrero de Horus: EHorusWarrior 

Guardián del Nilo: EGuardian Sacerdote: EPriest 

Carro de Horus: EChariot

OTROSMula: Trader

Navío egipcio: ShipEgypt Navío romano: ShipRomeEspíritu vampiro: GGhost

114.Para activar una posada:SetInnState(Nombre de la posada.obj, 1); 115.Para que se abra el mapa general (barra espaciadora):ShowZoomMap(); 116.Para que se quite el mapa general:HideZoomMap(); 117.Guarda la aventura con el nombre que quieras:SaveAdventure(Translate("Nombre que quieres que salga al cargar la aventura")); 118.Para poner el oro que quieras a una estructura:GetSettlement(“Nombre de la estructura”).SetGold(Cantidad de oro); 119.Para poner los víveres que quieras a una estructura:GetSettlement(“Nombre de la estructura”).SetFood(Cantidad de comida);

120.Para añadir la población que quieras a un edificio:GetSettlement(“Nombre de la estructura”).AddToPopulation(Cantidad de pobación); 121.Para que cuando una unidad tire un objeto vuelva a él:while(1){Sleep(500);if(Nombre de la unidad.obj.AsUnit.FindItem(“Nombre del objeto”).IsValid())Nombre de la unidad.obj.AsUnit.AddItem(“Nombre del objeto”);} 122.Para que se realice el ritual hambruna en un altar de sacrificios cuando pase el tiempo que quieras://voidObj O_Obj;point p_MyPoint;Sleep(Cantidad de milésimas que quieres que pasen);Nombre del altar.obj.ExecCmd(“starvation”, p_MyPoint, O_Obj, false); 

Page 11: Scripts Del Imperium

Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera. 123.Para que se realice el ritual viento de la sabiduría en un altar de sacrificios cuando pase el tiempo que quieras://voidObj O_Obj;point p_MyPoint;Sleep(Cantidad de milésimas que quieres que pasen);Nombre del altar.obj.ExecCmd(“wisdom”, p_MyPoint, O_Obj, false);Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera.

124.Para que se realice el ritual de la vitalidad en un altar de sacrificios cuando pase el tiempo que quieras://voidObj O_Obj;point p_MyPoint;Sleep(Cantidad de milésimas que quieres que pasen);Nombre del altar.obj.ExecCmd(“soothing”, p_MyPoint, O_Obj, false);Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera125.Para que se realice el ritual sede de sangre en un altar de sacrificios cuando pase el tiempo que quieras://voidObj O_Obj;point p_MyPoint;Sleep(Cantidad de milésimas que quieres que pasen);Nombre del altar.obj.ExecCmd(“bloodlust”, p_MyPoint, O_Obj, false);Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera.126.Para que se realice el ritual castigo espiritual en un altar de sacrificios cuando pase le tiempo que quieras://voidObj O_Obj;point p_MyPoint;Sleep(Cantidad de milésimas que quieres que pasen);Nombre del altar.obj.ExecCmd(“sacrifice”, p_MyPoint, O_Obj, false);Nota: para hacer un ritual se necesita o un druida galo, o un fruida britano, o un chamán cartaginés, o un sacerdote egipco, o un sacerdote romano, o una sacerdotisa germana o una sacerdotisa ibera. 127.Para añadir a un lugar de objetos mágicos un objeto mágico:Nombre del lugar.obj.AsItemHolder.AddItem(“Nombre de script del objeto”);

128.Para que cuando ua unidad pise un área ocurra lo que quieras:WaitObjInQuery(Nombre de la unidad, AreaObjs(“Área”, “Unit”), -1);Lo que quieres que pase. 129.Para que una unidad recupere los puntos de energía que quieras:Nombre de la unidad.HealStamina(Puntos de energía que quieres que se le recuperen); 130.Para desembarcar un grupo o una unidad que hay en un barco:Nombre del barco.obj.AsShip().UnboardUnits(Nombre del grupo o la unidad.GetObjList); 131.Para añadir a un grupo un objeto mágico:int i; for(i=0;i<Nombre del grupo.count;i+=1)Nombre del grupo.GetObjList()[i].AsUnit.AddItem(“Nombre de script del objeto”);

Page 12: Scripts Del Imperium

 132.Para que el juego se pare (sin que ponga “PAUSA TÁCTICA”):TogglePause(); 133.Para quitar puntos de salud a una unidad o a un edificio:Nombre del edificio o la estructura.obj.Damage(10000); 134.Para que cuando un edificio sea de un jugador, o sea de otro ocurra lo que quieras:while(Nombre del edificio.obj.player != uno de los jugadores que lo debe tener || Nombre del mismo edificio.obj.player !=otro jugador que lo debe tener);Nota: si quieres que sean más jugadores los que lo deben conquistar, pon orso dos || antes del ); y escribe lo mismo: nombre del edicio.obj.play... 135.Para poner a una unidad en estado de mensjaro:Nombre de la unidad.SetMessengerStatus(true); 136.Para quitar a una unidad el estado de mensajero:Nombre de la unidad.SetMessengerStatus(false); 137.Para que no haya centinelas en una fortaleza:GetSettlement("Nombre de la fortaleza").AddSentries(-80); 138.Para que se desseleccione lo que tiene seleccionado un jugador:ClearSelection(Número del juagador); 139.Para que cuando se seleccione (una vez) una unidad ocurra lo que quieras:if(_GetSelection().Contains(Nombre de la unidad)){Lo que quieres que ocurra.ClearSelection(Número del jugador del que es la unidad);}

140.Para que siempre que entre/n una o varias unidades de un jugador en un área (sean cuales sean) ocurra algo:int i;ObjList ol;while(true){ WaitQueryCountBetween(ClassPlayerAreaObjs(cUnit, número del jugador, "nombre del área"), 1, -1, -1);ol = ClassPlayerAreaObjs(cUnit, número del jugador, "nombre del área ").GetObjList();for(i=0;i<ol.count;i+=1)ol[i].Acción que hace la/s unidad/es que entra/n. 141.Para que un héroe use la habilidad de sanación heroica cada vez que la necesite (código de Imperivm III):Nombre del héroe.obj.AsHero().SetAutocast(true);

 142.Para que un héroe deje de usar la sanación heroica (código de Imperivm III):Nombre del héroe.obj.AsHero().SetAutocast(false); 143.Para que cuando varias unidades dejen de entrenar ocurra lo que quieras:while (Nombre de una unidad.obj.command != "train" ||Nombre de otra unidad.obj.command != "train");Lo que quieres que ocurra.Nota: si quieres que sean más unidades repie lo que está a partir del segundo ||. 144.Para que desaparezca un grupo:ObjList ol;int i; 

Page 13: Scripts Del Imperium

ol = Nombre del grupo.GetObjList();for(i=0;i<ol.count;i+ =1){ol[i].Erase();Nota: ObjList ol; y int i; se deben poner al principio de la secuencia. 145.Para que aparezca un grupo de unidades en un área:int i;ObjList Units;Units = SpawnGroup(“Nombre del grupo”);for(i=0 ; i<Units.count ; i+= 1);Units[i].SetPos(GetRandomPointInArea(“Nombre del área”)); 146.Para ir al menú principal:quit(); 147.Para guardar un texto en la carpeta de Imperivm:AppendFile("Nombre que va a tener el archvivo.extensión del archivo", "Texto que quieres que vaya a salir") 148.Para poner la lealtad que quieras a un edificio:GetSettlement(“Nombre de la estructura”).SetLoyalty(Puntos de lealtad); 149.Para tener todas las hábilidades de un héore disponible:Nombre del hérore.obj.AsHero().EnableAllSkills(); 150.Para poner a una unidad en estado de mula:Nombre de la unidad.obj.AsUnit.AsWagon(); 151.Para cambiar la velocidad de ataque de una unidad:Nombre de la unidad.AsUnit().SetSpeedFactor(Nombre de la unidad.speed_factor signo de velociad si más rápido se pone + si más lento se pone – velocidad, por ejemplo a 30 más o menos); 152.Para cambiar el nombre de script a una unidad:Nombre de la unidad.obj.SetName(Nombre que quieres que tenga); 153.Para desseleccionar una unidad:Nombre de la unidad.obj.Deselect(Número del jugador del que es la unidad); 154.Para quitar todos los objetos que tiene una unidad:Nombre de la unidad.RemoveAllIems(); 155.Para distribuir experiencia a un grupo:DistributeExperience(Nombre del grupo, cantidad de experiencia que distribuyes); 156.Para que entrenen las unidades de un héroe:Nombre del héroe.obj.AsUnit.StartTraining(); 157.Para que dejen de entrenar las unidades de un héore:Nombre del héroe.obj.AsUnit.Stoptraining(); 158.Para que se repare un edificio:Nombre del edifcio.obj.AsBuilding.RRepair(); 159.Para que ubna unidad no se pueda seleccionar:Nombre de la unidad.obj.AsUnit.SetNoselectFalg(false); 160.Para que la IA pueda controlar a una unidad:Nombre de la unidad.obj.AsUnit.SetNoAIFlag(false); 161.Para que la IA no pueda controlar una unidad:

Page 14: Scripts Del Imperium

Nombre de la unidad.obj.AsUnit.SetNoAIFlag(true); 162.Para que una unidad si se pueda seleccionar:Nombre de la unidad.obj.AsUnit.SetNoselectFalg(true); 163.Para que cuando un grupo tenga menos, más, igual, más o igual o menos o igual de X unidades ocurra lo que quieras:while(Nombre del grupo.count signo (más abajo) número X de unidades);Lo que quieres que ocurra.Signos:> : menos de X unidades.< : más de X unidades.== : igual a X unidades.>= : menos o igual a X unidades.<= : más o igual a X unidades. 164.Para que cuando un grupo o una unidad tenga menos, más, igual, más o igual o menos o igual de X nivel ocurra lo que quieras:while(Nombre del grupo.level signo (más abajo) número de nivel);Lo que quieres que ocurra.Signos:> : menos de X nivel.< : más de X nivel.== : igual a X nivel.>= : menos o igual a X nivel.<= : más o igual a X nivel. 165.Para que cuando un grupo o una unidad tenga menos, más, igual, más o igual o menos o igual de X salud ocurra lo que quieras:while(Nombre del grupo.health signo (más abajo) número de salud);Lo que quieres que ocurra.Signos:> : menos de X salud.< : más de X salud.== : igual a X saludl.>= : menos o igual a X salud.<= : más o igual a X salud.166.Para poner el envenenamiento (de los carros de Osiris egipcios) a una unidad:Nombre de la unidad.obj.AsUnit.Disease(); 167.Mostrar un minimapa:MiniMap(); 168.Poner la velocidad que quieras al juego:SetSpeed(Cantidad de puntos de velocidad);169.Para que un grupo o una unidad patrulle en el área y cuando entre un enemigo este enemigo sea atacado:RunAIHelper("GuardCentralArea", "guard area", "Nombre del grupo o la unidad", "nombre del área"); 170.Para dejar siempre fijada la vista estés donde estés:LockView(); 171.Para dejar de fijar siempre fijada la vista estés donde estés:UnlockView(); 172.Para que suba o baje la cantidad de oro que quieras a una estructura:Nombre de laestructura.obj.AsBuilding().settlement.SetGold(Nombre de laestructura.obj.AsBuilding().settlement.gold signo, si quieres añadir oro, pon + si quieres quitar oro pon – cantidad de oro que restas o sumas);

Page 15: Scripts Del Imperium

 173.Para que suba o baje la cantidad de comida que quieras a una estructura:Nombre de laestructura.obj.AsBuilding().settlement.SetFood(Nombre de laestructura.obj.AsBuilding().settlement.food signo, si quieres añadir comida, pon + si quieres quitar comida pon –cantidad de comida que restas o sumas); 174.Para que suba o baje la cantidad de lealtad que quieras a una estructura:Nombre de laestructura.obj.AsBuilding().settlement.SetLoyalty(Nombre de laestructura.obj.AsBuilding().settlement.loyalty signo, si quieres añadir lealtad, pon + si quieres quitar lealtad pon – cantidad de lealtad que restas o sumas); 175.Para que una unidad tenga el mismo nivel que el que tiene otra:Nombre de la unidad que va a tener otro nivel.obj.AsUnit().SetLevel(Nombre de la unidad que tiene el nivel.obj.AsUnit().level); 176.Para terminar y perder la aventura:EndGame(1, true, Translate(“Texto que quieres que salga”)); 176.Para que aparezca un grupo y haga algo (cada cierto tiempo).while(1){ Sleep(Tiempo que quieres que pase hasta que vuelva a hacer lo mismo el grupo); SpawnGroup("Nombre del grupo otra vez").AddToGroup("Grupo para la unidad cualquiera"); Acción que hace el grupo cualquiera.Nombre del grupo que va a la estructura.RemoveFromGroup("Nombre del grupo cualquiera"); }Nota: hay que crear un grupo con una unidad cualquiera e invisible. 177.Para que un grupo o una unidad mire a otra unidad:Nombre del grupo o unidad.Face(Nombre de la unidad.obj.pos); 178.Para poner el nivel que quieras a los centinelas del jugador que quieras (código del Imperivm III):ObjList ol; int i; 

ol = ClassPlayerObjs(cSentry, número del jugador).GetObjList();for(i=0;i<ol.count;i+=1){ ol[i].AsUnit.SetLevel(Nivel que van a tener los ceninelas); } 179.Para que pase lo mismo que en el código 176 solo que con otro código:ObjList ol; 

while(1){ Sleep(Tiempo que quieres que pase hasta que haga lo mismo el grupo); ol = SpawnGroup("Nombre del grupo que va a entrar en la estructura"); ol.SetCommand("enter", Nombre de la estructura.obj); } 180.Para que baje o suba el nivel del portador de un objetoowner.obj.AsUnit.SetLevel(owner.inherentlevelcódigo, subir es + y bajar es – niveles que subes o bajas); ATENCIÓN: este código es para un objeto y no para una unidad sino para el portador de un objeto. 181.Para que empiece una cuenta atrás:int unload;unload = 100;while (1) {ShowAnnouncement("Nombre del anuncio", Translate("Texto que quieres que salga:" + unload));Sleep(1000);

Page 16: Scripts Del Imperium

if(unload < segundos que va a durar la cuenta trás)unload -= 1;while(unload == 1)HideAnnouncement("Nombre del anuncio");}Nota: en los sitios donde pone unload se puede poner cualquier otra cosa. 182.Para que una aldea cree campesinos:Nombre de la aldea.obj.AsBuilding().SetCommand(“trainpeasant”);GetNamedObj(“Nombre de la aldea que va a mandar los víveres o los campesinos”); 183.Para añadir un comando a la línea de comandos:Nombre del grupo o la unidad.AddCommand(true, “comando" ,AreaCenter(“Área”));Nota: true pone el comando al final de la cola y false al principio. 184.Para cambiar los valores de defensa, ataque, energía, nivel y salud de una unidad:Nombre de la unidad.obj.AsUnit.AddBonus(Valores de ataque,valores de defensa, valores de nivel , valores de energía,valores de salud);Nota: los valores finales se mezclan, si pones 200, 300 saldrá luego 210 de energía y 200 puntos más de salud. 185.Para que cuando una estructura tenga menos de una cantidad de víveres ocurra lo que quieras:while(GetSettlement("Nombre de la estructura").food >Cantidad de oro);Lo que quieres que ocurra. 186.Para que un grupo o una unidad se mueva, patrulle o ataque a un área con la formación que tiene:Nombre del grupo.SetCommandOffset(“Comando: atacar: attack. Mover: move. patrullar: patrol”, AreaCenter(“Área”)); 187.Para añadir a un grupo, un grupo recién expandido:Nombre del grupo o la unidad que aparece.AddUnits(SpawnGroup(“Nombre del grupo”)); 189.Para abrir/cerrar el mapa general:ToggleZoomMap(); 190.Para que una estrucura cree una mula:GetSettlement(Nombre de la estrucura).SenMule(); 191.Para que un puerto cree un bote:GetSettlement(Nombre del puerto).SedBoat(); 192.Para que cuando un grupo entre en un área se ejecute una conversación y en una frase diga algo la primera unidad que ha entrado:

Conversation C_Conv;

while(!WaitUnitsInArea(Nombre del grupo, “nombre del área”, -1));C_Conv.Init("Nombre de la conversación");C_Conv.SetActor("Actor_sample”, nombre del grupo[0].AsUnit());C_Conv.Run();

Nota 1: en vez de C_Conv se puede poner cualquier cosa y en vez de Actor_sample se puede poner otro nombre (que no sea ya de una unidad).Nota 2: Actor_sample es el nombre de actor de frase que se pone a la primera unidad del grupo que entra en el área, entonces, en la frase que dice esta unidad, debemos poner Actor_sample (o el nombre que has puesto). 193.Para poner la velocidad que quieras al juego:SetSpeed(Cantidad de puntos de velocidad);

Page 17: Scripts Del Imperium

194.Para que si una unidad o un grupo está en un grupo ocurra lo que quieras:if(Nombre de la unidad o del grupo.IsInGroup(“Nombre del grupo en el que deben estar para que pase lo que quieras”){Lo que quieres que pase.196.Para poner un título y guiarte de que empieze algo://Nombre del título. 197.Para que cuando un query esté en otro ocurra lo que quieras:WaitCommonObjects(Nombre del query que tiene que estar en otro, nombre del query en el que se tiene que estar, -1);Lo que quieres que pase. 198.Para dejar de ver un sitio (código 5 para ver un sitio):Obj o;o = _PlaceEx(“WatchEye”, coordenada 1, coordenada 2, número del jugador que deja de ver);o.Erase();Nota_ Obj o; se debe poner al principio de al secuencia 199.Para borrar de la consola lo que se escriba:cls(); 200.Para cerrar todas las variables del entorno:clr(); 201.Para que un jugador no vea niebla de guerra en un sitio (este sitio es pequeño):_PlaceEx("WatchEyeSmall", coordenada 1, coordenada 2,jugador que no ve la niebla); 202.Para eliminar de un grupo las unidaes muertas de ese grupo:Nombre del grupo.ClearDead();203.Para detener la secuencia:KillScript(); 204.Para que un jugador no haga nada en un área (ni que la pise):AreaAINoRecruit("Nombre del área", número del jugador, true);205.Para que un jugador pise y pueda hacer algo en un área:AreaAINoRecruit("Nombre del área", número del jugador, false);206.Para que si una unidad se está moviendo a alguna parte ocurra lo que quieras:Nombre de la unidad.obj.AsUnit().HasPath();207.Para que no aparezca una opción en una estructura:Nombre de la estructura.obj.CmdDisable(“Opción (las del código 78)”);