Gah!! I'm an idiot!!
In my global script I have a function that hides my GUI windows (including the aforementioned Quit and Restart) and in there it does a check to set the player as cEgo if it's not. (Cause I have two inventories for the player, so I used that workaround).
However, in this room I have a third character as the player, so it was messing that up completely.
Sorry for the pointless post, but thanks nonetheless Gilbet.