#include "TurnHandler.hpp" #include "../../Core/Exceptions/NotImplementedException.hpp" void CreatureLib::Battling::TurnHandler::RunTurn(CreatureLib::Battling::ChoiceQueue &queue) { while (queue.HasNext()){ ExecuteChoice(queue.Dequeue()); } } void CreatureLib::Battling::TurnHandler::ExecuteChoice(const CreatureLib::Battling::BaseTurnChoice *choice) { switch (choice->GetKind()){ case TurnChoiceKind::Pass: return; case TurnChoiceKind::Attack: return ExecuteAttackChoice(static_cast(choice)); case TurnChoiceKind::Item: case TurnChoiceKind::Switch: case TurnChoiceKind::RunAway: throw NotImplementedException(); } } void CreatureLib::Battling::TurnHandler::ExecuteAttackChoice(const CreatureLib::Battling::AttackTurnChoice *choice) { }