#pragma once #include "game/BaseGame.h" #include "misc/Time.h" #include "ServerWorld.h" namespace td { namespace server { class Server; class ServerGame : public game::Game{ private: Server* m_Server; ServerWorld m_ServerWorld; utils::Timer m_GoldMineTimer{1000, std::bind(&ServerGame::updateGoldMines, this)}; public: ServerGame(Server* server); ~ServerGame(){} virtual void tick(std::uint64_t delta); void startGame(); private: void balanceTeams(); void updateGoldMines(); }; } // namespace game } // namespace td