• 🏆 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!

Cutting Edge v1.1b

Current version: 1.1
Language: GUI
Works with latest version: Yes
User friendly: Yes
Author: -BerZeKeR-

Give credits to:
D4RK_G4ND4LF
Me

images


Cutting Edge

Caster bursts into inner rage, rapidly attacking everything on his path, dealing damage and quickly moving towards the targeted point.

Level 1 - Deals up to 70 damage per unit, AoE 200 in distance of 900.
Level 2 - Deals up to 140 damage per unit, AoE 200 in distance of 900.
Level 3 - Deals up to 240 damage per unit, AoE 200 in distance of 900.



  • Cutting Edge
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Cutting Edge
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set CE_Caster = (Triggering unit)
      • Set CE_Location = (Position of CE_Caster)
      • Set CE_Location2 = (Target point of ability being cast)
      • Set CE_Ability_Level = (Level of (Ability being cast) for CE_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set CE_Base_Damage = 10.00
      • Set CE_Total_Damage = (CE_Base_Damage x (Real(CE_Ability_Level)))
      • Set CE_Area_of_Effect = 200.00
      • Set CE_Destroy_Trees = True
      • -------- Set pathing to False, if you want your hero to move trough cliffs and doodads, note you can go off map, which could cause bugs, so I suggest you leave it to True --------
      • Set CE_Pathing_On = True
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Knockback Setings --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect attached to the weapon of CE_Caster using Abilities\Spells\Items\OrbCorruption\OrbCorruptionSpecialArt.mdl
      • Set CE_Special_Effect = (Last created special effect)
      • Special Effect - Create a special effect attached to the weapon of CE_Caster using Abilities\Weapons\PhoenixMissile\Phoenix_Missile_mini.mdl
      • Set CE_Special_Effect1 = (Last created special effect)
      • Set CE_Knock_Angle = (Angle from CE_Location to CE_Location2)
      • Set CE_Knock_Speed = 50.00
      • Set CE_Knock_Distance = 900.00
      • Hashtable - Save CE_Knock_Angle as (Key angle) of (Key (Triggering unit)) in CE_Knocktable
      • Hashtable - Save CE_Knock_Speed as (Key speed) of (Key (Triggering unit)) in CE_Knocktable
      • Hashtable - Save CE_Knock_Distance as (Key distance) of (Key (Triggering unit)) in CE_Knocktable
      • Hashtable - Save Handle OfCE_Caster as (Key caster) of (Key (Triggering unit)) in CE_Knocktable
      • Hashtable - Save Handle OfCE_Special_Effect as (Key sfx) of (Key (Triggering unit)) in CE_Knocktable
      • Hashtable - Save Handle OfCE_Special_Effect1 as (Key sfx1) of (Key (Triggering unit)) in CE_Knocktable
      • Animation - Change CE_Caster's animation speed to 1500.00% of its original speed
      • Unit - Turn collision for CE_Caster Off
      • Unit Group - Add CE_Caster to CE_Knock_Group
      • Trigger - Turn on Cutting Edge Knock <gen>
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_CE_Location)
      • Custom script: call RemoveLocation(udg_CE_Location2)
  • Cutting Edge Knock
    • Events
      • Time - Every 0.06 seconds of game time
    • Conditions
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Leave this actions as they are/// You can add change special effects but that's it --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in CE_Knock_Group and do (Actions)
        • Loop - Actions
          • Set CE_Knock_Angle = (Load (Key angle) of (Key (Picked unit)) from CE_Knocktable)
          • Set CE_Knock_Speed = (Load (Key speed) of (Key (Picked unit)) from CE_Knocktable)
          • Set CE_Knock_Distance = (Load (Key distance) of (Key (Picked unit)) from CE_Knocktable)
          • Set CE_Caster = (Load (Key caster) of (Key (Picked unit)) in CE_Knocktable)
          • Set CE_Special_Effect = (Load (Key sfx) of (Key (Picked unit)) in CE_Knocktable)
          • Set CE_Special_Effect1 = (Load (Key sfx1) of (Key (Picked unit)) in CE_Knocktable)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • CE_Knock_Distance Greater than 0.00
            • Then - Actions
              • Set CE_Knock_Loc1 = (Position of (Picked unit))
              • Set CE_Knock_Loc2 = (CE_Knock_Loc1 offset by CE_Knock_Speed towards CE_Knock_Angle degrees)
              • Set CE_Damage_Group = (Units within CE_Area_of_Effect of CE_Knock_Loc1 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of (Picked unit))) Equal to True))))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • CE_Destroy_Trees Equal to True
                • Then - Actions
                  • Destructible - Pick every destructible within CE_Area_of_Effect of CE_Knock_Loc1 and do (Actions)
                    • Loop - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • ((Picked destructible) is alive) Equal to True
                        • Then - Actions
                          • Unit - Create 1 Peasant for (Owner of (Picked unit)) at CE_Knock_Loc1 facing Default building facing degrees
                          • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
                          • Unit - Hide (Last created unit)
                          • Unit - Order (Last created unit) to Harvest (Picked destructible)
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • (Current order of (Last created unit)) Equal to (Order(harvest))
                            • Then - Actions
                              • Destructible - Kill (Picked destructible)
                            • Else - Actions
                        • Else - Actions
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • CE_Pathing_On Equal to True
                • Then - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Terrain pathing at CE_Knock_Loc2 of type Walkability is off) Equal to True
                    • Then - Actions
                      • Unit - Turn collision for CE_Caster On
                      • Animation - Reset (Picked unit)'s animation
                      • Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
                      • Special Effect - Destroy CE_Special_Effect
                      • Special Effect - Destroy CE_Special_Effect1
                      • Custom script: call RemoveLocation(udg_CE_Knock_Loc1)
                      • Custom script: call RemoveLocation(udg_CE_Knock_Loc2)
                      • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in CE_Knocktable
                      • Unit Group - Remove (Picked unit) from CE_Knock_Group
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • (Number of units in CE_Knock_Group) Equal to 0
                        • Then - Actions
                          • Trigger - Turn off Cutting Edge Knock <gen>
                        • Else - Actions
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • ((Picked unit) is dead) Equal to True
                        • Then - Actions
                          • Unit - Turn collision for CE_Caster On
                          • Animation - Reset (Picked unit)'s animation
                          • Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
                          • Special Effect - Destroy CE_Special_Effect
                          • Special Effect - Destroy CE_Special_Effect1
                          • Custom script: call RemoveLocation(udg_CE_Knock_Loc1)
                          • Custom script: call RemoveLocation(udg_CE_Knock_Loc2)
                          • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in CE_Knocktable
                          • Unit Group - Remove (Picked unit) from CE_Knock_Group
                        • Else - Actions
                          • Unit - Move (Picked unit) instantly to CE_Knock_Loc2
                          • Unit - Make (Picked unit) face CE_Knock_Angle over 0.00 seconds
                          • Animation - Play (Picked unit)'s attack animation
                          • Unit - Create 1 Dummy for (Owner of (Picked unit)) at CE_Knock_Loc2 facing CE_Knock_Angle degrees
                          • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
                          • Animation - Change (Last created unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 85.00% transparency
                          • Animation - Change (Last created unit)'s animation speed to 200.00% of its original speed
                          • Animation - Play (Last created unit)'s attack animation
                          • Unit Group - Pick every unit in CE_Damage_Group and do (Actions)
                            • Loop - Actions
                              • Unit - Cause CE_Caster to damage (Picked unit), dealing CE_Total_Damage damage of attack type Spells and damage type Unknown
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • (Random integer number between 1 and 100) Less than 33
                                • Then - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Random integer number between 1 and 100) Less than or equal to 50
                                    • Then - Actions
                                      • Special Effect - Create a special effect attached to the chest of (Picked unit) using Objects\Spawnmodels\Critters\Albatross\CritterBloodAlbatross.mdl
                                      • Special Effect - Destroy (Last created special effect)
                                    • Else - Actions
                                      • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                                      • Special Effect - Destroy (Last created special effect)
                                • Else - Actions
                          • Hashtable - Save (CE_Knock_Distance - CE_Knock_Speed) as (Key distance) of (Key (Picked unit)) in CE_Knocktable
                          • Custom script: call RemoveLocation(udg_CE_Knock_Loc1)
                          • Custom script: call RemoveLocation(udg_CE_Knock_Loc2)
                          • Custom script: call DestroyGroup(udg_CE_Damage_Group)
                • Else - Actions
                  • Unit - Move (Picked unit) instantly to CE_Knock_Loc2
                  • Unit - Make (Picked unit) face CE_Knock_Angle over 0.00 seconds
                  • Animation - Play (Picked unit)'s attack animation
                  • Unit - Create 1 Dummy for (Owner of (Picked unit)) at CE_Knock_Loc2 facing CE_Knock_Angle degrees
                  • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
                  • Animation - Change (Last created unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 85.00% transparency
                  • Animation - Change (Last created unit)'s animation speed to 200.00% of its original speed
                  • Animation - Play (Last created unit)'s attack animation
                  • Unit Group - Pick every unit in CE_Damage_Group and do (Actions)
                    • Loop - Actions
                      • Unit - Cause CE_Caster to damage (Picked unit), dealing CE_Total_Damage damage of attack type Spells and damage type Unknown
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • (Random integer number between 1 and 100) Less than 33
                        • Then - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • (Random integer number between 1 and 100) Less than or equal to 50
                            • Then - Actions
                              • Special Effect - Create a special effect attached to the chest of (Picked unit) using Objects\Spawnmodels\Critters\Albatross\CritterBloodAlbatross.mdl
                              • Special Effect - Destroy (Last created special effect)
                            • Else - Actions
                              • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                              • Special Effect - Destroy (Last created special effect)
                        • Else - Actions
                  • Hashtable - Save (CE_Knock_Distance - CE_Knock_Speed) as (Key distance) of (Key (Picked unit)) in CE_Knocktable
                  • Custom script: call RemoveLocation(udg_CE_Knock_Loc1)
                  • Custom script: call RemoveLocation(udg_CE_Knock_Loc2)
                  • Custom script: call DestroyGroup(udg_CE_Damage_Group)
            • Else - Actions
              • Unit - Turn collision for CE_Caster On
              • Animation - Reset (Picked unit)'s animation
              • Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
              • Special Effect - Destroy CE_Special_Effect
              • Special Effect - Destroy CE_Special_Effect1
              • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in CE_Knocktable
              • Unit Group - Remove (Picked unit) from CE_Knock_Group
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Number of units in CE_Knock_Group) Equal to 0
                • Then - Actions
                  • Trigger - Turn off Cutting Edge Knock <gen>
                • Else - Actions
Updates:
v1.1:
-fixed the the thing when caster dies
-fixed destroy trees (thanks to D4RK_G4ND4LF'S for his original idea)
-Added a boolean for destroy trees on/off
v1.1a:
-fixed one line, nothing serious
v1.1b:
-added a boolean, which allows you to make your hero move trough cliffs


Keywords:
cutting, edge, blade, slash, cut, slam, rapid, quickly, move, knock, back, line, damage
Contents

Cutting Edge (Map)

Reviews
10:12, 30th Jan 2010 TriggerHappy: The coding seemed fine but the effect was pretty generic just a slide 'n slash. Though It could be useful and I see people using this spell.
Top