public void doFrameInGame() {

		moveAndCheckCollisons();
		incrementTimers();

		if (finishedFinalLevel()) {

			addGameState("GameWon");

			gameOver();

		} else {

			if (player.timeToWaitAfterKilled == 0) {
				lifeLost();
			}
			if (existsObject("player")) {
				if (!onBossLevel()) {
					if (gameTimer < STAGE_DURATION) {
						generateDrones();
					} else if (countObjects(null, 24) == 0)
						endLevel();
				} else {
					if (gameTimer == 1)
						createBoss();
					if (gameTimer > 1 && !existsObject("boss")) { // next level
						endLevel();
					}
				}

			}
		}

	}