void Gui::render() { auto engine = Engine::getSingleton(); auto player = engine->getPlayer(); // clear the GUI console con->setDefaultBackground(TCODColor::black); con->clear(); // mouse look renderMouseLook(); // draw the health bar renderBar(1,1,BAR_WIDTH,"HP",player->getOwner()->get<float>("HP").get(), player->getOwner()->get<float>("MaxHP").get(), TCODColor::lightRed,TCODColor::darkerRed); // draw the message log int y=1; float colorCoef=0.4f; for (unsigned int i = 0; i < log.size(); i++) { auto message = log[i]; con->setDefaultForeground(message->col * colorCoef); con->print(MSG_X,y,message->text.c_str()); y++; if ( colorCoef < 1.0f ) colorCoef+=0.3f; } // blit the GUI console on the root console TCODConsole::blit(con,0,0,engine->getScreenWidth(),PANEL_HEIGHT, TCODConsole::root,0,engine->getScreenHeight()-PANEL_HEIGHT); }
void tGui::render() { //Clear the gui console m_pConsole->setDefaultBackground(TCODColor::black); m_pConsole->clear(); renderBar( 1, 1, BAR_WIDTH, engine.m_pPlayer->m_pName, engine.m_pPlayer->m_pDestructible->m_CurrentHP, engine.m_pPlayer->m_pDestructible->m_MaxHP, TCODColor::lightRed, TCODColor::darkerRed ); //Draw the message log int y = 1; float colorCoef = 0.4f; for(tMessage** iterator = m_MessageLog.begin(); iterator != m_MessageLog.end(); ++iterator) { tMessage* pMessage = *iterator; m_pConsole->setDefaultForeground(pMessage->color * colorCoef); m_pConsole->print(MSG_X, y, pMessage->text); y++; if( colorCoef < 1.0f ) { colorCoef += 0.3f; } } renderMouseLook(); //Blit the bar onto the console TCODConsole::blit(m_pConsole, 0,0, engine.m_ScreenWidth, PANEL_HEIGHT, TCODConsole::root, 0, engine.m_ScreenHeight - PANEL_HEIGHT); }