ID:724228
 
(See the best response by .screw.)
Ok so you know the normal byond movement speed?? How do i make my char move faster with a verb...

Create a variable, let's call it delay, which determines the speed in which the mob moves. Also create a variable, let's call it moved, which tells us if the mob has moved.
mob/var
delay = 10
moved = 0



In Move() check to see if moved is true, meaning the mob has moved recently. If so, return
if(mob.moved) return


Else, move the mob, set moved to 1, and spawn(delay). But don't forget to set moved back to 0 in the spawn() statement.
..()
mob.moved = 1
spawn(mob.delay)
mob.moved = 0
Well i havent made a move verb or anything so where do i place that? Thanks.
In response to Filthynate
Move() is a built-in procedure that /atom/movables have. You can look up the specifics in the reference.
Oh. But where would i put that in the script? In the login part, or...?
In response to Filthynate
Best response
Filthynate wrote:
Oh. But where would i put that in the script? In the login part, or...?

I quickly tossed this together:
mob/var
delay = 10
moved = 0

client/Move()
if(mob.moved) return // if you moved, stop execution of this proc

// else, move
mob.moved = 1
..() // calls src.mob.Move()

spawn(mob.delay) mob.moved = 0


mob/verb
set_delay(d as text) // sets the delay
delay = d


Of course, if you're looking to add delays to non-clients, read into Move proc (movable atom). I also highly recommend looking at the reference.
Wow okay! Got it, thanks so
much, i appreciate it.
Much easier than making a movement delay is to utilize pixel movement's step_size variable. When you want to go faster, just increase it. When you want to go slower, decrease it.
Simple.