DarkflameServer/dScripts/NjColeNPC.cpp
EmosewaMC 4fd1467cbf changed loot sources to none
Changed loot sources for some scripts to none so they properly give loot to the player.
2022-04-24 18:40:20 -07:00

60 lines
1.5 KiB
C++

#include "NjColeNPC.h"
#include "MissionComponent.h"
#include "InventoryComponent.h"
void NjColeNPC::OnEmoteReceived(Entity* self, int32_t emote, Entity* target)
{
if (emote != 393)
{
return;
}
auto* inventoryComponent = target->GetComponent<InventoryComponent>();
if (inventoryComponent == nullptr)
{
return;
}
if (!inventoryComponent->IsEquipped(14499) && !inventoryComponent->IsEquipped(16644))
{
return;
}
auto* missionComponent = target->GetComponent<MissionComponent>();
if (missionComponent == nullptr)
{
return;
}
missionComponent->ForceProgressTaskType(1818, 1, 1);
}
void NjColeNPC::OnMissionDialogueOK(Entity* self, Entity* target, int missionID, MissionState missionState)
{
NjNPCMissionSpinjitzuServer::OnMissionDialogueOK(self, target, missionID, missionState);
if (missionID == 1818 && missionState >= MissionState::MISSION_STATE_READY_TO_COMPLETE)
{
auto* missionComponent = target->GetComponent<MissionComponent>();
auto* inventoryComponent = target->GetComponent<InventoryComponent>();
if (missionComponent == nullptr || inventoryComponent == nullptr)
{
return;
}
if (inventoryComponent->GetLotCount(14499) > 0)
{
inventoryComponent->RemoveItem(14499, 1);
}
else
{
return;
}
inventoryComponent->AddItem(16644, 1, eLootSourceType::LOOT_SOURCE_NONE);
}
}