DarkflameServer/dScripts/ai/FV/FvFreeGfNinjas.cpp

44 lines
1.4 KiB
C++
Raw Normal View History

#include "FvFreeGfNinjas.h"
#include "Character.h"
#include "MissionComponent.h"
#include "eMissionState.h"
void FvFreeGfNinjas::OnMissionDialogueOK(Entity* self, Entity* target, int missionID, eMissionState missionState) {
if (missionID == 705 && missionState == eMissionState::AVAILABLE) {
2023-06-07 07:23:50 +00:00
auto missionComponent = target->GetComponent<MissionComponent>();
2022-07-28 13:39:57 +00:00
if (missionComponent == nullptr)
return;
2022-07-28 13:39:57 +00:00
missionComponent->AcceptMission(701);
missionComponent->AcceptMission(702);
missionComponent->AcceptMission(703);
missionComponent->AcceptMission(704);
2022-07-28 13:39:57 +00:00
auto* character = target->GetCharacter();
if (character != nullptr)
character->SetPlayerFlag(68, true);
} else if (missionID == 786) {
auto* character = target->GetCharacter();
if (character != nullptr)
character->SetPlayerFlag(81, true);
}
}
2022-07-28 13:39:57 +00:00
void FvFreeGfNinjas::OnUse(Entity* self, Entity* user) {
// To allow player who already have the mission to progress.
2023-06-07 07:23:50 +00:00
auto missionComponent = user->GetComponent<MissionComponent>();
2022-07-28 13:39:57 +00:00
if (missionComponent == nullptr)
return;
if (missionComponent->GetMissionState(705) == eMissionState::ACTIVE) {
2022-07-28 13:39:57 +00:00
auto* character = user->GetCharacter();
if (character != nullptr)
character->SetPlayerFlag(68, true);
2022-07-28 13:39:57 +00:00
missionComponent->AcceptMission(701, true);
missionComponent->AcceptMission(702, true);
missionComponent->AcceptMission(703, true);
missionComponent->AcceptMission(704, true);
}
}