12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #ifndef __CGAMEINFO_H__
- #define __CGAMEINFO_H__
- #include "../global.h"
- #include "../lib/ConstTransitivePtr.h"
- /*
- * CGameInfo.h, part of VCMI engine
- *
- * Authors: listed in file AUTHORS in main folder
- *
- * License: GNU General Public License v2.0 or later
- * Full text of license available in license.txt file, in main folder
- *
- */
- class CMapHandler;
- class CArtHandler;
- class CHeroHandler;
- class CCreatureHandler;
- class CSpellHandler;
- class CBuildingHandler;
- class CObjectHandler;
- class CSoundHandler;
- class CMusicHandler;
- class CDefObjInfoHandler;
- class CTownHandler;
- class CGeneralTextHandler;
- class CConsoleHandler;
- class CCursorHandler;
- class CGameState;
- class IMainVideoPlayer;
- //a class for non-mechanical client GUI classes
- class CClientState
- {
- public:
- CSoundHandler * soundh;
- CMusicHandler * musich;
- CConsoleHandler * consoleh;
- CCursorHandler * curh;
- IMainVideoPlayer * videoh;
- };
- struct Mapa;
- /// CGameInfo class
- /// for allowing different functions for accessing game informations
- class CGameInfo
- {
- ConstTransitivePtr<CGameState> state; //don't touch it in client's code
- public:
- ConstTransitivePtr<CArtHandler> arth;
- ConstTransitivePtr<CHeroHandler> heroh;
- ConstTransitivePtr<CCreatureHandler> creh;
- ConstTransitivePtr<CSpellHandler> spellh;
- ConstTransitivePtr<CObjectHandler> objh;
- ConstTransitivePtr<CDefObjInfoHandler> dobjinfo;
- CGeneralTextHandler * generaltexth;
- CMapHandler * mh;
- ConstTransitivePtr<CBuildingHandler> buildh;
- CTownHandler * townh;
- //CTownHandler * townh;
- void setFromLib();
- friend class CClient;
- friend void initVillagesCapitols(Mapa * map);
- CGameInfo();
- };
- //
- // public:
- //
- // ConstTransitivePtr<CGeneralTextHandler> generaltexth;
- #endif // __CGAMEINFO_H__
|