Hello, I have this Expansion code in my init.c file:
#ifdef EXPANSIONMODQUESTS
override void Expansion_OnQuestStart(ExpansionQuest quest)
{
switch (quest.GetQuestConfig().GetID())
{
case 4:
{
SpawnQuestHolder_4000(quest);
}
break;
case 5:
{
if (!ExpansionQuestModule.GetModuleInstance().IsOtherQuestInstanceActive(4))
ExpansionQuestModule.GetModuleInstance().DeleteQuestHolder(4000, ExpansionQuestNPCType.AI);
}
break;
}
}
override void Expansion_OnQuestCompletion(ExpansionQuest quest)
{
switch (quest.GetQuestConfig().GetID())
{
case 5:
{
if (!ExpansionQuestModule.GetModuleInstance().IsOtherQuestInstanceActive(4))
ExpansionQuestModule.GetModuleInstance().DeleteQuestHolder(4000, ExpansionQuestNPCType.AI);
}
break;
}
}
override void Expansion_OnQuestCancel(ExpansionQuest quest)
{
if (!quest || !ExpansionQuestModule.GetModuleInstance())
return;
switch (quest.GetQuestConfig().GetID())
{
case 5:
{
SpawnQuestHolder_4000(quest);
}
break;
}
}
protected void SpawnQuestHolder_4000(ExpansionQuest quest)
{
if (!quest || !ExpansionQuestModule || !ExpansionQuestModule.GetModuleInstance())
return;
if (ExpansionQuestModule.GetModuleInstance().TempQuestHolderExists(4000))
return;
ExpansionTempQuestHolder questHolder = new ExpansionTempQuestHolder(4000, "ExpansionQuestNPCAIFrida", "Marina Sidorova", "There is nothing to do here for you...");
if (!questHolder)
return;
questHolder.SetNPCEmoteID(EmoteConstants.ID_EMOTE_SITA);
questHolder.SetLoadoutName("SurvivorLoadout");
ExpansionTempQuestHolderPosition questHolderPos = new ExpansionTempQuestHolderPosition("8548.216797 301.957672 7561.185547", "153.331528 0 -0");
ExpansionQuestModule.GetModuleInstance().SpawnQuestHolder(questHolder, questHolderPos);
}
#endif
and it throws this error:
0:05:26 SCRIPT (E): NULL pointer to instance
Class: 'ExpansionQuestModule'
Function: 'TempQuestHolderExists'
Stack trace:
DayZExpansion/Quests/Scripts/4_World/dayzexpansion_quests\systems\quests\expansionquestmodule.c:5276
$CurrentDir:mpmissions/dayz.enoch/init.c:88
$CurrentDir:mpmissions/dayz.enoch/init.c:42
DayZExpansion/Quests/Scripts/4_World/dayzexpansion_quests\systems\quests\expansionquest.c:372
DayZExpansion/Quests/Scripts/4_World/dayzexpansion_quests\systems\quests\expansionquestmodule.c:1550
DayZExpansion/Quests/Scripts/4_World/dayzexpansion_quests\systems\quests\expansionquestmodule.c:1441
DayZExpansion/Core/Scripts/3_Game/dayzexpansion_core\expansionrpcmanager.c:541
DayZExpansion/Core/Scripts/3_Game/dayzexpansion_core\expansionrpcmanager.c:506
DayZExpansion/Core/Scripts/3_Game/dayzexpansion_core\dayzgame.c:293
can you help me with that? The programmer from Expansion Discord helped me with the lines
if (!quest || !ExpansionQuestModule || !ExpansionQuestModule.GetModuleInstance())
return;
if (ExpansionQuestModule.GetModuleInstance().TempQuestHolderExists(4000))
return;
but it is still not working.