- Joined
- Apr 4, 2020
- Messages
- 31
Hello,
im currently working on a spell that works like the forcestaff item in dota including a dmg part.
If my hero has another spell learned (Charged) he is supposed to dmg every unit he passes.
Since i dont want the player to use it over cliffs etc, im using @PurgeandFire Walkability Check.
Without the check it works fine but if i'm turning it on, i'm not casting the spell anymore.
This is the config:
Since im still unexperienced with custom spell making i'm using existing spells that are similar to what i'm planning and changing/adding everything as needed.
Now here is the weird part. I tested it on a map with just the walkability check and my spell. The check failed but i could use the spell (Meaning i could use it over cliffs and even outside the map boundaries)
On my original map, i can't use the spell at all. Even if nothing blocks me or im in the open terrain.
I added the spell including the check in the attached map.
What am i missing here or doing wrong?
im currently working on a spell that works like the forcestaff item in dota including a dmg part.
If my hero has another spell learned (Charged) he is supposed to dmg every unit he passes.
Since i dont want the player to use it over cliffs etc, im using @PurgeandFire Walkability Check.
Without the check it works fine but if i'm turning it on, i'm not casting the spell anymore.
This is the config:
-
Updraft
-
Events
- Unit - A unit Starts the effect of an ability
-
Conditions
- (Ability being cast) Equal to Updraft (Force)
-
Actions
- Set VariableSet Updraft_User = (Triggering unit)
- Animation - Change (Triggering unit) turn speed to 0.01
- Unit - Turn collision for (Triggering unit) Off.
- Set VariableSet Updraft_Distance = 750.00
- Trigger - Turn on Updraft Loop <gen>
-
Events
-
Updraft Loop
-
Events
- Time - Every 0.04 seconds of game time
- Conditions
-
Actions
- Trigger - Run Check Walkability <gen> (ignoring conditions)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- Updraft_Distance Less than or equal to 0.00
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
- Animation - Change Updraft_User turn speed to (Default turn speed of Updraft_User)
- Unit - Turn collision for Updraft_User On.
- Trigger - Turn off (This trigger)
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Level of Charged for Updraft_User) Greater than or equal to 1
-
Then - Actions
- Set VariableSet Updraft_Pos = (Position of Updraft_User)
- Set VariableSet Updraft_Pos_Off = (Updraft_Pos offset by 50.00 towards (Facing of Updraft_User) degrees.)
-
Destructible - Pick every destructible within 150.00 of Updraft_Pos and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Eschental, Baumwand
- (Destructible-type of (Picked destructible)) Equal to Eschental, Baldachinbaum
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
- Destructible - Kill (Picked destructible)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
- Unit - Move Updraft_User instantly to Updraft_Pos_Off
- Special Effect - Create a special effect attached to the origin of Updraft_User using Abilities\Spells\Human\FlakCannons\FlakTarget.mdl
- Special Effect - Destroy (Last created special effect)
- Set VariableSet Updraft_Distance = (Updraft_Distance - 50.00)
- Unit - Create 1 Dummy for (Owner of Updraft_User) at (Position of Updraft_User) facing Default building facing degrees
- Unit - Add Updraft (Damage) to (Last created unit)
- Unit - Order (Last created unit) to Human Mountain King - Thunder Clap.
- Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
- Custom script: call RemoveLocation(udg_Updraft_Pos)
- Custom script: call RemoveLocation(udg_Updraft_Pos_Off)
-
Else - Actions
- Set VariableSet Updraft_Pos = (Position of Updraft_User)
- Set VariableSet Updraft_Pos_Off = (Updraft_Pos offset by 75.00 towards (Facing of Updraft_User) degrees.)
-
Destructible - Pick every destructible within 150.00 of Updraft_Pos and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Eschental, Baumwand
- (Destructible-type of (Picked destructible)) Equal to Eschental, Baldachinbaum
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
- Destructible - Kill (Picked destructible)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
- Unit - Move Updraft_User instantly to Updraft_Pos_Off
- Special Effect - Destroy (Last created special effect)
- Special Effect - Create a special effect attached to the origin of Updraft_User using Abilities\Spells\Human\FlakCannons\FlakTarget.mdl
- Set VariableSet Updraft_Distance = (Updraft_Distance - 75.00)
- Custom script: call RemoveLocation(udg_Updraft_Pos_Off)
- Custom script: call RemoveLocation(udg_Updraft_Pos)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Events
Since im still unexperienced with custom spell making i'm using existing spells that are similar to what i'm planning and changing/adding everything as needed.
Now here is the weird part. I tested it on a map with just the walkability check and my spell. The check failed but i could use the spell (Meaning i could use it over cliffs and even outside the map boundaries)
On my original map, i can't use the spell at all. Even if nothing blocks me or im in the open terrain.
I added the spell including the check in the attached map.
What am i missing here or doing wrong?