As the title states, I'm making a ranger type hero, and there's a few triggered abilities I'd like some help with.
The first one is a passive aura, which deals additional damage each attack. The problem with this is, I assume since it's an aura, it'd effect other units, therefore giving them the effect as well, I do not want this. Secondly, it triggers each time the unit goes to fire an arrow, not when the unit's arrow actually connects with the target. I'd like the damage to trigger when the arrow actually hits the target. From what I've read, this isn't possible without some sort of event system, correct?
The second one is somewhat similar to the first, however it's base on Searing Arrows. It doesn't trigger at all, I'm assuming this is because Searing Arrows doesn't count as being cast when the ability is used. What I want is a toggle-able spell, that drains mana with each shot fired, and once again, only deals the extra damage when the arrow actually connects.
Thanks for any help you may provide.
Edit: Another spell that's giving me a problem. This spell works exactly like it's meant to, bar one problem. He keeps casting the spell, over and over until the target unit is dead.
The first one is a passive aura, which deals additional damage each attack. The problem with this is, I assume since it's an aura, it'd effect other units, therefore giving them the effect as well, I do not want this. Secondly, it triggers each time the unit goes to fire an arrow, not when the unit's arrow actually connects with the target. I'd like the damage to trigger when the arrow actually hits the target. From what I've read, this isn't possible without some sort of event system, correct?
Trigger:
- Test1
- Events
- Unit - A unit Is attacked
- Conditions
- ((Attacking unit) has buff Trueshot Aura) Equal to True
- Actions
- Set Trueshot_Aura_EnemyLoc = (Position of (Attacked unit))
- Set Trueshot_Aura_Caster = (Attacking unit)
- Set Trueshot_Aura_Victim = (Attacked unit)
- Set Trueshot_AbilityLvl = (Level of Trueshot Aura for Trueshot_Aura_Caster)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Random real number between 1.00 and 100.00) Less than or equal to ((Real(Trueshot_AbilityLvl)) + 20.00)
- Then - Actions
- Unit - Cause Trueshot_Aura_Caster to damage Trueshot_Aura_Victim, dealing 500.00 damage of attack type Spells and damage type Normal
- Special Effect - Create a special effect at Trueshot_Aura_EnemyLoc using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl
- Special Effect - Destroy (Last created special effect)
- Else - Actions
- If - Conditions
- Events
The second one is somewhat similar to the first, however it's base on Searing Arrows. It doesn't trigger at all, I'm assuming this is because Searing Arrows doesn't count as being cast when the ability is used. What I want is a toggle-able spell, that drains mana with each shot fired, and once again, only deals the extra damage when the arrow actually connects.
Trigger:
- Perfect Aim
- Events
- Unit - A unit Starts the effect of an ability
- Conditions
- (Ability being cast) Equal to Perfect Aim |cffeee24f[Q]|r
- Actions
- Set Perfect_Aim_Caster = (Triggering unit)
- Set Perfect_Aim_Target = (Target unit of ability being cast)
- Unit - Cause Perfect_Aim_Caster to damage Perfect_Aim_Target, dealing (((Real((Intelligence of Perfect_Aim_Caster (Include bonuses)))) x (Real((Level of Perfect Aim |cffeee24f[Q]|r for Perfect_Aim_Caster)))) / 1.50) damage of attack type Pierce and damage type Fire
- Events
Thanks for any help you may provide.
Edit: Another spell that's giving me a problem. This spell works exactly like it's meant to, bar one problem. He keeps casting the spell, over and over until the target unit is dead.
Trigger:
- Holy Explosion
- Events
- Unit - A unit Begins casting an ability
- Conditions
- (Ability being cast) Equal to Holy Expoison
- Actions
- Set Holy_Explosion_Caster = (Triggering unit)
- Set Holy_Explosion_TargetUnit = (Target unit of ability being cast)
- Set Holy_Explosion_UnitGrp = (Units within 250.00 of (Position of Holy_Explosion_TargetUnit) matching ((((Matching unit) belongs to an ally of (Owner of Holy_Explosion_Caster)) Equal to False) and (((Matching unit) is alive) Equal to True)))
- Unit - Cause Holy_Explosion_Caster to damage Holy_Explosion_TargetUnit, dealing 100.00 damage of attack type Chaos and damage type Divine
- Special Effect - Create a special effect attached to the chest of Holy_Explosion_TargetUnit using Abilities\Spells\Orc\Disenchant\DisenchantSpecialArt.mdl
- Special Effect - Destroy (Last created special effect)
- Unit - Pause Holy_Explosion_Caster
- Countdown Timer - Start Holy_ExplosionTimer[1] as a One-shot timer that will expire in 1.50 seconds
- Countdown Timer - Start Holy_ExplosionTimer2[1] as a One-shot timer that will expire in 2.00 seconds
- Events
Trigger:
- Holy Explosion 2
- Events
- Time - Holy_ExplosionTimer[1] expires
- Conditions
- Actions
- Special Effect - Create a special effect attached to the overhead of Holy_Explosion_TargetUnit using war3mapImported\TheHolyBomb.mdx
- Special Effect - Destroy (Last created special effect)
- Set Holy_Explosion_Dummy = (Last created unit)
- Events
Trigger:
- Holy Explosion 3
- Events
- Time - Holy_ExplosionTimer2[1] expires
- Conditions
- Actions
- Unit - Unpause Holy_Explosion_Caster
- Set Holy_Exploision_UnitGrp2 = (Units within 250.00 of (Position of Holy_Explosion_TargetUnit) matching ((((Matching unit) belongs to an ally of (Owner of Holy_Explosion_Caster)) Equal to False) and (((Matching unit) is alive) Equal to True)))
- Unit Group - Pick every unit in Holy_Exploision_UnitGrp2 and do (Actions)
- Loop - Actions
- Unit - Cause Holy_Explosion_Caster to damage (Picked unit), dealing 250.00 damage of attack type Chaos and damage type Divine
- Loop - Actions
- Custom script: call DestroyGroup(udg_Holy_Exploision_UnitGrp2)
- Animation - Play Holy_Explosion_Caster's stand animation
- Events