On attack trigger bonus damage based on current health

Discussion in 'World Editor Help' started by sunshinex3, Jan 14, 2018.

  1. sunshinex3

    sunshinex3 You can change this now in User CP.

    Ratings:
    +4 / 0 / -0
    I don't think this trigger is working i also don't know why it wouldn't be working...
    Please help me figure out why this on attack trigger isn't working, i've tested all levels of the ability eviscerate...

    The ability is supposed to deal damage equal to 1-10% of attacking units current health.


    Trigger:
    • Life Binder Passive
      • Events
        • Unit - A unit Is attacked
      • Conditions
        • (Unit-type of (Triggering unit)) Equal to Alexstrasza (Dragon)
      • Actions
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 1
          • Then - Actions
            • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.01) damage of attack type Spells and damage type Fire
          • Else - Actions
            • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              • If - Conditions
                • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 2
              • Then - Actions
                • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.02) damage of attack type Spells and damage type Fire
              • Else - Actions
                • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  • If - Conditions
                    • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 3
                  • Then - Actions
                    • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.03) damage of attack type Spells and damage type Fire
                  • Else - Actions
                    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                      • If - Conditions
                        • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 4
                      • Then - Actions
                        • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.04) damage of attack type Spells and damage type Fire
                      • Else - Actions
                        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                          • If - Conditions
                            • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 5
                          • Then - Actions
                            • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.05) damage of attack type Spells and damage type Fire
                          • Else - Actions
                            • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                              • If - Conditions
                                • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 6
                              • Then - Actions
                                • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.06) damage of attack type Spells and damage type Fire
                              • Else - Actions
                                • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                  • If - Conditions
                                    • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 7
                                  • Then - Actions
                                    • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.07) damage of attack type Spells and damage type Fire
                                  • Else - Actions
                                    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                      • If - Conditions
                                        • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 8
                                      • Then - Actions
                                        • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.08) damage of attack type Spells and damage type Fire
                                      • Else - Actions
                                        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                          • If - Conditions
                                            • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 9
                                          • Then - Actions
                                            • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.09) damage of attack type Spells and damage type Fire
                                          • Else - Actions
                                            • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                              • If - Conditions
                                                • (Level of Eviscerate (Alexstrasza) for (Attacking unit)) Equal to 10
                                              • Then - Actions
                                                • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Life of (Attacking unit)) x 0.10) damage of attack type Spells and damage type Fire
                                              • Else - Actions
                                                • Do nothing
     
  2. Accname

    Accname 2D-Graphics enthusiast

    Ratings:
    +1,550 / 4 / -4
    1) Attacking unit is not equal to triggering unit in thise case. The triggering unit is the attacked unit. So your trigger will only work if the attacked unit is of type "Alexstrasza (Dragon)". (I dont think this is what you wanted, right?)

    2) Dont use If-Then-Else statements here. Please. Just multiply 0.01 with the level of the ability.
     
  3. Inflicted

    Inflicted Currently inactive

    Ratings:
    +63 / 0 / -0
    Also note that this will apply the damage when the attack is made rather than when the damage is received.
    Considering using a damage detection system, such as: https://www.hiveworkshop.com/threads/gui-friendly-damage-detection-v1-2-1.149098/

    As mentioned by Accname above, your condition is incorrect.
    I would also recommend rather making the check if the unit has ability as the hero may not have learned the skill and this trigger would continue to activate on every attack.
     

Share This Page