DarkflameServer/dScripts/FvNinjaGuard.cpp
2021-12-05 18:54:36 +01:00

55 lines
1.1 KiB
C++

#include "FvNinjaGuard.h"
#include "GameMessages.h"
#include "MissionComponent.h"
void FvNinjaGuard::OnStartup(Entity* self)
{
if (self->GetLOT() == 7412)
{
m_LeftGuard = self->GetObjectID();
}
else if (self->GetLOT() == 11128)
{
m_RightGuard = self->GetObjectID();
}
}
void FvNinjaGuard::OnEmoteReceived(Entity* self, const int32_t emote, Entity* target)
{
if (emote != 392)
{
GameMessages::SendPlayAnimation(self, u"no");
return;
}
GameMessages::SendPlayAnimation(self, u"scared");
auto* missionComponent = target->GetComponent<MissionComponent>();
if (missionComponent != nullptr && missionComponent->HasMission(737))
{
missionComponent->ForceProgressTaskType(737, 5, 1, false);
}
if (self->GetLOT() == 7412)
{
auto* rightGuard = EntityManager::Instance()->GetEntity(m_RightGuard);
if (rightGuard != nullptr)
{
GameMessages::SendPlayAnimation(rightGuard, u"laugh_rt");
}
}
else if (self->GetLOT() == 11128)
{
auto* leftGuard = EntityManager::Instance()->GetEntity(m_LeftGuard);
if (leftGuard != nullptr)
{
GameMessages::SendPlayAnimation(leftGuard, u"laugh_lt");
}
}
}