Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/trunk/src/story_entities/game_world_data.h @ 9869

Last change on this file since 9869 was 9869, checked in by bensch, 18 years ago

orxonox/trunk: merged the new_class_id branche back to the trunk.
merged with command:
svn merge https://svn.orxonox.net/orxonox/branches/new_class_id trunk -r9683:HEAD
no conflicts… puh..

File size: 2.2 KB
RevLine 
[6402]1/*!
2 * @file game_world_data.h
3 *  container for all game world data
4 */
5
6#ifndef _GAME_WORLD_DATA_H
7#define _GAME_WORLD_DATA_H
8
9#include "sdlincl.h"
[6404]10#include "data_tank.h"
[6402]11#include "error.h"
[7368]12#include "object_manager.h"
[6402]13
14class Camera;
15class Player;
16class Terrain;
17class WorldEntity;
18
19class GLMenuImageScreen;
20
[7460]21namespace OrxSound {class OggPlayer;}
[7020]22class GameRules;
[6402]23
24
25//! The game world data
26/**
27 * this class is a containter for the data of the GameWorld. It just loads and unloads it
28 * the game start/stop process is not contained here and can be found in the GameWorld class.
29 */
[6404]30class GameWorldData : public DataTank
[6402]31{
[9869]32  ObjectListDeclaration(GameWorldData);
[6402]33  public:
34    GameWorldData();
35    virtual ~GameWorldData();
36
37    virtual ErrorMessage init();
[7370]38    virtual ErrorMessage loadData(const TiXmlElement* root);
[6402]39    virtual ErrorMessage unloadData();
40
[6634]41    /* interface functions */
[7221]42    void setSoundTrack(const std::string& name);
[7020]43    void loadGameRule(const TiXmlElement* root);
[6402]44
[9406]45
[6404]46  protected:
[7370]47    virtual ErrorMessage loadGUI(const TiXmlElement* root);
48    virtual ErrorMessage loadWorldEntities(const TiXmlElement* root);
49    virtual ErrorMessage loadScene(const TiXmlElement* root);
[6402]50
51    virtual ErrorMessage unloadGUI();
52    virtual ErrorMessage unloadWorldEntities();
53    virtual ErrorMessage unloadScene();
54
55  public:
[7368]56    GLMenuImageScreen*            glmis;          //!< The Level-Loader Display
[6402]57
[7368]58    Camera*                       localCamera;    //!< The current camera
59    Player*                       localPlayer;    //!< The player, you fly through the level.
60    WorldEntity*                  sky;            //!< The environmental sky of orxonox
61    Terrain*                      terrain;        //!< The terrain - ground
[6402]62
[7460]63    OrxSound::OggPlayer*          music;          //!< Reference to the SoundEngine's music player (OggPlayer)
[7368]64    ObjectManager*                objectManager;  //!< Reference to the objects manager
[7020]65
[7368]66    GameRules*                    gameRule;       //!< Reference to the game rules of this game
67
[7370]68    std::vector<OM_LIST>          tickLists;      //!< The Lists in the GameWorld that should be ticked.
69    std::vector<OM_LIST>          drawLists;      //!< The Lists in the GameWorld, that should be drawn.
[6402]70};
71
72#endif /* _GAME_WORLD_DATA_H */
73
Note: See TracBrowser for help on using the repository browser.