ID:178230
 
is there a way of making people move without them haveing to try, so that you may walk onto the top of a slide then you slide all the way left till you slide off, and can it work in 2 directions.
not sure if this is the right place to put this
mazarot wrote:
is there a way of making people move without them haveing to try, so that you may walk onto the top of a slide then you slide all the way left till you slide off, and can it work in 2 directions.

That is indeed possible. You can use the Entered() proc for your slide turf and check what direction the entering object came from. Then just move the object again in that direction.
turf
slide
Entered(atom/movable/Obj,atom/OldLoc)
var/dir = get_dir(OldLoc,src)
spawn(2) Obj.Move(get_step(Obj,dir)) // 0.2 sec delay between movement

This simple example doesn't count for movement in other directions, so if you want to freeze movement for the sliding object, you can create a variable called freeze or something, and set it to 1 while sliding. Then in the Move() proc, test if freeze is 1 and if so, don't let the object move.


/Andreas
In response to Gazoot
thank ya
http://www.byond.com/hub/Sariat/BYONDcodeclient there is a motion demo there :)
In response to mazarot
thank ya

Yarr welcome matey!
In response to Gazoot
Gazoot wrote:
This simple example doesn't count for movement in other directions, so if you want to freeze movement for the sliding object, you can create a variable called freeze or something, and set it to 1 while sliding. Then in the Move() proc, test if freeze is 1 and if so, don't let the object move.

Sorry about my lack of details here. You need to override client/Move(), not mob/Move(). And "freeze" has to be a client variable. You understand why?


/Andreas