# Spell Help - Knockback

#### Battlemapsta

##### I am the Conduit of Change
I am working on a map right now and need some help. I want to make an abiltity that does damage and knocks the target back for a long range. How can I make the unit be knocked back from the spell?

Is there also a nonjass way to make it since I am clueless in it.

Also which general spell is good for doing the damage? I was thinking firebolt with very very low stun duration like .001

I

#### IKilledKEnny

##### Guest
Code:
``````Untitled Trigger 001
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to <<Ability>>
Actions
Set PointVariable = ((Position of (Target unit of ability being cast)) offset by <<Integer>> towards (Facing of (Casting unit)) degrees)
Unit - Move (Target unit of ability being cast) instantly to PointVariable``````

#### uberfoop

Quick knockback I just threw together:
Obviously you need the kattanna system in yer map for it:

Code:
``````function KnockbackSlide takes nothing returns nothing
local timer t = GetExpiredTimer()
local integer steps = GetHandleInt(t,"steps")
local unit target = GetHandleUnit(t,"target")
local location l = GetUnitLoc(target)
local location ll = PolarProjectionBJ(l,GetHandleReal(t,"dist"),GetHandleReal(t,"angle"))
call SetUnitPositionLoc(target,ll)
call RemoveLocation(l)
call RemoveLocation(ll)
set l = null
set ll = null
set target = null
if ( steps <= 1 ) then
call FlushHandleLocals(t)
call DestroyTimer(t)
return
endif
call SetHandleInt(t, "steps", steps-1)
endfunction

function SimpleKnockback takes unit target, real interval, real dist, real duration, real angle, boolean collision returns nothing
local timer t = CreateTimer()
local integer time = R2I(duration)
local unit targett = target
call SetHandleInt(t,"steps", R2I(duration/interval))
call SetHandleHandle(t,"target",target)
call SetHandleReal(t,"dist",dist)
call SetHandleReal(t,"angle",angle)
if collision == false then
call SetUnitPathing(target,false)
endif
call TimerStart(t,interval,true,function KnockbackSlide)
call PolledWait(time)
set t = null
if collision == false then
call SetUnitPathing(target,true)
endif
set targett = null
endfunction``````
the parameters are as follows:
unit being knockbacked, movement interval, distance per interval, total duration, angle of knockback, true/false for whether you want unit to still have collision or not.

#### Chocobo

##### White-Flower
You should say it requires the handle vars.

#### Battlemapsta

##### I am the Conduit of Change
Thanks for the help guys I will test IKilledEnny's idea first since I suck at triggers and if it won't work I'll go with uberfoop's trigger. I'll reply the results

M

#### Mythic Fr0st

##### Guest
Or the harder GUI way
Variables:
Knockback_Unit, unit, array 1
Stop, boolean, array 1,
X, integer, no array
IA, integer, no array
Loc, point, array 1
Exitwhen_Loc, point, array 1

Code:
``````    Events
Time - Every 0.03 seconds
Conditions
Actions
For each Integer A from 1 to X do MULTIPLE Actions
Loop - Actions
If / Then / Else, Multiple Functions
If - Conditions
Knockback_Unit[Integer A] is alive equal to true
Stop[Integer A] equal to false
Then - Actions
Set Loc[0] = Position of Knockback_Unit[Integer A]
Set Loc[1] = Loc[0] offset by 12 towards facing of Knockback_Unit[Integer A]
Set IA = Integer A
Unit - Move instantly Knockback_Unit[Integer A] to Loc[1]
If / Then / Else, Multiple Functions
If - Conditions
Distance Between Loc[1] and Exitwhen_Loc[Integer A] less than or equal to 50
Then - Actions
Set Stop[Integer A] = true
Unit - Unpause Knockback_Unit[Integer A]
Else - Actions
Custom script:   call RemoveLocation(udg_Loc[1])
Custom script:   call RemoveLocation(udg_Loc[0])
Custom script:   call RemoveLocation(udg_Exitwhen_Loc[udg_IA]
Else - Actions``````
NOTE the Custom script: actions, are not in the Else - Actions of the loop!
(DO NOT PUT THEM IN THE Else - Actions)

Code:
``````    Events
Unit - A unit begins casting an ability
Conditions Ability being cast equal to knockknockwhosthere
Actions
Set Knockback_Unit[X] = target unit of ability being cast
Set Loc[2] = Position of Target Unit Of Ability Being Cast
Set Exitwhen_Loc[X] = Loc[2] offset by 600 towards facing of Knockback_Unit[X] - Facing of Casting Unit
Unit - Pause Knockback_Unit[X]
Set X = X + 1``````
I not sure if it will work

PS (Does anyone notice I hand type all my code O_O?)

#### lh2705

##### Just another Helper
Yeah, I do..
Battlemapsta, You can check out the spells section. I made a passive version, maybe you can tweak it to become an active spell..

#### Battlemapsta

##### I am the Conduit of Change
Yeah, I do..
Battlemapsta, You can check out the spells section. I made a passive version, maybe you can tweak it to become an active spell..

Sorry I didn't reply but ih2705 thanks so much for your trigger . I decided to turn it passive while thinking a lot and your trigger works perfectly with my unit.

+rep

#### The Helper

Staff member
This thread is showing up as viewed all the time so bumping for great justice!

General chit-chat
Help Users
• No one is chatting at the moment.
• The Helper:
It is possible to automate it so that instead of moving to Archive if it has the Science, technology or sci tech tag that it gets archived there instead. I am considering a new Weird News Tag
• tom_mai78101:
Please do. I'll try to tag the news appropriately when I get the chance.
• The Helper:
The new Discourse forum software we are moving to next does alot with the tags and also hashtags
• The Helper:
OK I found the source of your burrito post stuff it is from Reddit and possibly a facebook post too but definitely reddit
• The Helper:
Happy Monday!
• The Helper:
Happy Tuesday
• Blackveiled:
Happy Tuesday
• The Helper:
Blackveiled! What is up?
• The Helper:
I saw XXXConan on here the other day I dont know if you remember him
• The Helper:
blasts from the past
• Blackveiled:
I remember him, buncha old faces
• jonas:
He's a software engineer at a hiring platform now I think
• The Helper:
I wanna know if his mom is still single LOL
• tom_mai78101:
I need context.
+1
• The Helper:
Back in the day conan was a young one and his mom was single and I used to tease him that I was going to date his mom and be his daddy - yeah sounds bad now but it was funny at the time
• The Helper:
his mom is my age
• The Helper:
i know right it was pretty funny
• thewrongvine:
its pretty funny
+1
• tom_mai78101:
Thanks for the context.
+1
• The Helper:
Happy Hump Day!!!
• Blackveiled:
TH old fart gotta have a beer with me one of these days
• The Helper:
I am down anytime Blackveiled
• Blackveiled:
count on it then cause you don't live that far from me hah
• The Helper:
really that is cool! I am in Houston in the 77079 area