public void initializePlayer() {
		boolean valid = false;
		do {
			Point exitLocation = initializeExit();
			int x = random.nextInt() % game.house.dimensions.x * 50;
			if(x < 49) {
				continue;
			}
			int y = random.nextInt() % game.house.dimensions.y * 50;
			if(y < 49) {
				continue;
			}

			player.x = x;
			player.y = y;
			game.house.exitPoint = exitLocation;

			Direction d = new Direction(0, 0, 0);
			if(!d.move()) {
				continue;
			}

			Node destination = new Node(game.player.getCenterLocation(), Node.Type.CENTER);
			Node source = new Node(exitLocation.getLocation(), Node.Type.TOP_LEFT);

			if(ZombieController.getDirection(source, destination, game, null) == Zombie.Direction.STILL) {
				continue;
			}

			boolean cont = false;
			for(Zombie z : game.zombies) {
				double dx = x - z.x;
				double dy = y - z.y;
				if(Math.sqrt((dx * dx) + (dy * dy)) < 250) {
					cont = true;
				}
			}
			if(cont) {
				continue;
			}

			double dx = x - (exitLocation.x + 25);
			double dy = y - (exitLocation.y + 25);
			if(Math.sqrt((dx * dx) + (dy * dy)) < player.sight * 100) {
				continue;
			}

			valid = true;

		} while(!valid);
	}