2018-01-09 23:50:54 +01:00
|
|
|
#include "EventHandler.h"
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
Core::Event::EventHandler::EventHandler( Entity::Player* pOwner, uint64_t actorId, uint32_t eventId,
|
|
|
|
EventType eventType, uint32_t eventParam ) :
|
|
|
|
m_pOwner( pOwner ),
|
|
|
|
m_actorId( actorId ),
|
|
|
|
m_eventId( eventId ),
|
|
|
|
m_eventType( eventType ),
|
|
|
|
m_playedScene( false )
|
2018-01-09 23:50:54 +01:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
m_entryId = static_cast< uint16_t >( eventId );
|
|
|
|
m_type = static_cast< uint16_t >( eventId >> 16 );
|
|
|
|
m_eventParam = eventParam;
|
|
|
|
m_returnCallback = nullptr;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
uint64_t Core::Event::EventHandler::getActorId() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_actorId;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
uint32_t Core::Event::EventHandler::getId() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_eventId;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
uint8_t Core::Event::EventHandler::getEventType() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_eventType;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
uint16_t Core::Event::EventHandler::getType() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_type;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
uint16_t Core::Event::EventHandler::getEntryId() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_entryId;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
2018-01-14 23:54:26 +01:00
|
|
|
uint32_t Core::Event::EventHandler::getEventParam() const
|
2018-01-09 23:50:54 +01:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_eventParam;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
Core::Event::EventHandler::SceneReturnCallback Core::Event::EventHandler::getEventReturnCallback() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_returnCallback;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
void Core::Event::EventHandler::setEventReturnCallback( SceneReturnCallback callback )
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
m_returnCallback = callback;
|
2018-03-20 22:08:25 +11:00
|
|
|
}
|
|
|
|
|
|
|
|
Core::Event::EventHandler::SceneChainCallback Core::Event::EventHandler::getSceneChainCallback() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_chainCallback;
|
2018-03-20 22:08:25 +11:00
|
|
|
}
|
|
|
|
|
|
|
|
void Core::Event::EventHandler::setSceneChainCallback( Core::Event::EventHandler::SceneChainCallback callback )
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
m_chainCallback = callback;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
bool Core::Event::EventHandler::hasPlayedScene() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_playedScene;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
void Core::Event::EventHandler::setPlayedScene( bool playedScene )
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
m_playedScene = playedScene;
|
2018-01-09 23:50:54 +01:00
|
|
|
}
|
2018-01-14 23:54:26 +01:00
|
|
|
|
|
|
|
bool Core::Event::EventHandler::hasNestedEvent() const
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
return m_pNestedEvent != nullptr;
|
2018-01-14 23:54:26 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
void Core::Event::EventHandler::removeNestedEvent()
|
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
m_pNestedEvent.reset();
|
2018-01-14 23:54:26 +01:00
|
|
|
}
|
2018-01-28 00:30:16 +01:00
|
|
|
|