diff --git a/mk/linux/glest.ini b/mk/linux/glest.ini index 21644229..cc37bd6e 100644 --- a/mk/linux/glest.ini +++ b/mk/linux/glest.ini @@ -16,8 +16,8 @@ AutoMaxFullScreen=false AutoTest=false CheckGlCaps=true ColorBits=32 -ConsoleMaxLines=7 -ConsoleMaxLinesStored=20 +ConsoleMaxLines=8 +ConsoleMaxLinesStored=25 ConsoleTimeout=20 DataPath=$APPLICATIONDATAPATH/ LogPath=$HOME/.megaglest/ @@ -41,7 +41,7 @@ FirstTime=false FocusArrows=true FogOfWarSmoothing=true FogOfWarSmoothingFrameSkip=3 -FontConsoleBaseSize=18 +FontConsoleBaseSize=14 FontConsolePostfix=-*-*-*-*-*-*-* FontConsolePrefix=-*-arial-*-r-*-*- FontDisplayBaseSize=12 diff --git a/source/glest_game/game/console.cpp b/source/glest_game/game/console.cpp index 8a725c29..57178989 100644 --- a/source/glest_game/game/console.cpp +++ b/source/glest_game/game/console.cpp @@ -37,10 +37,11 @@ Console::Console() { timeElapsed = 0.0f; xPos=20; yPos=20; - lineHeight=20; + lineHeight=Config::getInstance().getInt("FontConsoleBaseSize","18")+2; font=CoreData::getInstance().getConsoleFont(); font3D=CoreData::getInstance().getConsoleFont3D(); stringToHighlight=""; + onlyChatMessagesInStoredLines=true; } void Console::resetFonts() { @@ -101,9 +102,11 @@ void Console::addLine(string line, bool playSound, int playerIndex, Vec3f textCo if(lines.size() > maxLines) { lines.pop_back(); } - storedLines.insert(storedLines.begin(), info); - if(storedLines.size() > maxStoredLines) { - storedLines.pop_back(); + if(onlyChatMessagesInStoredLines==false || info.PlayerIndex!=-1) { + storedLines.insert(storedLines.begin(), info); + if(storedLines.size() > maxStoredLines) { + storedLines.pop_back(); + } } } catch(const exception &ex) { diff --git a/source/glest_game/game/console.h b/source/glest_game/game/console.h index 5c1c9e0a..fc6dd9bb 100644 --- a/source/glest_game/game/console.h +++ b/source/glest_game/game/console.h @@ -75,12 +75,16 @@ private: int lineHeight; Font2D *font; Font3D *font3D; + bool onlyChatMessagesInStoredLines; public: Console(); int getStoredLineCount() const {return storedLines.size();} int getLineCount() const {return lines.size();} + bool getOnlyChatMessagesInStoredLines() const { return onlyChatMessagesInStoredLines ;} + void setOnlyChatMessagesInStoredLines(bool value) {this->onlyChatMessagesInStoredLines= value;} + int getXPos() const {return xPos;} void setXPos(int xPos) {this->xPos= xPos;} int getYPos() const {return yPos;} diff --git a/source/glest_game/menu/menu_state_masterserver.cpp b/source/glest_game/menu/menu_state_masterserver.cpp index a63a71b7..92c05092 100644 --- a/source/glest_game/menu/menu_state_masterserver.cpp +++ b/source/glest_game/menu/menu_state_masterserver.cpp @@ -59,6 +59,7 @@ MenuStateMasterserver::MenuStateMasterserver(Program *program, MainMenu *mainMen consoleIRC.setFont(CoreData::getInstance().getMenuFontNormal()); consoleIRC.setFont3D(CoreData::getInstance().getMenuFontNormal3D()); consoleIRC.setLineHeight(18); + consoleIRC.setOnlyChatMessagesInStoredLines(false); serverLinesToRender=8; serverLinesLineHeight=25;