Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 10388 was 10379, checked in by patrick, 18 years ago

merged branche camera to trunk. resolved many conflicts as in the other projects too

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
[10379]58
[7368]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.