Files
Tower-Defense2/include/td/simulation/CommandApply.h

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