2939 Posts in 460 Topics - by 2181 Members - Latest Member: CoolRed

Warcraft III: MapsModelsSkinsIconsSpellsToolsTutorials
WC3 JASS: Code SnippetsJASS and vJASS Spells and SystemsJass Tutorials
Chat @Discord

Author Topic: Chidori v1.1  (Read 8472 times)

  • Lurker - level 3
  • ***
  • Posts: 4
  • WC3 Skins: 0
  • WC3 Icons: 0
  • WC3 Spells: 0
  • WC3 Models: 0
  • WC3 Tutorials: 0
  • WC3 Tools: 0
  • WC3 Maps: 0
  • Reputation: 0
  • User
    • View Profile
Chidori v1.1
« on: September 04, 2013, 08:25:19 AM »
A lightning spell based from the Naruto anime, one of a character technique named Kakashi. Highly configurable!

  • Description
    Kakashi start creating a blade of lightning which can cut anything. Once finish, he move and strike the targeted unit and deals big damage. Kakashi will also drag the target back. Deals 50 bonus damage if the target collide with obstacles.
  • Levels
    Level 1 - Casting for 2 seconds, 100 strike damage, 100 dragging damage.
    Level 2 - Casting for 1.5 seconds, 150 strike damage, 125 dragging damage.
    Level 3 - Casting for 1 seconds, 200 strike damage, 150 dragging damage.
  • Code
    Init
    Trigger: Test 1249278216
       
               
    • Chidori Init
    •     Events
    •         Map initialization
    •     Conditions
    •     Actions
    •         -------- --------------------------- --------
    •         -------- Configuration --------
    •         -------- --------------------------- --------
    •         -------- Determines the ability --------
    •         Set C_Ability = Chidori
    •         -------- Determines the Order ID of the ability --------
    •         Set C_OrderId = (Order(absorb))
    •         -------- Determines the move animation by index --------
    •         -------- You may need to find the correct one if you use another model --------
    •         Set C_MoveAnimationIndex = 2
    •         -------- Determines the move animation speed --------
    •         Set C_MoveAnimationSpeed = 300.00
    •         -------- Determines how long the caster will swing his hand when is about to strike --------
    •         Set C_SwingTime = 0.20
    •         -------- Determines the swing animation by index --------
    •         Set C_SwingAnimationIndex = 5
    •         -------- Determines the casting duration --------
    •         Set C_CastingTime[1] = 2.00
    •         Set C_CastingTime[2] = 1.50
    •         Set C_CastingTime[3] = 1.00
    •         -------- Determines the dragging total damage --------
    •         Set C_DragDamage[1] = 100.00
    •         Set C_DragDamage[2] = 125.00
    •         Set C_DragDamage[3] = 150.00
    •         -------- Determines the strike damage --------
    •         Set C_StrikeDamage[1] = 100.00
    •         Set C_StrikeDamage[2] = 150.00
    •         Set C_StrikeDamage[3] = 200.00
    •         -------- Determines the collide damage (bonus damage) --------
    •         Set C_CollideDamage[1] = 50.00
    •         Set C_CollideDamage[2] = 50.00
    •         Set C_CollideDamage[3] = 50.00
    •         -------- Determines the attack type --------
    •         Set C_AttackType = Chaos
    •         -------- Determines the damage type --------
    •         Set C_DamageType = Lightning
    •         -------- Determines the collide ground effect --------
    •         Set C_CollideGroundSFX = Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
    •         -------- Determines the max distance --------
    •         -------- If the distance between caster and target is greater this, the spell will be cancelled --------
    •         Set C_MaxDistance[1] = 2000.00
    •         Set C_MaxDistance[2] = 2000.00
    •         Set C_MaxDistance[3] = 2000.00
    •         -------- Determines the move speed --------
    •         Set C_Speed[1] = 30.00
    •         Set C_Speed[2] = 30.00
    •         Set C_Speed[3] = 30.00
    •         -------- Determines the path type --------
    •         -------- If the path where the caster or target are going to move at doesn't have this ability, the spell will be cancelled --------
    •         Set C_PathingType = Walkability
    •         -------- Determines the effect attached when the caster is moving --------
    •         Set C_HandSFX = war3mapImported\ZapMissile.mdx
    •         -------- Determines the attachment point of the effect above --------
    •         Set C_HandSFXAttachment = hand right
    •         -------- Determines the effect spawn every a specific seconds during the caster is casting --------
    •         Set C_LoopingSFX = Abilities\Weapons\FarseerMissile\FarseerMissile.mdl
    •         -------- Determines the attachment point of the effect above --------
    •         Set C_LoopingSFXAttachment = hand right
    •         -------- Determines the initial interval for the looping effect above --------
    •         Set C_LoopingSFXInitialInterval = 0.30
    •         -------- Determines the default interval for the looping effect above --------
    •         Set C_LoopingSFXInterval = 0.06
    •         -------- Determines the strike effect --------
    •         Set C_StrikeSFX = Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
    •         -------- Determines the attachment point of the effect above --------
    •         Set C_StrikeSFXAttachment = origin
    •         -------- Determines the minimum distance where the strike happen --------
    •         Set C_MinDistance = 150.00
    •         -------- Determines the dragging max distance --------
    •         Set C_DragDistance[1] = 500.00
    •         Set C_DragDistance[2] = 500.00
    •         Set C_DragDistance[3] = 500.00
    •         -------- Determines the dragging speed --------
    •         Set C_DragSpeed[1] = 20.00
    •         Set C_DragSpeed[2] = 20.00
    •         Set C_DragSpeed[3] = 20.00
    •         -------- Determines the dragging ground effect --------
    •         Set C_DragGroundSFX = Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
    •         -------- Determines the spawn interval of the effect above --------
    •         Set C_DragGroundSFXInterval = 0.06
    •         -------- --------------------------- --------
    •         -------- End of Configuration --------
    •         -------- =========================================================================== --------
    •         -------- --------------------------- --------
    •         -------- Note: This spell will start working if this trigger has been executed --------
    •         -------- --------------------------- --------
    •         -------- This is a configurable variable too, but this one isn't recommended to be changed --------
    •         -------- This is the interval of the spell, default is 0.03. Don't change this to lower value, else the game will be laggy --------
    •         Set C_Interval = 0.03
    •         -------- All actions below isn't configurable. Please don't change anything below this line --------
    •         -------- I don't have ability to explain it all, sorry :D --------
    •         -------- --------------------------- --------
    •         Trigger - Turn off Chidori Loop <gen>
    •         Trigger - Add to Chidori Loop <gen> the event (Time - Every C_Interval seconds of game time)
    •         Trigger - Add to Chidori Cast <gen> the event (Unit - A unit Starts the effect of an ability)
    •         Set C_RealTimer[1] = (C_LoopingSFXInitialInterval - C_LoopingSFXInterval)
    •         For each (Integer C_Index) from 1 to 3, do (Actions)
    •             Loop - Actions
    •                 Set C_DragDamage[C_Index] = (C_DragDamage[C_Index] / (C_DragDistance[C_Index] / C_DragSpeed[C_Index]))
    •                 Set C_MaxDistance[C_Index] = (C_MaxDistance[C_Index] x C_MaxDistance[C_Index])
    •                 Set C_RealTimer[0] = (C_RealTimer[1] / (C_CastingTime[C_Index] / C_Interval))
    •                 Set C_Speed2[C_Index] = (C_Speed[C_Index] x C_Speed[C_Index])
    •         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •             If - Conditions
    •                 C_SwingTime Less than or equal to 1.00
    •             Then - Actions
    •                 Set C_SwingTime = (C_SwingTime x 2.00)
    •             Else - Actions
    •                 Set C_SwingTime = (C_SwingTime x C_SwingTime)
    •         Set C_DragDistance[0] = C_MinDistance
    •         Set C_MinDistance = (C_MinDistance x C_MinDistance)
    •         Set C_Speed2[0] = (C_Interval x C_Interval)
               
    Cast
    Trigger: Test 891333739
       
               
    • Chidori Cast
    •     Events
    •     Conditions
    •         (Ability being cast) Equal to C_Ability
    •     Actions
    •         Set C_Caster[0] = (Triggering unit)
    •         For each (Integer C_Index) from 1 to C_MaxIndex, do (Actions)
    •             Loop - Actions
    •                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                     If - Conditions
    •                         C_Caster[C_Index] Equal to C_Caster[0]
    •                     Then - Actions
    •                         Special Effect - Destroy C_HandFX[C_Index]
    •                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                             If - Conditions
    •                                 C_Stage[C_Index] Equal to 2
    •                             Then - Actions
    •                                 Animation - Change C_Caster[C_Index]'s animation speed to 100.00% of its original speed
    •                             Else - Actions
    •                         Set C_Stage[C_Index] = 4
    •                     Else - Actions
    •         Set C_MaxIndex = (C_MaxIndex + 1)
    •         Set C_Caster[C_MaxIndex] = C_Caster[0]
    •         Set C_Target[C_MaxIndex] = (Target unit of ability being cast)
    •         Set C_Level[C_MaxIndex] = (Level of C_Ability for C_Caster[C_MaxIndex])
    •         Custom script:   set udg_C_CasterX[udg_C_MaxIndex] = GetUnitX(udg_C_Caster[udg_C_MaxIndex])
    •         Custom script:   set udg_C_CasterY[udg_C_MaxIndex] = GetUnitY(udg_C_Caster[udg_C_MaxIndex])
    •         Special Effect - Create a special effect attached to the C_HandSFXAttachment of C_Caster[C_MaxIndex] using C_HandSFX
    •         Set C_HandFX[C_MaxIndex] = (Last created special effect)
    •         Set C_RealTimer[C_MaxIndex] = 0.00
    •         Set C_RealTimer2[C_MaxIndex] = 0.00
    •         Set C_RealTimer3[C_MaxIndex] = C_LoopingSFXInitialInterval
    •         Set C_Stage[C_MaxIndex] = 3
    •         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •             If - Conditions
    •                 C_MaxIndex Equal to 1
    •             Then - Actions
    •                 Trigger - Turn on Chidori Loop <gen>
    •             Else - Actions
               
    Loop
    Trigger: Test 599414124
       
               
    • Chidori Loop
    •     Events
    •     Conditions
    •     Actions
    •         For each (Integer C_Index) from 1 to C_MaxIndex, do (Actions)
    •             Loop - Actions
    •                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                     If - Conditions
    •                         C_Stage[C_Index] Equal to 1
    •                     Then - Actions
    •                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                             If - Conditions
    •                                 (C_Caster[C_Index] is dead) Equal to False
    •                                 (C_Target[C_Index] is dead) Equal to False
    •                                 (Current order of C_Caster[C_Index]) Equal to C_OrderId
    •                             Then - Actions
    •                                 Unit - Make C_Caster[C_Index] face C_Target[C_Index] over 0.00 seconds
    •                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                     If - Conditions
    •                                         C_RealTimer[C_Index] Greater than 0.00
    •                                     Then - Actions
    •                                         Set C_RealTimer2[C_Index] = (C_RealTimer2[C_Index] + C_Interval)
    •                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                             If - Conditions
    •                                                 C_RealTimer2[C_Index] Greater than C_LoopingSFXInterval
    •                                             Then - Actions
    •                                                 Set C_RealTimer2[C_Index] = 0.00
    •                                                 Custom script:   call DestroyEffect(AddSpecialEffectTarget(udg_C_LoopingSFX, udg_C_Caster[udg_C_Index], udg_C_LoopingSFXAttachment))
    •                                             Else - Actions
    •                                         Custom script:   set udg_C_X[1] = GetUnitX(udg_C_Target[udg_C_Index]) + udg_C_DragSpeed[udg_C_Level[udg_C_Index]] * Cos(udg_C_Angle[udg_C_Index])
    •                                         Custom script:   set udg_C_Y[1] = GetUnitY(udg_C_Target[udg_C_Index]) + udg_C_DragSpeed[udg_C_Level[udg_C_Index]] * Sin(udg_C_Angle[udg_C_Index])
    •                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                             If - Conditions
    •                                                 C_Swinged[C_Index] Equal to False
    •                                             Then - Actions
    •                                                 Custom script:   call SetUnitAnimationByIndex(udg_C_Caster[udg_C_Index], udg_C_SwingAnimationIndex)
    •                                                 Set C_Swinged[C_Index] = True
    •                                             Else - Actions
    •                                         Set CP_Point = (Point(C_X[1], C_Y[1]))
    •                                         Trigger - Run Check Walkability <gen> (ignoring conditions)
    •                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                             If - Conditions
    •                                                 CP_PointIsWalkable Equal to True
    •                                             Then - Actions
    •                                                 Custom script:   call SetUnitX(udg_C_Target[udg_C_Index], udg_C_X[1])
    •                                                 Custom script:   call SetUnitY(udg_C_Target[udg_C_Index], udg_C_Y[1])
    •                                                 Set C_RealTimer3[C_Index] = (C_RealTimer3[C_Index] + C_Interval)
    •                                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                     If - Conditions
    •                                                         C_RealTimer3[C_Index] Greater than C_DragGroundSFXInterval
    •                                                     Then - Actions
    •                                                         Set C_RealTimer3[C_Index] = 0.00
    •                                                         Custom script:   call DestroyEffect(AddSpecialEffect(udg_C_DragGroundSFX, udg_C_X[1], udg_C_Y[1]))
    •                                                     Else - Actions
    •                                                 Unit - Cause C_Caster[C_Index] to damage C_Target[C_Index], dealing C_DragDamage[C_Level[C_Index]] damage of attack type C_AttackType and damage type C_DamageType
    •                                                 Custom script:   call SetUnitX(udg_C_Caster[udg_C_Index], udg_C_X[1] - udg_C_DragDistance[0] * Cos(udg_C_Angle[udg_C_Index]))
    •                                                 Custom script:   call SetUnitY(udg_C_Caster[udg_C_Index], udg_C_Y[1] - udg_C_DragDistance[0] * Sin(udg_C_Angle[udg_C_Index]))
    •                                             Else - Actions
    •                                                 Custom script:   call DestroyEffect(AddSpecialEffect(udg_C_CollideGroundSFX, udg_C_X[1], udg_C_Y[1]))
    •                                                 Unit - Cause C_Caster[C_Index] to damage C_Target[C_Index], dealing C_CollideDamage[C_Level[C_Index]] damage of attack type C_AttackType and damage type C_DamageType
    •                                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                                 Unit - Order C_Caster[C_Index] to Stop
    •                                                 Set C_Stage[C_Index] = 4
    •                                         Custom script:   call RemoveLocation(udg_CP_Point)
    •                                         Set C_RealTimer[C_Index] = (C_RealTimer[C_Index] - C_DragSpeed[C_Level[C_Index]])
    •                                     Else - Actions
    •                                         Special Effect - Destroy C_HandFX[C_Index]
    •                                         Unit - Order C_Caster[C_Index] to Stop
    •                                         Set C_Stage[C_Index] = 4
    •                             Else - Actions
    •                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                 Unit - Order C_Caster[C_Index] to Stop
    •                                 Set C_Stage[C_Index] = 4
    •                     Else - Actions
    •                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                             If - Conditions
    •                                 C_Stage[C_Index] Equal to 2
    •                             Then - Actions
    •                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                     If - Conditions
    •                                         (C_Caster[C_Index] is dead) Equal to False
    •                                         (C_Target[C_Index] is dead) Equal to False
    •                                         (Current order of C_Caster[C_Index]) Equal to C_OrderId
    •                                     Then - Actions
    •                                         Unit - Make C_Caster[C_Index] face C_Target[C_Index] over 0.00 seconds
    •                                         Custom script:   set udg_C_X[1] = GetUnitX(udg_C_Caster[udg_C_Index])
    •                                         Custom script:   set udg_C_Y[1] = GetUnitY(udg_C_Caster[udg_C_Index])
    •                                         Custom script:   set udg_C_X[2] = GetUnitX(udg_C_Target[udg_C_Index]) - udg_C_X[1]
    •                                         Custom script:   set udg_C_Y[2] = GetUnitY(udg_C_Target[udg_C_Index]) - udg_C_Y[1]
    •                                         Set C_TempDistance = ((C_X[2] x C_X[2]) + (C_Y[2] x C_Y[2]))
    •                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                             If - Conditions
    •                                                 C_TempDistance Less than or equal to C_MaxDistance[C_Level[C_Index]]
    •                                             Then - Actions
    •                                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                     If - Conditions
    •                                                         C_TempDistance Greater than C_MinDistance
    •                                                     Then - Actions
    •                                                         Set C_RealTimer2[C_Index] = (C_RealTimer2[C_Index] + C_Interval)
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 C_RealTimer2[C_Index] Greater than C_LoopingSFXInterval
    •                                                             Then - Actions
    •                                                                 Set C_RealTimer2[C_Index] = 0.00
    •                                                                 Custom script:   call DestroyEffect(AddSpecialEffectTarget(udg_C_LoopingSFX, udg_C_Caster[udg_C_Index], udg_C_LoopingSFXAttachment))
    •                                                             Else - Actions
    •                                                         Set C_TravelTime = ((C_TempDistance x C_Speed2[0]) / C_Speed2[C_Level[C_Index]])
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 C_TravelTime Less than or equal to C_SwingTime
    •                                                             Then - Actions
    •                                                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                                     If - Conditions
    •                                                                         C_Swinged[C_Index] Equal to False
    •                                                                     Then - Actions
    •                                                                         Animation - Change C_Caster[C_Index]'s animation speed to 100.00% of its original speed
    •                                                                         Custom script:   call SetUnitAnimationByIndex(udg_C_Caster[udg_C_Index], udg_C_SwingAnimationIndex)
    •                                                                         Set C_Swinged[C_Index] = True
    •                                                                     Else - Actions
    •                                                             Else - Actions
    •                                                                 Custom script:   call SetUnitAnimationByIndex(udg_C_Caster[udg_C_Index], udg_C_MoveAnimationIndex)
    •                                                         Custom script:   set udg_C_TempAngle = Atan2(udg_C_Y[2], udg_C_X[2])
    •                                                         Custom script:   set udg_C_X[1] = udg_C_X[1] + udg_C_Speed[udg_C_Level[udg_C_Index]] * Cos(udg_C_TempAngle)
    •                                                         Custom script:   set udg_C_Y[1] = udg_C_Y[1] + udg_C_Speed[udg_C_Level[udg_C_Index]] * Sin(udg_C_TempAngle)
    •                                                         Set CP_Point = (Point(C_X[1], C_Y[1]))
    •                                                         Trigger - Run Check Walkability <gen> (ignoring conditions)
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 CP_PointIsWalkable Equal to True
    •                                                             Then - Actions
    •                                                                 Custom script:   call SetUnitX(udg_C_Caster[udg_C_Index], udg_C_X[1])
    •                                                                 Custom script:   call SetUnitY(udg_C_Caster[udg_C_Index], udg_C_Y[1])
    •                                                             Else - Actions
    •                                                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                                                 Animation - Change C_Caster[C_Index]'s animation speed to 100.00% of its original speed
    •                                                                 Unit - Order C_Caster[C_Index] to Stop
    •                                                                 Set C_Stage[C_Index] = 4
    •                                                         Custom script:   call RemoveLocation(udg_CP_Point)
    •                                                     Else - Actions
    •                                                         Unit - Cause C_Caster[C_Index] to damage C_Target[C_Index], dealing C_StrikeDamage[C_Level[C_Index]] damage of attack type C_AttackType and damage type C_DamageType
    •                                                         Custom script:   call DestroyEffect(AddSpecialEffectTarget(udg_C_StrikeSFX, udg_C_Target[udg_C_Index], udg_C_StrikeSFXAttachment))
    •                                                         Animation - Change C_Caster[C_Index]'s animation speed to 100.00% of its original speed
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 (C_Target[C_Index] is dead) Equal to False
    •                                                             Then - Actions
    •                                                                 Custom script:   set udg_C_Angle[udg_C_Index] = Atan2(udg_C_Y[2], udg_C_X[2])
    •                                                                 Set C_RealTimer[C_Index] = C_DragDistance[C_Level[C_Index]]
    •                                                                 Set C_RealTimer3[C_Index] = 0.00
    •                                                                 Set C_Stage[C_Index] = 1
    •                                                             Else - Actions
    •                                                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                                                 Unit - Order C_Caster[C_Index] to Stop
    •                                                                 Set C_Stage[C_Index] = 4
    •                                             Else - Actions
    •                                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                                 Animation - Change C_Caster[C_Index]'s animation speed to 100.00% of its original speed
    •                                                 Unit - Order C_Caster[C_Index] to Stop
    •                                                 Set C_Stage[C_Index] = 4
    •                                     Else - Actions
    •                                         Special Effect - Destroy C_HandFX[C_Index]
    •                                         Animation - Change C_Caster[C_Index]'s animation speed to 100.00% of its original speed
    •                                         Unit - Order C_Caster[C_Index] to Stop
    •                                         Set C_Stage[C_Index] = 4
    •                             Else - Actions
    •                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                     If - Conditions
    •                                         C_Stage[C_Index] Equal to 3
    •                                     Then - Actions
    •                                         Custom script:   set udg_C_X[1] = GetUnitX(udg_C_Caster[udg_C_Index])
    •                                         Custom script:   set udg_C_Y[1] = GetUnitY(udg_C_Caster[udg_C_Index])
    •                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                             If - Conditions
    •                                                 (C_Caster[C_Index] is dead) Equal to False
    •                                                 (C_Target[C_Index] is dead) Equal to False
    •                                                 (Current order of C_Caster[C_Index]) Equal to C_OrderId
    •                                                 C_X[1] Equal to C_CasterX[C_Index]
    •                                                 C_Y[1] Equal to C_CasterY[C_Index]
    •                                             Then - Actions
    •                                                 Unit - Make C_Caster[C_Index] face C_Target[C_Index] over 0.00 seconds
    •                                                 Set C_RealTimer[C_Index] = (C_RealTimer[C_Index] + C_Interval)
    •                                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                     If - Conditions
    •                                                         C_RealTimer[C_Index] Less than C_CastingTime[C_Level[C_Index]]
    •                                                     Then - Actions
    •                                                         Set C_RealTimer2[C_Index] = (C_RealTimer2[C_Index] + C_Interval)
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 C_RealTimer2[C_Index] Greater than C_RealTimer3[C_Index]
    •                                                             Then - Actions
    •                                                                 Set C_RealTimer2[C_Index] = 0.00
    •                                                                 Custom script:   call DestroyEffect(AddSpecialEffectTarget(udg_C_LoopingSFX, udg_C_Caster[udg_C_Index], udg_C_LoopingSFXAttachment))
    •                                                             Else - Actions
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 C_RealTimer3[C_Index] Greater than C_LoopingSFXInterval
    •                                                             Then - Actions
    •                                                                 Set C_RealTimer3[C_Index] = (C_RealTimer3[C_Index] - C_RealTimer[0])
    •                                                             Else - Actions
    •                                                                 Set C_RealTimer3[C_Index] = C_LoopingSFXInterval
    •                                                         Custom script:   set udg_C_X[2] = GetUnitX(udg_C_Target[udg_C_Index]) - udg_C_CasterX[udg_C_Index]
    •                                                         Custom script:   set udg_C_Y[2] = GetUnitY(udg_C_Target[udg_C_Index]) - udg_C_CasterY[udg_C_Index]
    •                                                         Set C_TempDistance = ((C_X[2] x C_X[2]) + (C_Y[2] x C_Y[2]))
    •                                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                             If - Conditions
    •                                                                 C_TempDistance Greater than C_MaxDistance[C_Level[C_Index]]
    •                                                             Then - Actions
    •                                                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                                                 Unit - Order C_Caster[C_Index] to Stop
    •                                                                 Set C_Stage[C_Index] = 4
    •                                                             Else - Actions
    •                                                     Else - Actions
    •                                                         Animation - Change C_Caster[C_Index]'s animation speed to C_MoveAnimationSpeed% of its original speed
    •                                                         Set C_Swinged[C_Index] = False
    •                                                         Set C_Stage[C_Index] = 2
    •                                             Else - Actions
    •                                                 Special Effect - Destroy C_HandFX[C_Index]
    •                                                 Unit - Order C_Caster[C_Index] to Stop
    •                                                 Set C_Stage[C_Index] = 4
    •                                     Else - Actions
    •                                         If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                             If - Conditions
    •                                                 C_Stage[C_Index] Equal to 4
    •                                             Then - Actions
    •                                                 Set C_Angle[C_Index] = C_Angle[C_MaxIndex]
    •                                                 Set C_Caster[C_Index] = C_Caster[C_MaxIndex]
    •                                                 Set C_CasterX[C_Index] = C_CasterX[C_MaxIndex]
    •                                                 Set C_CasterY[C_Index] = C_CasterY[C_MaxIndex]
    •                                                 Set C_HandFX[C_Index] = C_HandFX[C_MaxIndex]
    •                                                 Set C_Level[C_Index] = C_Level[C_MaxIndex]
    •                                                 Set C_RealTimer[C_Index] = C_RealTimer[C_MaxIndex]
    •                                                 Set C_RealTimer2[C_Index] = C_RealTimer2[C_MaxIndex]
    •                                                 Set C_RealTimer3[C_Index] = C_RealTimer3[C_MaxIndex]
    •                                                 Set C_Stage[C_Index] = C_Stage[C_MaxIndex]
    •                                                 Set C_Swinged[C_Index] = C_Swinged[C_MaxIndex]
    •                                                 Set C_Target[C_Index] = C_Target[C_MaxIndex]
    •                                                 Set C_Index = (C_Index - 1)
    •                                                 Set C_MaxIndex = (C_MaxIndex - 1)
    •                                                 If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    •                                                     If - Conditions
    •                                                         C_MaxIndex Equal to 0
    •                                                     Then - Actions
    •                                                         Trigger - Turn off (This trigger)
    •                                                     Else - Actions
    •                                             Else - Actions
               
  • Credits
    - Gwapogi for Kakashi model
« Last Edit: September 26, 2013, 01:08:05 AM by Ofel »
Formerly known as Ofel The Editor

  • Site Owner
  • Administrator
  • Starter - level 4
  • *
  • Posts: 986
  • WC3 Skins: 6
  • WC3 Icons: 2
  • WC3 Spells: 5
  • WC3 Models: 25
  • WC3 Tutorials: 13
  • WC3 Tools: 10
  • WC3 Maps: 11
  • Reputation: 1153
  • Site Admin - I love fix things
    • View Profile
    • Blizzard Modding Information Center
Chidori v1.0
« Reply #1 on: September 04, 2013, 10:14:13 AM »
Hi Ofel!!! and welcome to Blizzmod :)

Could you please add the code into the first post, and don't forget to use [trigger] bbcode. (it's not complete by the moment, but I'm working in it)


We can give you full hosting for your projects, a complete page!!

A custom altered melee map where you can play Naga and Demons. Check it out!!
Use Dropbox...

  • Newbie - level 1
  • *
  • Posts: 8
  • WC3 Skins: 0
  • WC3 Icons: 0
  • WC3 Spells: 0
  • WC3 Models: 0
  • WC3 Tutorials: 0
  • WC3 Tools: 0
  • WC3 Maps: 0
  • Reputation: 1
    • View Profile
    • Hiveworkshop.com
Chidori v1.0
« Reply #2 on: September 05, 2013, 04:47:10 AM »
yeah, ofel
oh btw, you get an idea from DivineLight huh  :P
his Chidori Spell  :P

Edit: it's not lightning blade (raikiri) it's One Thousand Birds (chidori)
just realize it ftw
« Last Edit: September 05, 2013, 05:14:26 AM by Rheiko »

  • Lurker - level 3
  • ***
  • Posts: 4
  • WC3 Skins: 0
  • WC3 Icons: 0
  • WC3 Spells: 0
  • WC3 Models: 0
  • WC3 Tutorials: 0
  • WC3 Tools: 0
  • WC3 Maps: 0
  • Reputation: 0
  • User
    • View Profile
Chidori v1.0
« Reply #3 on: September 06, 2013, 04:05:33 AM »
Yeah, :D
I think i can use his idea cuz i gave him another spell idea too... :)
Formerly known as Ofel The Editor

  • Newbie - level 1
  • *
  • Posts: 8
  • WC3 Skins: 0
  • WC3 Icons: 0
  • WC3 Spells: 0
  • WC3 Models: 0
  • WC3 Tutorials: 0
  • WC3 Tools: 0
  • WC3 Maps: 0
  • Reputation: 1
    • View Profile
    • Hiveworkshop.com
Chidori v1.0
« Reply #4 on: September 06, 2013, 05:14:01 AM »
dude, where's the triggers ??  :-\

  • Site Owner
  • Administrator
  • Starter - level 4
  • *
  • Posts: 986
  • WC3 Skins: 6
  • WC3 Icons: 2
  • WC3 Spells: 5
  • WC3 Models: 25
  • WC3 Tutorials: 13
  • WC3 Tools: 10
  • WC3 Maps: 11
  • Reputation: 1153
  • Site Admin - I love fix things
    • View Profile
    • Blizzard Modding Information Center
Chidori v1.0
« Reply #5 on: September 12, 2013, 07:01:24 PM »
dude, where's the triggers ??  :-\
Yeahh!!! where are the triggers??

We can give you full hosting for your projects, a complete page!!

A custom altered melee map where you can play Naga and Demons. Check it out!!
Use Dropbox...

  • Lurker - level 3
  • ***
  • Posts: 4
  • WC3 Skins: 0
  • WC3 Icons: 0
  • WC3 Spells: 0
  • WC3 Models: 0
  • WC3 Tutorials: 0
  • WC3 Tools: 0
  • WC3 Maps: 0
  • Reputation: 0
  • User
    • View Profile
Chidori v1.1
« Reply #6 on: September 26, 2013, 01:09:29 AM »
Updated!
Formerly known as Ofel The Editor

  • Site Owner
  • Administrator
  • Starter - level 4
  • *
  • Posts: 986
  • WC3 Skins: 6
  • WC3 Icons: 2
  • WC3 Spells: 5
  • WC3 Models: 25
  • WC3 Tutorials: 13
  • WC3 Tools: 10
  • WC3 Maps: 11
  • Reputation: 1153
  • Site Admin - I love fix things
    • View Profile
    • Blizzard Modding Information Center
Chidori v1.1
« Reply #7 on: September 26, 2013, 07:34:16 AM »
Ok, accomplished with the conditions, then approved :)

Please rate this resource :D

We can give you full hosting for your projects, a complete page!!

A custom altered melee map where you can play Naga and Demons. Check it out!!
Use Dropbox...

 

Blizzard Modding Information Center Starcraft II Modding Information Center Wacraft III Modding Information Center WC3JASS.com - The JASS Vault Chronicles of Darkness - A Warcraft III mod Jetcraft - A Starcraft II mod Troll Smash - A Warcraft III Arena
  Mod DB - Change the Game Power of Corruption - A Warcraft III altered melee map Chaos Realm - The world of Game modders and wc3 addicts Follow us on Facebook!!