#pragma once
#include
#include |
namespace td {
namespace sim {
class CommandApply : public protocol::CommandHandler {
private:
const game::World& m_World;
WorldSnapshot& m_Snapshot;
public:
CommandApply(const game::World& a_World, WorldSnapshot& a_Snapshot);
virtual void Handle(const protocol::commands::EndCommand& a_End) override;
virtual void Handle(const protocol::commands::PlaceTowerCommand& a_PlaceTower) override;
virtual void Handle(const protocol::commands::PlayerJoinCommand& a_PlayerJoin) override;
virtual void Handle(const protocol::commands::SpawnTroopCommand& a_SpawnTroop) override;
virtual void Handle(const protocol::commands::TeamChangeCommand& a_TeamChange) override;
virtual void Handle(const protocol::commands::UpgradeTowerCommand& a_UpgradeTower) override;
virtual void Handle(const protocol::commands::UseItemCommand& a_UseItem) override;
};
} // namespace sim
} // namespace td
|