Very polished game, well done!
Some feedback: It seems that the player moves faster when moving diagonally. If this is not intended, you can fix it by normalizing the player's input vector before multiplying it by the player's speed.
Something else I noticed was that enemies can spawn too close to the entrance of a room. This may cause the player to just run into them before they can even notice them. Might be a good idea to set possible enemy spawn points for each room, or to set areas around the entrances where enemies cannot spawn.
Other than that, a very nice game!