28 lines
978 B
C++
28 lines
978 B
C++
#pragma once
|
|
|
|
#include <td/game/World.h>
|
|
#include <td/protocol/command/Commands.h>
|
|
|
|
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
|