Load&save gothik's door state on instancedata load&save
Partial fix for issue #1244 --HG-- branch : trunk
This commit is contained in:
@@ -128,6 +128,8 @@ struct instance_naxxramas : public InstanceData
|
|||||||
uint64 uiKelthuzadTrigger;
|
uint64 uiKelthuzadTrigger;
|
||||||
uint64 uiPortals[4];
|
uint64 uiPortals[4];
|
||||||
|
|
||||||
|
GOState gothikDoorState;
|
||||||
|
|
||||||
time_t minHorsemenDiedTime;
|
time_t minHorsemenDiedTime;
|
||||||
time_t maxHorsemenDiedTime;
|
time_t maxHorsemenDiedTime;
|
||||||
|
|
||||||
@@ -171,7 +173,9 @@ struct instance_naxxramas : public InstanceData
|
|||||||
pSapphiron->AI()->DoAction(DATA_SAPPHIRON_BIRTH);
|
pSapphiron->AI()->DoAction(DATA_SAPPHIRON_BIRTH);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case GO_GOTHIK_GATE: GothikGateGUID = add ? pGo->GetGUID() : 0; break;
|
case GO_GOTHIK_GATE:
|
||||||
|
GothikGateGUID = add ? pGo->GetGUID() : 0;
|
||||||
|
break;
|
||||||
case GO_HORSEMEN_CHEST: HorsemenChestGUID = add ? pGo->GetGUID() : 0; break;
|
case GO_HORSEMEN_CHEST: HorsemenChestGUID = add ? pGo->GetGUID() : 0; break;
|
||||||
case GO_HORSEMEN_CHEST_HERO: HorsemenChestGUID = add ? pGo->GetGUID() : 0; break;
|
case GO_HORSEMEN_CHEST_HERO: HorsemenChestGUID = add ? pGo->GetGUID() : 0; break;
|
||||||
case GO_KELTHUZAD_PORTAL01: uiPortals[0] = pGo->GetGUID(); break;
|
case GO_KELTHUZAD_PORTAL01: uiPortals[0] = pGo->GetGUID(); break;
|
||||||
@@ -194,6 +198,7 @@ struct instance_naxxramas : public InstanceData
|
|||||||
case DATA_GOTHIK_GATE:
|
case DATA_GOTHIK_GATE:
|
||||||
if (GameObject *pGothikGate = instance->GetGameObject(GothikGateGUID))
|
if (GameObject *pGothikGate = instance->GetGameObject(GothikGateGUID))
|
||||||
pGothikGate->SetGoState(GOState(value));
|
pGothikGate->SetGoState(GOState(value));
|
||||||
|
gothikDoorState = GOState(value);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DATA_HORSEMEN0:
|
case DATA_HORSEMEN0:
|
||||||
@@ -307,6 +312,21 @@ struct instance_naxxramas : public InstanceData
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string GetSaveData()
|
||||||
|
{
|
||||||
|
std::ostringstream saveStream;
|
||||||
|
saveStream << GetBossSaveData() << gothikDoorState;
|
||||||
|
return saveStream.str();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Load(const char * data)
|
||||||
|
{
|
||||||
|
std::istringstream loadStream(LoadBossState(data));
|
||||||
|
uint32 buff;
|
||||||
|
loadStream >> buff;
|
||||||
|
gothikDoorState = GOState(buff);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
InstanceData* GetInstanceData_instance_naxxramas(Map* pMap)
|
InstanceData* GetInstanceData_instance_naxxramas(Map* pMap)
|
||||||
|
|||||||
Reference in New Issue
Block a user