void GameState::drawScore() { glColor3f(1, 1, 1); char str[160]; sprintf(str, "Level: %d Balls: %d Blocks: %d", m_level, m_balls, m_blocks_destroyed); DrawBitmapText(0.1, 1.1, GLUT_BITMAP_HELVETICA_10, str); }
void GameState::drawGameOver() { glColor3f(1, 1, 1); const char* str = "Game Over!\n" "Right-click for new game"; DrawBitmapText(0.1, 0.1, GLUT_BITMAP_HELVETICA_10, str); }
void draw() { static double TotalTime = 280; glClearColor(.1f, .1f, .2f, 0.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); worldDeltaTime = TackFPS(); if(bPause) worldDeltaTime = 0; //if (gKeyMap[9]) worldDeltaTime *= 10.; //if (sf::Keyboard::isKeyPressed(sf::Keyboard::Quote)) worldDeltaTime /= 10.; TotalTime += worldDeltaTime; UpdatePositionAndRotation(); glPushMatrix(); gh.DrawMap(worldDeltaTime, TotalTime); DrawSquare(); glPopMatrix(); glColor4f(1., 1., 1., 1.); glDisable(GL_TEXTURE_3D); glEnable(GL_TEXTURE_2D); SetupFor2D(); glPushMatrix(); glTranslatef(miWidth / 2 - 7, miHeight / 2 - 12, 0); DrawBitmapText("+"); glPopMatrix(); glTranslatef(10, 30, 0); DrawBitmapText(gDialog); glTranslatef(-10, -30, 0); glTranslatef(0, 125, 0); char tt[1024]; if (show_debugging) { sprintf(tt, "%1.2f %1.2f %1.2f\n", gh.MapOffset.x, gh.MapOffset.y, gh.MapOffset.z); DrawBitmapText(tt); } float pers = miWidth * miHeight / (gh.LastPass1Time / 1. + gh.LastPass2Time / 1. + gh.LastPass3Time); glTranslatef(0, 25, 0); if (show_debugging) { sprintf(tt, "T1: %1.3f\nT2: %1.3f\nT3: %1.3f\n%f Perf\n", gh.LastPass1Time / 1000000., gh.LastPass2Time / 1000000., gh.LastPass3Time / 1000000., pers); DrawBitmapText(tt); } glTranslatef(30, -150, 0); sprintf(tt, "%3.2f\n", GameTimer); DrawBitmapText(tt); glTranslatef(300, 0, 0); sprintf(tt, "TRY %1.f\nInven: %d", GameAttempt, pickables_in_inventory); DrawBitmapText(tt); PopFrom2D(); }