Orxonox  0.0.5 Codename: Arcturus
GSLevel.h
Go to the documentation of this file.
1 /*
2  * ORXONOX - the hottest 3D action shooter ever to exist
3  * > www.orxonox.net <
4  *
5  *
6  * License notice:
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License
10  * as published by the Free Software Foundation; either version 2
11  * of the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  *
22  * Author:
23  * Reto Grieder
24  * Co-authors:
25  * Benjamin Knecht
26  *
27  */
28 
29 #ifndef _GSLevel_H__
30 #define _GSLevel_H__
31 
32 #include "OrxonoxPrereqs.h"
33 
34 #include <string>
35 #include <set>
36 #include "core/GameState.h"
37 
38 namespace orxonox
39 {
41  {
42  public:
43  GSLevel(const GameStateInfo& info);
44  ~GSLevel();
45 
46  virtual void activate() override;
47  virtual void deactivate() override;
48  virtual void update(const Clock& time) override;
49 
50  static void startMainMenu(void);
51  static void changeGame(const std::string& level);
52 
53  void reloadLevel();
54 
55  private:
56  void loadLevel();
57  void unloadLevel();
58  void unloadLevelAsClient();
59 
60  void prepareObjectTracking();
61  void performObjectTracking();
62 
66 
68  std::set<BaseObject*> staticObjects_;
70  };
71 }
72 
73 #endif /* _GSLevel_H__ */
InputState * gameInputState_
input state for normal ingame playing
Definition: GSLevel.h:63
::std::string string
Definition: gtest-port.h:756
InputState * guiKeysOnlyInputState_
input state if we only need the keys to use the GUI
Definition: GSLevel.h:65
Helper object required before GameStates are being constructed.
Definition: Game.h:66
Die Wagnis Klasse hat die folgenden Aufgaben:
Definition: ApplicationPaths.cc:66
Definition: GSLevel.h:40
Shared library macros, enums, constants and forward declarations for the orxonox library ...
Definition of GameState class.
bool bShowIngameGUI_
Definition: GSLevel.h:69
#define _OrxonoxExport
Definition: OrxonoxPrereqs.h:60
An implementation of a tree to manage game states.
Definition: GameState.h:61
InputState * guiMouseOnlyInputState_
input state if we only need the mouse to use the GUI
Definition: GSLevel.h:64
InputStates allow you to customise the input event targets at runtime.
Definition: InputState.h:83
Simple real time clock based on Ogre::Timer.
Definition: Clock.h:57
std::set< BaseObject * > staticObjects_
Definition: GSLevel.h:68
XMLFile * startFile_
Definition: GSLevel.h:67
Definition: XMLFile.h:44