CreatureLib/src/Battling/EventHooks/Events/HealEvent.hpp

22 lines
825 B
C++

#ifndef CREATURELIB_HEALEVENT_HPP
#define CREATURELIB_HEALEVENT_HPP
#include "EventData.hpp"
namespace CreatureLib::Battling {
class HealEvent final : public EventData {
ArbUt::BorrowedPtr<Creature> _creature;
u32 _originalHealth;
u32 _newHealth;
public:
HealEvent(ArbUt::BorrowedPtr<Creature> c, u32 oHealth, u32 newHealth) noexcept
: _creature(c), _originalHealth(oHealth), _newHealth(newHealth) {}
EventDataKind GetKind() const noexcept override { return EventDataKind ::Heal; }
const ArbUt::BorrowedPtr<Creature>& GetCreature() const noexcept { return _creature; }
u32 GetOriginalHealth() const noexcept { return _originalHealth; }
u32 GetNewHealth() const noexcept { return _newHealth; }
};
}
#endif // CREATURELIB_HEALEVENT_HPP