Inscrit le: 26 Jan 2009 Messages: 170 Sujets: 27 Spécialité en worldedit: Aucune pour le moment ^^
Posté le: 09/02/09 23:05 Sujet du message: Problème de cible aléatoire
Bonjour, je vous présente mon sort "Fire Rush", qui permet de faire apparaitre un pilier de feu sur un ennemi, et d'endommager les unités ennemies alentours. Après la première explosion, j'utilise un dummy pour relancer le sort sur une unité aléatoire proches de la cible principales, et je répète cette opération plusieurs fois, selon le niveau de compétence du sort.
Secret:
Gui:
Trigger:
Fire Rush
Evénements
Unité - A unit Initie l'effet d'une compétence
Conditions
And - All (Conditions) are true
Conditions
(Ability being cast) Egal à Fire Rush ((Casting unit) is Un héros) Egal à TRUE
Actions
Set FireRush_Caster[(Player number of (Owner of (Casting unit)))] = (Casting unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Egal à 1
Alors - Actions
Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité
Sinon - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Egal à 2
Alors - Actions
Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random2[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random2[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random2[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité Set FireRush_Random2[(Player number of (Owner of (Casting unit)))] = Pas d'unité
Sinon - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Egal à 3
Alors - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Target unit of ability being cast), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random2[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random2[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random2[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random3[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random3[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random3[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité Set FireRush_Random2[(Player number of (Owner of (Casting unit)))] = Pas d'unité Set FireRush_Random3[(Player number of (Owner of (Casting unit)))] = Pas d'unité
Sinon - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Egal à 4
Alors - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Target unit of ability being cast), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random2[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random2[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random2[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random3[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of FireRush_Random2[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random3[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random3[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random4[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of FireRush_Random3[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random4[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random4[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random4[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random4[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random4[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité Set FireRush_Random2[(Player number of (Owner of (Casting unit)))] = Pas d'unité Set FireRush_Random3[(Player number of (Owner of (Casting unit)))] = Pas d'unité Set FireRush_Random4[(Player number of (Owner of (Casting unit)))] = Pas d'unité
Sinon - Actions
Mon déclencheur est sans doutes bourré d'erreurs, mais j'arrive presque au résultat voulu à la fin, càd qu'il y ai x pilliers de feu pour tel niveau du sort.
A la base, tout marche bien, mais un défaut agaçant : le sort a tendence a mettre le héros caster dans les unités aléatoirement sélèctionnée, même si je met "Matching unit belongs to an enemy of Casting unit Egal à TRUE", et je ne comprends pas pourquoi...
Parfois le héros est endomagé par les dégats de "Groupe unité", et parfois il est lui-même la cible d'un dummy.
Est-ce que quelqu'un aurait assez de temps pour trouver mon erreur? J'ai essayé de recommencer plusieurs fois mon déclencheur, et il se passe toujours la même chose.
Amicalement, razengami
PS: je m'excuse pour l'extrème longueur du déclencheur _________________
"La personne qui frappe compte plus que le coup lui-même."
Désolé je n'ai pas trop le temps de lire le déclencheur dans le détail (en plus il n'a pas l'air MUI, dommage^^).
Une: ne peux tu pas interdire à tes dummys de cibler les héros? (leurs sorts et leur attaque). _________________
Inscrit le: 26 Jan 2009 Messages: 170 Sujets: 27 Spécialité en worldedit: Aucune pour le moment ^^
Posté le: 09/02/09 23:14 Sujet du message:
J'ai essayé ça aussi, mais le héros est toujours touché par les 'dégâts de zone' à partir de la deuxième explosion, alors que ce soit la première ou la seconde commande "Groupe - unité", il y a les Conditions que les unités endommagées soit vivantes et ennemies. _________________
"La personne qui frappe compte plus que le coup lui-même."
Inscrit le: 21 Aoû 2007 Messages: 2073 Sujets: 38 Spécialité en worldedit: Oui Médailles: 1 (En savoir plus...)
Posté le: 09/02/09 23:31 Sujet du message:
Tu peux mettre en condition que les unités doivent être différent du (Casting Unit)
Également j'ai d'autres choses à dire pour l'amélioration de ton déclencheur :
Le And dans les conditions générales ne sert à rien ici, il est utile par exemple : (Condition 1 AND Condition 2) OR (Condition3 AND Condition4)
Ici tu peux mettre tes conditions à la suite elles devront forcément toutes être vraies.
Aussi, met l'action de destruction d'effet spécial juste après la création des effets spéciaux, ne fais ceci que si ces effets spéciaux sont brefs (c'est-à-dire sans animation stand ou si tu veux faire leur animation death), cela évitera le leak (Voir tuto sur les leaks).
Ensuite je crois que tu peux utiliser une boucle plutôt que de répéter l'action, For loop 1 to (Level of FireRush for (Casting Unit)).
Il y a également quelques leaks sur les points mais le tuto sur les leaks que j'ai cité ci-dessus t'aidera surement assez (Ou alors il y en a d'autres tuto à ce sujet) _________________
Inscrit le: 07 Juil 2008 Messages: 1518 Sujets: 39 Spécialité en worldedit: Décors! Et bourrer la map avec pleins²² de modèles d'effets/particules!! Médailles: 1 (En savoir plus...)
Posté le: 09/02/09 23:53 Sujet du message:
C'est inhumain de mettre des déclos aussi grand que l'on doit comprendre ligne par ligne pour comprendre ta logique --' _________________
Inscrit le: 26 Jan 2009 Messages: 170 Sujets: 27 Spécialité en worldedit: Aucune pour le moment ^^
Posté le: 10/02/09 00:01 Sujet du message:
Je sais que mes déclencheurs sont horribles, mais je ne sais pas comment utiliser une "boucle", donc je vais appliquer ce que j'ai appris sur les leaks en premier lieu, puis j'appliquerais les conseils de Keitaro_Ura, puis enfin je me renseignerais sur les boucles afain d'embellir mon déclencheur ^^
J'essaye tout ça et je reviendrais vous dire si ça marche mieux ou pas !
Amicalement, razengami _________________
"La personne qui frappe compte plus que le coup lui-même."
Inscrit le: 01 Oct 2008 Messages: 209 Sujets: 15 Spécialité en worldedit: Travailler sous RPG Maker VX?
Posté le: 10/02/09 08:32 Sujet du message: Re: Problème de cible aléatoire
Tu peut diminuer la taille ne faisant quelque chose comme sa
Secret:
Gui:
Trigger:
Fire Rush
Evénements
Unité - A unit Initie l'effet d'une compétence
Conditions
And - All (Conditions) are true
Conditions
(Ability being cast) Egal à Fire Rush ((Casting unit) is Un héros) Egal à TRUE
Actions
Set FireRush_Caster[(Player number of (Owner of (Casting unit)))] = (Casting unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Supérieur ou égal à 1
Alors - Actions
Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Supérieur ou égal à 2
Alors - Actions
Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Supérieur ou égal à 3
Alors - Actions
Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Level of Fire Rush for FireRush_Caster[(Player number of (Owner of (Casting unit)))]) Supérieur ou égal à 4
Alors - Actions
Effet spécial - Create a special effect at (Position of (Target unit of ability being cast)) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = (Random unit from (Units within 362.00 of (Position of (Target unit of ability being cast)) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE)))) Unité - Create 1 DummyFireRush for (Owner of (Casting unit)) at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) facing (Random real number between 0.00 and 360.00) degrees Unité - Add a 1.50 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Neutre - Boule de feu FireRush_Random[(Player number of (Owner of (Casting unit)))] Wait 1.00 seconds Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage FireRush_Random[(Player number of (Owner of (Casting unit)))], dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect at (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) using AbilitiesSpellsOtherDoomDoomDeath.mdl
Groupe unité - Pick every unit in (Units within 312.00 of (Position of FireRush_Random[(Player number of (Owner of (Casting unit)))]) matching ((((Matching unit) belongs to an enemy of (Owner of (Casting unit))) Egal à TRUE) and (((Matching unit) is alive) Egal à TRUE))) and do (Actions)
Boucle - Actions
Unité - Cause FireRush_Caster[(Player number of (Owner of (Casting unit)))] to damage (Picked unit), dealing (Real((Intelligence of FireRush_Caster[(Player number of (Owner of (Casting unit)))] (Inclure bonuses)))) damage of attack type Sorts and damage type Feu Effet spécial - Create a special effect attached to the origin of (Picked unit) using AbilitiesSpellsOtherIncinerateFireLordDeathExplode.mdl
Wait 1.00 seconds Set FireRush_Random[(Player number of (Owner of (Casting unit)))] = Pas d'unité
Sinon - Actions
P.S. je n'ai pas vérifier que j'ai bien recopié. _________________
Inscrit le: 26 Jan 2009 Messages: 170 Sujets: 27 Spécialité en worldedit: Aucune pour le moment ^^
Posté le: 10/02/09 13:22 Sujet du message:
Il manque certaines choses ^^ Mais le problème serait que pour chaque niveau du sort il y a le même nombre d'explosion.
Enfin bref, en ajoutant la condition "(Matching Unit) Différent de (Casting Unit)" j'ai réussi à résoudre mon problème ! Maintenant il faut que je m'occupe des "leaks".
Merci beaucoup à vous tous ! _________________
"La personne qui frappe compte plus que le coup lui-même."
Page 1 sur 1 La question posée dans ce topic a été résolue !
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum