Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 6978 was 6827, checked in by bensch, 19 years ago

trunk: Music should be loadable

File size: 1.8 KB
Line 
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"
10#include "data_tank.h"
11#include "error.h"
12
13
14class Camera;
15class Player;
16class Terrain;
17class WorldEntity;
18class ObjectManager;
19
20class GLMenuImageScreen;
21
22class TiXmlElement;
23class OggPlayer;
24
25
26//! The game world data
27/**
28 * this class is a containter for the data of the GameWorld. It just loads and unloads it
29 * the game start/stop process is not contained here and can be found in the GameWorld class.
30 */
31class GameWorldData : public DataTank
32{
33
34  public:
35    GameWorldData();
36    virtual ~GameWorldData();
37
38    virtual ErrorMessage init();
39    virtual ErrorMessage loadData(TiXmlElement* root);
40    virtual ErrorMessage unloadData();
41
42    /* interface functions */
43    void setSoundTrack(const char* name);
44
45  protected:
46    virtual ErrorMessage loadGUI(TiXmlElement* root);
47    virtual ErrorMessage loadWorldEntities(TiXmlElement* root);
48    virtual ErrorMessage loadScene(TiXmlElement* root);
49
50    virtual ErrorMessage unloadGUI();
51    virtual ErrorMessage unloadWorldEntities();
52    virtual ErrorMessage unloadScene();
53
54  public:
55    GLMenuImageScreen*  glmis;                       //!< The Level-Loader Display
56
57    Camera*             localCamera;                 //!< The current camera
58    Player*             localPlayer;                 //!< The player, you fly through the level.
59    WorldEntity*        sky;                         //!< The environmental sky of orxonox
60    Terrain*            terrain;                     //!< The terrain - ground
61
62    OggPlayer*          music;                       //!< Reference to the SoundEngine's music player (OggPlayer)
63    ObjectManager*      objectManager;               //!< Reference to the objects manager
64};
65
66#endif /* _GAME_WORLD_DATA_H */
67
Note: See TracBrowser for help on using the repository browser.