ID:139286
 
Code:
turf
JailDoor
icon = 'Jail.dmi'
icon_state = "Door"
Entered(var/mob/M)
if(usr.ckey in gm)
return
else
usr<<"You need to be a GM to go through"


Problem description:
I am not extremely new, I just don't know if there is a undo proc, or something that doesn't allow players that aren't inside a list to not get through. I know a "fly" verb would easily fix this but that's not helping me learn anything.
There are also multiple enterences, so I can't just add usr.loc = locate(x,y,z)
This is easy enough to do.

First off, you'll want to include this Bumped() proc anywhere in your code.
atom
proc/Bumped(atom/movable/o)
return 0

movable/Bump(atom/a)
a.Bumped(src)
return ..(a)






And here are the necessary changes you'll need to get this to work.

var/list/GMs = list("Namedspeed","Bobby","Frank") // etc.



turf
JailDoor
icon = 'Jail.dmi'
icon_state = "Door"
density = 1 // this door is dense to be able to use Bump()
Bumped(mob/M) // called when the mob bumps into this door
if(M.key in GMs))
M.loc = src // the mob is transferred onto the door
else
M<<"You need to be a GM to go through"






In response to Duelmaster409
Thank you so much. Ahh. Thats a good idea. Making me teleport ONTO it. :P

I wouldn't have thought of it in a million years.