void World::updateScoreboard(void) { // User scored if (mBallNode->getPosition().x >= 60) { Ogre::OverlayManager& om = Ogre::OverlayManager::getSingleton(); Ogre::TextAreaOverlayElement *te = (Ogre::TextAreaOverlayElement *) om.getOverlayElement("Scoreboard/Panel2/Score2"); // Set new score for user player int score = Ogre::StringConverter::parseInt(te->getCaption()); score++; te->setCaption(Ogre::StringConverter::toString(score)); // Reset necessary booleans hitTopWall = false; hitBottomWall = false; hitByUser = false; hitByAI = false; start = true; // Send ball back to middle mBallNode->setPosition(Ogre::Vector3(0, 0, 0)); } // AI scored if (mBallNode->getPosition().x <= -60) { Ogre::OverlayManager& om = Ogre::OverlayManager::getSingleton(); Ogre::TextAreaOverlayElement *te = (Ogre::TextAreaOverlayElement *) om.getOverlayElement("Scoreboard/Panel1/Score1"); // Set new score for AI player int score = Ogre::StringConverter::parseInt(te->getCaption()); score++; te->setCaption(Ogre::StringConverter::toString(score)); // Reset necessary booleans hitTopWall = false; hitBottomWall = false; hitByUser = false; hitByAI = false; start = true; // Send ball back to middle mBallNode->setPosition(Ogre::Vector3(0, 0, 0)); } }