Controlling another mob/player movement in Developer Help
Control(mob/M in world) set category = "Administration" if(istype(M)) client.controlling = M M.client.lock=1 usr<<"You take control of [M]."
client/var lock=0 controlling= null
client/Move(l,d) if(src.controlling) step(src.controlling,d) return 0 else if(lock) return 0 else ..(l,d)
Control(mob/M in world)
set category = "Administration"
if(istype(M)) client.controlling = M
M.client.lock=1
usr<<"You take control of [M]."
Theres the verb.
The vars.
And there you go, I don't know how to make it return so someone else will have to help you on that.