Igor_Z
You can change this now in User CP.
- Reaction score
- 61
I made a spell on my riffleman hero that does exactly the same things that the Winrunner's Focus Fire spell does. I based my Riffle Rage spell on Soulburn in order to put a buff on the target. I based the Riffle Rage (Self Cast) on Unholy Frenzy which the dummy uses on my hero in order to do the buff check...
Here is the description:
Triggers:
The spell works like it is suppose to but I am concerned... Will it work all the time I cast it because that "Wait" action gives me nightmares. So the real question here is:
"Is there a more efficient way to do this in GUI"...
P.S: I don't like it in MUI
Thank you for your time
Here is the description:
The Sharpshooter channels wind throughout his riffle to surge an excess of adrenaline, giving him maximum attack speed when firing on the targeted enemy. Damage is reduced in this state by 50/40/30%.
Triggers:
Trigger:
- RR Damage Detection
- Events
- Time - Elapsed game time is 0.00 seconds
- Conditions
- Actions
- Set RR_Groups[1] = (Units in (Playable map area))
- Unit Group - Pick every unit in RR_Groups[1] and do (Actions)
- Loop - Actions
- Trigger - Add to RR Damage Being Dealt <gen> the event (Unit - (Picked unit) Takes damage)
- Unit Group - Add (Picked unit) to RR_Groups[2]
- Loop - Actions
- Custom script: call DestroyGroup(udg_RR_Groups[1])
- Custom script: call DestroyTrigger(gg_trg_RR_Damage_Detection)
- Events
Trigger:
- RR Damage Detection 2
- Events
- Unit - A unit enters (Playable map area)
- Conditions
- ((Triggering unit) is in RR_Groups[2]) Equal to False
- Actions
- Unit Group - Add (Triggering unit) to RR_Groups[2]
- Trigger - Add to RR Damage Being Dealt <gen> the event (Unit - (Triggering unit) Takes damage)
- Events
Trigger:
- RR Casting
- Events
- Unit - A unit Starts the effect of an ability
- Conditions
- (Ability being cast) Equal to Riffle Rage
- Actions
- Set RR_Caster = (Triggering unit)
- Set RR_Target = (Target unit of ability being cast)
- Set RR_Point = (Position of RR_Target)
- Unit - Add Spell Book (Riffle Rage) to RR_Caster
- Unit - Create 1 Riffle Rage Dummy for (Owner of RR_Caster) at RR_Point facing Default building facing degrees
- Set RR_Dummy = (Last created unit)
- Unit - Add Riffle Rage (Self Cast) to RR_Dummy
- Unit - Set level of Riffle Rage (Self Cast) for RR_Dummy to (Level of Riffle Rage for RR_Caster)
- Unit - Order RR_Dummy to Undead Necromancer - Unholy Frenzy RR_Caster
- Unit - Add a 1.00 second Generic expiration timer to RR_Dummy
- Unit - Grant shared vision of RR_Target to (Owner of RR_Caster)
- Wait 0.03 seconds
- Unit - Order RR_Caster to Attack RR_Target
- Trigger - Turn on RR Remove Buff <gen>
- Events
Trigger:
- RR Damage Being Dealt
- Events
- Conditions
- (Level of Riffle Rage for (Damage source)) Greater than 0
- ((Damage source) has buff Riffle Rage (Caster)) Equal to True
- ((Triggering unit) belongs to an ally of (Owner of (Damage source))) Equal to False
- Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Triggering unit) Equal to RR_Target
- ((Triggering unit) has buff Riffle Rage (Target)) Equal to True
- Then - Actions
- Unit - Set life of (Triggering unit) to ((Life of (Triggering unit)) + ((Damage taken) x (0.60 - (0.10 x (Real((Level of Riffle Rage for (Damage source))))))))
- Else - Actions
- Unit - Remove Spell Book (Riffle Rage) from RR_Caster
- Unit - Remove Riffle Rage (Caster) buff from RR_Caster
- Unit - Remove Riffle Rage (Target) buff from RR_Target
- Unit - Deny shared vision of RR_Target to (Owner of RR_Caster)
- Custom script: call RemoveLocation(udg_RR_Point)
- Trigger - Turn off RR Remove Buff <gen>
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Trigger:
- RR Remove Buff
- Events
- Time - Every 0.04 seconds of game time
- Conditions
- Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (((RR_Caster is dead) Equal to True) or ((RR_Target is dead) Equal to True)) or (((RR_Caster has buff Riffle Rage (Caster)) Equal to False) or ((RR_Target has buff Riffle Rage (Target)) Equal to False))
- Then - Actions
- Unit - Remove Spell Book (Riffle Rage) from RR_Caster
- Unit - Remove Riffle Rage (Caster) buff from RR_Caster
- Unit - Remove Riffle Rage (Target) buff from RR_Target
- Unit - Deny shared vision of RR_Target to (Owner of RR_Caster)
- Custom script: call RemoveLocation(udg_RR_Point)
- Trigger - Turn off (This trigger)
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Events
The spell works like it is suppose to but I am concerned... Will it work all the time I cast it because that "Wait" action gives me nightmares. So the real question here is:
"Is there a more efficient way to do this in GUI"...
P.S: I don't like it in MUI
Thank you for your time