Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/osX/src/story_entities/campaign_data.h @ 6996

Last change on this file since 6996 was 6874, checked in by patrick, 19 years ago

trunk: the menu control better implemented

File size: 1.1 KB
Line 
1/*!
2 * @file campaign_data.h
3 * definition of the campaign data tank
4 */
5
6#ifndef _CAMPAIGN_DATA_H
7#define _CAMPAIGN_DATA_H
8
9
10#include "data_tank.h"
11#include <list>
12
13class StoryEntity;
14
15//! A class that contains the data of the Campaign object
16class CampaignData : public DataTank
17{
18
19  public:
20    CampaignData(const TiXmlElement* root);
21    virtual ~CampaignData();
22
23    virtual void loadParams(const TiXmlElement* root);
24
25    void loadData(const TiXmlElement* root);
26
27    void addStoryEntity(StoryEntity* se);
28
29    StoryEntity* getFirstLevel();
30    StoryEntity* getNextLevel();
31    StoryEntity* getLevel(int storyID);
32
33    /** @param storyEntity the current entity to be set */
34    inline void setCurrentEntity(StoryEntity* storyEntity) { this->currentEntity = storyEntity; }
35    /** @return the current StoryEntity played*/
36    inline StoryEntity* getCurrentEntity() { return this->currentEntity; }
37
38
39  private:
40    StoryEntity*                  currentEntity;                //!< reference to the currently used StoryEntity
41    std::list<StoryEntity*>       storyEntities;                //!< list of story entities
42};
43
44
45#endif /* _CAMPAIGN_DATA_H */
46
Note: See TracBrowser for help on using the repository browser.