DarkflameServer/dScripts/NtOverbuildServer.cpp

31 lines
1.2 KiB
C++
Raw Normal View History

#include "NtOverbuildServer.h"
#include "EntityManager.h"
void NtOverbuildServer::SetVariables(Entity *self) {
self->SetVar<float_t>(m_SpyProximityVariable, 30.0f);
self->SetVar<SpyData>(m_SpyDataVariable, {
NT_FACTION_SPY_OVERBUILD, 13891, 1320
});
self->SetVar<std::vector<SpyDialogue>>(m_SpyDialogueTableVariable, {
{ "OVERBUILD_NT_CONVO_1", 0 },
{ "OVERBUILD_NT_CONVO_2", 1 },
{ "OVERBUILD_NT_CONVO_3", 0 },
{ "OVERBUILD_NT_CONVO_4", 1 },
{ "OVERBUILD_NT_CONVO_5", 0 },
{ "OVERBUILD_NT_CONVO_6", 1 },
{ "OVERBUILD_NT_CONVO_7", 0 },
});
// Find the second object Dr. Overbuild interacts with
LWOOBJID otherConvoObjectID = LWOOBJID_EMPTY;
for (auto* otherConvoObject : EntityManager::Instance()->GetEntitiesInGroup(GeneralUtils::UTF16ToWTF8(self->GetVar<std::u16string>(m_OtherEntitiesGroupVariable)))) {
otherConvoObjectID = otherConvoObject->GetObjectID();
break;
}
// If there's an alternating conversation, indices should be provided using the conversationID variables
self->SetVar<std::vector<LWOOBJID>>(m_SpyCinematicObjectsVariable, { self->GetObjectID(), otherConvoObjectID });
}