Files
CreatureLib/src/Battling/EventHooks/Events/ChangeSpeciesEvent.hpp
Deukhoofd 64b08d4ff0
All checks were successful
continuous-integration/drone/push Build is passing
Cleaned up Events, added events on species and variant changes.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 13:52:22 +02:00

23 lines
1004 B
C++

#ifndef CREATURELIB_CHANGESPECIESEVENT_HPP
#define CREATURELIB_CHANGESPECIESEVENT_HPP
#include "EventData.hpp"
namespace CreatureLib::Battling {
class ChangeSpeciesEvent : public EventData {
const ArbUt::BorrowedPtr<Creature> _creature;
const ArbUt::BorrowedPtr<const CreatureLib::Library::CreatureSpecies> _newSpecies;
public:
ChangeSpeciesEvent(const ArbUt::BorrowedPtr<Creature>& creature,
const ArbUt::BorrowedPtr<const CreatureLib::Library::CreatureSpecies>& species) noexcept
: _creature(creature), _newSpecies(species) {}
EventDataKind GetKind() const noexcept override { return EventDataKind ::ChangeSpecies; }
const ArbUt::BorrowedPtr<Creature>& GetCreature() const noexcept { return _creature; }
const ArbUt::BorrowedPtr<const CreatureLib::Library::CreatureSpecies>& GetNewSpecies() const noexcept {
return _newSpecies;
}
};
}
#endif // CREATURELIB_CHANGESPECIESEVENT_HPP