1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-28 20:27:46 +00:00
sapphire/src/world/Action/EventAction.h
2020-02-04 21:59:14 +09:00

38 lines
730 B
C++

#ifndef _EVENTACTION_H_
#define _EVENTACTION_H_
#include <Common.h>
#include "ForwardsZone.h"
#include "Action.h"
namespace Sapphire::World::Action
{
class EventAction : public Action
{
public:
virtual ~EventAction();
EventAction( Entity::CharaPtr pActor, uint32_t eventId, uint16_t action,
ActionCallback finishRef, ActionCallback interruptRef, uint64_t additional, FrameworkPtr pFw );
void start() override;
void execute() override;
void interrupt( Common::ActionInterruptType type = Common::ActionInterruptType::RegularInterrupt ) override;
private:
uint32_t m_eventId;
uint64_t m_additional;
ActionCallback m_onActionFinishClb;
ActionCallback m_onActionInterruptClb;
};
}
#endif