private void handleGameInput() {
		while (Keyboard.next()) {
			if (Keyboard.getEventKeyState()) {
				if (Keyboard.getEventKey() == KeyPress.PAUSE.getKeyID()) {
					GameState.pauseUnpause();
				} else if (Keyboard.getEventKey() == KeyPress.FIRE.getKeyID()) {
					
					Vector direction = this.getMousePositionInGame()
							.minus(new Vector(model.getPlayer().getBody().getPosition()))
							.norm();
					
					Projectile proj = new Projectile(model,
							new Vector(model.getPlayer().getBody().getPosition()).plus(direction),
							new Vector(0.05f, 0.05f),
							direction.scale(0.5f));
					
					model.add(proj);
				}
			}
		}

		boolean sprinting = KeyPress.SPRINT.isDown();

		if (KeyPress.FORWARD.isDown()) {
			model.getPlayer().moveForward(sprinting);
		}
		if (KeyPress.BACKWARD.isDown()) {
			model.getPlayer().moveBackward(sprinting);
		}
		if (KeyPress.LEFT.isDown()) {
			model.getPlayer().moveLeft(sprinting);
		}
		if (KeyPress.RIGHT.isDown()) {
			model.getPlayer().moveRight(sprinting);
		}
	}