Load&save gothik's door state on instancedata load&save

Partial fix for issue #1244

--HG--
branch : trunk
This commit is contained in:
Tartalo
2010-06-26 20:11:34 +02:00
parent ce94851015
commit 3614f7b089
@@ -128,6 +128,8 @@ struct instance_naxxramas : public InstanceData
uint64 uiKelthuzadTrigger;
uint64 uiPortals[4];
GOState gothikDoorState;
time_t minHorsemenDiedTime;
time_t maxHorsemenDiedTime;
@@ -171,7 +173,9 @@ struct instance_naxxramas : public InstanceData
pSapphiron->AI()->DoAction(DATA_SAPPHIRON_BIRTH);
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_HERO: HorsemenChestGUID = add ? pGo->GetGUID() : 0; break;
case GO_KELTHUZAD_PORTAL01: uiPortals[0] = pGo->GetGUID(); break;
@@ -194,6 +198,7 @@ struct instance_naxxramas : public InstanceData
case DATA_GOTHIK_GATE:
if (GameObject *pGothikGate = instance->GetGameObject(GothikGateGUID))
pGothikGate->SetGoState(GOState(value));
gothikDoorState = GOState(value);
break;
case DATA_HORSEMEN0:
@@ -307,6 +312,21 @@ struct instance_naxxramas : public InstanceData
}
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)