Implements creature switching as turn choice.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2019-12-14 12:15:30 +01:00
parent 2ee181bca7
commit c25d7b865e
8 changed files with 97 additions and 1 deletions

View File

@@ -0,0 +1,21 @@
#ifndef CREATURELIB_SWITCHTURNCHOICE_HPP
#define CREATURELIB_SWITCHTURNCHOICE_HPP
#include "BaseTurnChoice.hpp"
namespace CreatureLib::Battling {
class SwitchTurnChoice : public BaseTurnChoice {
Creature* _newCreature;
public:
SwitchTurnChoice(Creature* user, Creature* newCreature) : BaseTurnChoice(user), _newCreature(newCreature) {}
TurnChoiceKind GetKind() const final { return TurnChoiceKind::Switch; }
inline Creature* GetNewCreature() const { return _newCreature; }
protected:
void GetActiveScripts(std::vector<ScriptWrapper>& scripts) override { GetUser()->GetActiveScripts(scripts); }
};
}
#endif // CREATURELIB_SWITCHTURNCHOICE_HPP