Warcraft III resources & community, 2003–2006 · archived

Ramza

6 posts
#1

Ramza

Howdy, I've read a lot of posts on this forum and I see that most of the satisfying answers are from you :)

So I was wondering if you could help me

I read your stepthrough for making a one-person knockback effect and I don't understand it fully. I tried doing what you said but it just don't work. If you could do a precise step by step I would be most Grateful

Thanks

-Darth
#2
Im not ramza, but single unit knock back is easy. Want my answer or what? :(
#3
Hahah of course!
#4
Ok i start now:

For a single unit push back can u take several ways:

1. A Loop (looks not good cause it has minor delay but can be chancelled with a MAX number easily)

2. A Timer (very good look, has no delay, but needs to be stopped In trigger with a Countdown Timer stop - action)

What do you want?
#5
Well I'm alright at trigger work when I know wut Im doin so maybe the second one if ya can help!

Thanks!
#6
Ok, first u need to create a 2 triggers, 1 who starts the trigger and 1 to activate when the timer expires(0.01 looks at best, 0.02 too), then u need to set the target unit to a unit var and the casting unit too, after this create a position var but undeclined for first, u need this to set the point in the expiring timer - trigger to check the target units position 3 units(range) behind the target, when u have finished the the first trigger to decline the vars of knock back, you need a timer now, name is wayne (stolen by joe ;)) then u start him in the first trigger and detect in the second trigger when this timer expires :). Then you take the polar projection function and set the point var you have created to position of target unit and 4 range behind with facing (Facing angle between caster´s point and targets point) after this move the target unit instantly to the declared point. Then remove the location. Dont forget to make the timer repeating and a if then else function with a integer condition (maybe 50, that are in this tutorial 200 range(4 range per 0,01*50 = 200 in 0,50 seconds) and then stop the timer and set all used variables to null after this.

I hope i could help you :).