WASD keys control movement. Left/Right arrow keys turn the camera unless Z is pressed. Z and Left/Right can be used to strafe. 1 and 2 will switch your weapon, if you have them picked up.
BurgerBoyFTW created the raycasting and basic entity system. I added pickup entities and monsters. NOTE: Turbo Mode will yield the best results in speed. This is a version that has become rather troubling... I have a system that emits sound from a set of coordinates and the further you are from the sound, the quieter it is. I do not have any AI for the monsters yet, and you can still shoot through walls. I figure that a tick-based system for entity management, such as flinching for 5 ticks and then stopping, is not the best way to go. I might have to rewrite the code so that every tick, the screen updates the position of the entity and have a seperate script that controls the AI of the monster...