const Map_point& Map::Get_point(int x, int y) const { while(x<0) x += Get_width(); while(y<0) y += Get_height(); while(x>=Get_width()) x -= Get_width(); while(y>=Get_height()) y -= Get_height(); return map_field[x][y]; }
void Console::Draw() { int uiround=uiGetRoundBox(); uiSetRoundBox("0000"); if (Get_Active()) gl_round_box_Hshade(GL_POLYGON, Get_x(), Get_y(), Get_x()+Get_widht(), Get_y()+Get_height(),10, "FFFFFF", "FFFFFF"); int line=Get_y()+10; int posx=Get_x(); int found; int i=0; while( m_text.size()>(int)(Get_height()/11)) { m_text.pop_front(); } for( listItor itor = m_text.begin(); itor != m_text.end(); ++itor ) { i++; found = (*itor).content.find_first_of ('\n'); if( found <=0) { switch ((*itor).font) { case 1: drawText(posx,line+15,(*itor).content, (*itor).color, (*itor).font); break; case 2: drawText(posx,line+13,(*itor).content, (*itor).color, (*itor).font); break; case 3: drawText(posx,line+10,(*itor).content, (*itor).color, (*itor).font); break; case 4: drawText(posx,line+24,(*itor).content, (*itor).color, (*itor).font); break; case 5: drawText(posx,line+12,(*itor).content, (*itor).color, (*itor).font); break; case 6: drawText(posx,line+18,(*itor).content, (*itor).color, (*itor).font); break; default: drawText(posx,line+10,(*itor).content, (*itor).color, (*itor).font); break; } posx=posx+((*itor).content.size()*6); } else { switch ((*itor).font) { case 1: drawText(posx,line+15,(*itor).content, (*itor).color, (*itor).font); line=line+15; break; case 2: drawText(posx,line+13,(*itor).content, (*itor).color, (*itor).font); line=line+13; break; case 3: drawText(posx,line+10,(*itor).content, (*itor).color, (*itor).font); line=line+10; break; case 4: drawText(posx,line+24,(*itor).content, (*itor).color, (*itor).font); line=line+24; break; case 5: drawText(posx,line+12,(*itor).content, (*itor).color, (*itor).font); line=line+12; break; case 6: drawText(posx,line+18,(*itor).content, (*itor).color, (*itor).font); line=line+18; break; default: drawText(posx,line+10,(*itor).content, (*itor).color, (*itor).font); line=line+10; break; } posx=Get_x(); } } uiSetRoundBox(uiround); }