Exemple #1
0
Mode PlayMode::frame()
{
  if(!paused)
  {
    background->draw();
    if(!handleInput())
      return MENU;
    if(!crashed)
    {
      moveField();
      background->update();
      updatePlayer();
      generateWalls();
      generateObstacles();
      generateItems();
    }
    updatePlayerTail();
    particles->draw(0);
    particles->draw(2);
    drawStuff();
    particles->draw(4);
    drawPlayer();
    particles->draw(1);
    floating->draw();
    collisionDetect();
    obstacleCounter();
    drawScorePanel();
    if(crashed && !gameOverExplosionTime--)
    {
      globalStore->seconds = playtime / 60;
      globalStore->score = score;
      globalStore->obstacles = passed;
      globalStore->stars = collected;
      storage->read();
      storage->insert(score);
      return GAMEOVER;
    }
    particles->update();
    floating->update();
  } else
  {
    drawPauseScreen();
    if(!handleInput())
      return MENU;
  }
  return PLAY;
}
Exemple #2
0
void Game::Draw() {
	player->draw(drawManager);
	
	for(auto it = bricks.begin(); it != bricks.end(); ++it) {
		(*it)->draw(drawManager);
	}

	for(auto it = balls.begin(); it != balls.end(); ++it) {
		(*it)->draw(drawManager);
	}

	for(auto it = balls.begin(); it != balls.end(); ++it) {
		(*it)->draw(drawManager);
	}

	life_text->draw();
	score_text->draw();
	if(paused) drawPauseScreen();
}
Exemple #3
0
void checkGameState()
{
	renderFrame();
	renderNextBlockFrame();
	
	switch (gameState)
	{
	case 0: // Game play
		printCanvasBlocks();
		drawNextBlock();
		renderBlock();
		break;
	case 1: // Game pause
		drawPauseScreen();
		break;
	case 2: // Game over
		drawGameOverScreen();
		break;
	}
	
	drawInstructions();
	drawScoreboard();
}
Exemple #4
0
void PlayState::draw() const
{
	p_rtexture_->draw(background_);

	for (GameObject* obj : p_objects_)
		if (obj->getAlive())
			p_rtexture_->draw(*obj);

	p_rtexture_->draw(map_);
	p_rtexture_->draw(scoreText_);

	switch (gameplayState_)
	{
	case Paused:
		drawPauseScreen();
		break;
	case DeathScreen:
		drawDeathScreen();
		break;
	case WinScreen:
		drawWinScreen();
		break;
	}
}