Cpp:Building A Simple Tile Engine:Part 7
From GPWiki
The wiki is now hosted by GameDev.NET at wiki.gamedev.net. All gpwiki.org content has been moved to the new server. However, the GPWiki forums are still active! Come say hello. [edit] Part 7: Creating the game manager
This page is far from complete, go ahead and write some more!
You can extend this page by editing it. [edit] File: Game.h#ifndef GAME_H #define GAME_H #include "Interfaces.h" #include "TileManager.h" #include "UnitManager.h" /** Game class */ class CGame: public IBaseEntity { private: CTileManager m_oTileManager; CUnitManager m_OUnitManager; public: CGame(); virtual ~CGame(); virtual void VThink ( const int& iElapsedTime ); virtual void VRender ( SDL_Surface* pDestSurface ); virtual bool VLoad ( TiXmlElement* pXMLData ); virtual TiXmlElement VGetSaveData(); CTileManager* GetTileManager() { return &m_oTileManager; } CUnitManager* GetUnitManager() { return &m_OUnitManager; } }; #endif // GAME_H [edit] File: Game.cpp#include "Game.h" CGame::CGame() { } CGame::~CGame() { } void CGame::VThink( const int& iElapsedTime ) { m_oTileManager.VThink( iElapsedTime ); m_OUnitManager.VThink( iElapsedTime ); } void CGame::VRender( SDL_Surface* pDestSurface ) { m_oTileManager.VRender( pDestSurface ); m_OUnitManager.VRender( pDestSurface ); } bool CGame::VLoad( TiXmlElement* pXMLData ) { if ( m_oTileManager.VLoad( pXMLData->FirstChildElement( "tiles" ) ) == false ) return false; if ( m_OUnitManager.VLoad( pXMLData->FirstChildElement( "units" ) ) == false ) return false; return true; } TiXmlElement CGame::VGetSaveData() { TiXmlElement GameElm( "map" ); GameElm.InsertEndChild( m_oTileManager.VGetSaveData() ); GameElm.InsertEndChild( m_OUnitManager.VGetSaveData() ); return GameElm; } Proceed to Part 8: Putting it all together
|


