• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Spell] About the trigger cause damage around area

Status
Not open for further replies.
Level 4
Joined
May 18, 2011
Messages
67
About the trigger cause damage around area (Solved thanks to Venomous)

hi its me again, and i wanted to ask how to make my spell to only damage the enemies around the area but the thing is my spell also target my allied units and i want my spell to deal base on my casters int. i included the trigger for my spell hope someone help me, thanks in advance...

  • Frost Nova
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Frost Nova [Lich]
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Frost Nova [Lich] for (Triggering unit)) Equal to 1
        • Then - Actions
          • Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius 300.00 at (Target point of ability being cast), dealing (1.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Frost Nova [Lich] for (Triggering unit)) Equal to 2
        • Then - Actions
          • Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius 300.00 at (Target point of ability being cast), dealing (2.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Frost Nova [Lich] for (Triggering unit)) Equal to 3
        • Then - Actions
          • Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius 300.00 at (Target point of ability being cast), dealing (3.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Frost Nova [Lich] for (Triggering unit)) Equal to 4
        • Then - Actions
          • Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius 300.00 at (Target point of ability being cast), dealing (4.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Frost Nova [Lich] for (Triggering unit)) Equal to 5
        • Then - Actions
          • Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius 300.00 at (Target point of ability being cast), dealing (15.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
 
Last edited:
Level 12
Joined
Sep 11, 2011
Messages
1,176
are you sure it's 15 x intelligence in level 5 ?

here

  • Untitled Trigger 001
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Animate Dead
    • Actions
      • Set tempPoint = (Position of (Triggering unit))
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 300.00 of tempPoint) and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Real((Level of Animate Dead for (Triggering unit)))) x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
      • Custom script: call RemoveLocation (udg_tempPoint)
 
Level 4
Joined
May 18, 2011
Messages
67
are you sure it's 15 x intelligence in level 5 ?

here

  • Untitled Trigger 001
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Animate Dead
    • Actions
      • Set tempPoint = (Position of (Triggering unit))
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 300.00 of tempPoint) and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Real((Level of Animate Dead for (Triggering unit)))) x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
      • Custom script: call RemoveLocation (udg_tempPoint)

  • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Real((Level of Animate Dead for (Triggering unit)))) x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
will this auto adjust the damage dealt by my caster?, and yes 15 x heros int, because i find 5 x heroes int kinda weak on later enemies, which is 50k HP per enemy unit...
 
Level 12
Joined
Sep 11, 2011
Messages
1,176
yes, that will adjust the damage automatically, i use level of the ability x intelligence, so when the frost nova is level 1, 1 x int, level 2, 2 x int.

since the last one is 15 x int, then that won't work anymore. this is the new one

  • Untitled Trigger 001
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Animate Dead
    • Actions
      • Set tempPoint = (Position of (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Animate Dead for (Triggering unit)) Less than 5
        • Then - Actions
          • Custom script: set bj_wantDestroyGroup = true
          • Unit Group - Pick every unit in (Units within 300.00 of tempPoint) and do (Actions)
            • Loop - Actions
              • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Real((Level of Animate Dead for (Triggering unit)))) x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
          • Custom script: set bj_wantDestroyGroup = true
          • Unit Group - Pick every unit in (Units within 300.00 of tempPoint) and do (Actions)
            • Loop - Actions
              • Unit - Cause (Triggering unit) to damage (Picked unit), dealing (15.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
      • Custom script: call RemoveLocation (udg_tempPoint)
 
Level 4
Joined
May 18, 2011
Messages
67
yes, that will adjust the damage automatically, i use level of the ability x intelligence, so when the frost nova is level 1, 1 x int, level 2, 2 x int.

since the last one is 15 x int, then that won't work anymore. this is the new one

  • Untitled Trigger 001
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Animate Dead
    • Actions
      • Set tempPoint = (Position of (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Animate Dead for (Triggering unit)) Less than 5
        • Then - Actions
          • Custom script: set bj_wantDestroyGroup = true
          • Unit Group - Pick every unit in (Units within 300.00 of tempPoint) and do (Actions)
            • Loop - Actions
              • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Real((Level of Animate Dead for (Triggering unit)))) x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
        • Else - Actions
          • Custom script: set bj_wantDestroyGroup = true
          • Unit Group - Pick every unit in (Units within 300.00 of tempPoint) and do (Actions)
            • Loop - Actions
              • Unit - Cause (Triggering unit) to damage (Picked unit), dealing (15.00 x (Real((Intelligence of (Triggering unit) (Include bonuses))))) damage of attack type Spells and damage type Normal
      • Custom script: call RemoveLocation (udg_tempPoint)

many many thanks it works like magic now, and thanks for the quick reply, i can always rely on you sir venomous...
 

Dr Super Good

Spell Reviewer
Level 63
Joined
Jan 18, 2005
Messages
27,190
But for this situation recommended as it removes ability level from coupling to the implementation. Using an array for the intelligence multiplier will allow the same code to be used for any number of levels with no required correlation between levels and their intelligence multiplier.
 
Status
Not open for further replies.
Top