Пример #1
0
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);
}
Пример #2
0
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);
}