- Joined
- Oct 3, 2024
- Messages
- 4
Is my first time posting here, i'm not speak english so if i write something bad is for it.
I try to make a spell that summons an orb that orbits the caster and deals damage to units it hits, it's my first spell and I don't know if there's something wrong with it or if it can be improved in some way. I know it's not MUI but I don't want to get involved with that at the moment.
I try to make a spell that summons an orb that orbits the caster and deals damage to units it hits, it's my first spell and I don't know if there's something wrong with it or if it can be improved in some way. I know it's not MUI but I don't want to get involved with that at the moment.
-
Frost Orb
-
Acontecimientos
-
Unidad - A unit Inicia el efecto de una habilidad
-
-
Condiciones
-
(Ability being cast) Igual a Frost Orb
-
-
Acciones
-
Set FO_Caster = (Triggering unit)
-
Set FO_PosCaster = (Position of FO_Caster)
-
Set FO_OrbCant = ((Level of (Ability being cast) for FO_Caster) + 1)
-
For each (Integer A) from 1 to FO_OrbCant, do (Actions)
-
Bucle: Acciones
-
Set FO_Angle[(Integer A)] = ((Integer A) x (360 / FO_OrbCant))
-
Set FO_PosDummy[(Integer A)] = ((Position of FO_Caster) offset by 300.00 towards (Real(FO_Angle[(Integer A)])) degrees)
-
Unidad - Create 1 Dummy Esfera for (Owner of FO_Caster) at FO_PosDummy[(Integer A)] facing ((Real(FO_Angle[(Integer A)])) + 90.00) degrees
-
Set FO_Dummy[(Integer A)] = (Last created unit)
-
Unidad - Add a 5.00 second Genérico expiration timer to FO_Dummy[(Integer A)]
-
-
-
Custom script: call RemoveLocation(udg_FO_PosCaster)
-
For each (Integer A) from 1 to FO_OrbCant, do (Actions)
-
Bucle: Acciones
-
Custom script: call RemoveLocation(udg_FO_PosDummy[bj_forLoopAIndex])
-
-
-
Detonador - Turn on Frost Orb Loop <gen>
-
-
-
Frost Orb Loop
-
Acontecimientos
-
Tiempo - Every 0.05 seconds of game time
-
-
Condiciones
-
Acciones
-
For each (Integer A) from 1 to FO_OrbCant, do (Actions)
-
Bucle: Acciones
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Si: Condiciones
-
FO_Angle[(Integer A)] Igual a 360
-
-
Entonces: Acciones
-
Set FO_Angle[(Integer A)] = 0
-
-
Otros: Acciones
-
-
-
-
Set FO_Time = (FO_Time + 0.05)
-
Set FO_PosCaster = (Position of FO_Caster)
-
For each (Integer A) from 1 to FO_OrbCant, do (Actions)
-
Bucle: Acciones
-
Set FO_Angle[(Integer A)] = (FO_Angle[(Integer A)] + 10)
-
Set FO_PosDummy[(Integer A)] = ((Position of FO_Caster) offset by 300.00 towards (Real(FO_Angle[(Integer A)])) degrees)
-
Unidad - Move FO_Dummy[(Integer A)] instantly to FO_PosDummy[(Integer A)], facing ((Real(FO_Angle[(Integer A)])) + 90.00) degrees
-
Set FO_Damaged = (Units within 50.00 of FO_PosDummy[(Integer A)] matching ((((Matching unit) is Una estructura) Igual a False) and ((((Matching unit) is alive) Igual a True) and (((Matching unit) belongs to an enemy of (Owner of FO_Caster)) Igual a True))))
-
Custom script: set bj_wantDestroyGroup = true
-
Grupo de unidad - Pick every unit in FO_Damaged and do (Actions)
-
Bucle: Acciones
-
Unidad - Cause FO_Caster to damage (Picked unit), dealing 10.00 damage of attack type Conjuros and damage type Normal
-
-
-
-
-
Custom script: call RemoveLocation(udg_FO_PosCaster)
-
For each (Integer A) from 1 to FO_OrbCant, do (Actions)
-
Bucle: Acciones
-
Custom script: call RemoveLocation(udg_FO_PosDummy[bj_forLoopAIndex])
-
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Si: Condiciones
-
FO_Time Igual a 5.00
-
-
Entonces: Acciones
-
Set FO_Time = 0.00
-
Detonador - Turn off (This trigger)
-
-
Otros: Acciones
-
-
-