I was thinking a nice change for this would be to start with 'if doorkey is pressed' then do the later checks - then the only thing the game should be looking for is if the doorkey is being pressed, before executing the code - otherwise the game is trying to look at all that code every frame, yes?
EDIT: At present the game checks 'is scene transitioning?' If yes, stop - If no (most of the time) is there a hero in door 1, door 2, etc etc.
What I typed would be 'is scene transitioning' if yes, stop - if doorkey was pressed, is hero in any doors, if yes, transition to appropriate scene.
Would that fix likely stop the slowdown if certain doors don't exist or don't have scenes attached?