Changeset 2845
- Timestamp:
- Mar 25, 2009, 5:33:58 PM (16 years ago)
- Location:
- code/branches/gui/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/gui/src/core/Game.cc
r2844 r2845 50 50 namespace orxonox 51 51 { 52 void stop_game() 53 { 54 Game::getInstance().stop(); 55 } 52 static void stop_game() 53 { Game::getInstance().stop(); } 54 SetConsoleCommandShortcutExternAlias(stop_game, "exit"); 56 55 57 56 struct _CoreExport GameStateTreeNode … … 61 60 std::vector<GameStateTreeNode*> children_; 62 61 }; 63 64 SetCommandLineArgument(state, "gui").shortcut("s");65 SetCommandLineSwitch(startWithConsole);66 SetConsoleCommandShortcutExternAlias(stop_game, "exit");67 62 68 63 std::map<std::string, GameState*> Game::allStates_s; … … 132 127 void Game::run() 133 128 { 134 // </EXPORT THIS> 135 this->setStateHierarchy( 136 "root" 137 " graphics" 138 " gui" 139 " standalone" 140 " level" 141 " server" 142 " level" 143 " client" 144 " level" 145 " dedicated" 146 " level" 147 " ioConsole" 148 ); 149 // </EXPORT THIS> 150 151 152 // Always start with the root state 129 // Always start with the ROOT state 153 130 this->requestedStateNodes_.push_back(this->rootStateNode_); 154 131 this->activeStateNode_ = this->rootStateNode_; 155 132 this->loadState(this->rootStateNode_->state_); 156 133 157 // <EXPORT THIS> 158 if (CommandLine::getValue("startWithConsole").getBool()) 159 { 160 // Start the game in the console 161 this->requestState("ioConsole"); 162 } 163 else 164 { 165 // Start in GUI main menu 166 this->requestState("graphics"); 167 this->requestState("gui"); 168 } 169 // </EXPORT THIS> 170 134 // START GAME 171 135 this->gameClock_->capture(); // first delta time should be about 0 seconds 172 136 while (!this->abort_ && !this->activeStates_.empty()) … … 224 188 } 225 189 226 // U nloadall remaining states190 // UNLOAD all remaining states 227 191 while (!this->activeStates_.empty()) 228 192 this->unloadState(this->activeStates_.back()); -
code/branches/gui/src/orxonox/Main.cc
r2844 r2845 48 48 { 49 49 orxonox::Game orxonox(argc, argv); 50 51 orxonox.setStateHierarchy( 52 "root" 53 " graphics" 54 " mainMenu" 55 " standalone" 56 " level" 57 " server" 58 " level" 59 " client" 60 " level" 61 " dedicated" 62 " level" 63 " ioConsole" 64 ); 65 50 66 orxonox.run(); 51 67 } // orxonox gets destroyed right here! -
code/branches/gui/src/orxonox/gamestates/GSGUI.cc
r2844 r2845 41 41 namespace orxonox 42 42 { 43 AddGameState(GSGUI, " gui");43 AddGameState(GSGUI, "mainMenu"); 44 44 45 45 GSGUI::GSGUI(const std::string& name) -
code/branches/gui/src/orxonox/gamestates/GSRoot.cc
r2844 r2845 34 34 #include "core/Clock.h" 35 35 #include "core/Core.h" 36 #include "core/CommandLine.h" 36 37 #include "core/ConsoleCommand.h" 37 38 #include "tools/TimeFactorListener.h" … … 43 44 { 44 45 AddGameState(GSRoot, "root"); 46 SetCommandLineSwitch(startWithConsole); 45 47 46 48 GSRoot::GSRoot(const std::string& name) … … 78 80 CommandExecutor::addConsoleCommandShortcut(this->ccPause_).accessLevel(AccessLevel::Offline); 79 81 } 82 83 // Determine where to start 84 if (CommandLine::getValue("startWithConsole").getBool()) 85 { 86 // Start the game in the console 87 Game::getInstance().requestState("ioConsole"); 88 } 89 else 90 { 91 // Start in GUI main menu 92 Game::getInstance().requestState("graphics"); 93 Game::getInstance().requestState("mainMenu"); 94 } 95 80 96 } 81 97
Note: See TracChangeset
for help on using the changeset viewer.