Code:
/*01*/turf/Doors
/*02*/ BMDoor
/*03*/ icon_state = "Door"
/*04*/ Enter()
/*05*/ if(usr.y==src.y-1)
/*06*/ if(IsByondMember(usr))
/*07*/ return 1
/*08*/ else
/*09*/ return 0
/*10*/ else return 1
/*11*/ SubDoor
/*12*/ icon_state = "Door"
/*13*/ Enter()
/*14*/ if(usr.y==src.y-1)
/*15*/ if(CheckPassport("Pass"))
/*16*/ return 1
/*17*/ else
/*18*/ return 0
/*19*/ else return 1
/*20*/ BMSDoor
/*21*/ icon_state = "Door"
/*22*/ Enter()
/*23*/ if(usr.y==src.y-1)
/*24*/ if(client.IsByondMember())
/*25*/ return 1
/*26*/ if(client.CheckPassport("0123456789abcdef"))
/*27*/ return 1
/*28*/ else
/*29*/ return 0
/*30*/ else return 1
/*31*/ Door
/*32*/ icon_state = "Door"
Problem description:
Doors.dm:6:error: IsByondMember: undefined proc
Doors.dm:15:error: CheckPassport: undefined proc
Doors.dm:24:error: client.IsByondMember: undefined var
Doors.dm:26:error: client.CheckPassport: undefined var
The second two are because "client" as a variable doesn't exist there, so anything using "client" makes no sense.
What you want to do, in all cases there, is grab usr, and confirm it has a client, then check that.
Those procs should probably live under /turf/Doors, and be called like ...
If it's a common pattern for you, knock the two procs into one: