ID:172198
 
Ok, here what I have no clue how to do. I do the demonstration in steps. (Note: This is a board game)

  • Disable mob movement.

  • Place a mob on the turf.

  • Take control of the mob and make it move.

    Thank you,

    Zlegend
ZLegend wrote:
Disable mob movement.

I am going to assume you mean "disable the player's ability to move the mob"
mob
var/disable_mob_movement=0//Set this to 1 to disable movement
proc/disable_mob_movement()
disable_mob_movement=1
client
Move()
if(mob.disable_mob_movement)return 0
.=..()


Place a mob on the turf.

mob/proc/Place_a_mob_on_the_turf()
loc=locate(x,y,z)//where x,y,z are the coordinates of the turf, change them to the appropriate numbers


Take control of the mob and make it move

mob/proc/Take_control_of_the_mob_and_make_it_move()
disable_mob_movement()//from the first example
Place_a_mob_on_the_turf()//from the second example
//Then just put whatever you want the mob to do after this, such as:
Move(get_step(src,NORTH))
Move(get_step(src,EAST))
//and so on


Thank you,

Your very welcome.

<font color = red>Zlegend

Please close those italics and font tags.
In response to Loduwijk
What does .=..() do?
In response to Zlegend2
"." is the return value, and "..()" means "call the parent type's version of the function". So that basically means "Do what the movement code normally does, and when this function is finished return what that function would have returned."