Script/Ulduar:
- Fix instance data loading from DB - Return correct guid for GetData(TYPE_HODIR) Thanks to Socolin for reporting the errors --HG-- branch : trunk
This commit is contained in:
@@ -238,47 +238,46 @@ public:
|
|||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case TYPE_LEVIATHAN:
|
case TYPE_LEVIATHAN:
|
||||||
if (state == IN_PROGRESS)
|
if (state == IN_PROGRESS)
|
||||||
{
|
for (uint8 uiI = 0; uiI < 7; ++uiI)
|
||||||
for (uint8 uiI = 0; uiI < 7; ++uiI)
|
HandleGameObject(uiLeviathanDoor[uiI],false);
|
||||||
HandleGameObject(uiLeviathanDoor[uiI],false);
|
else
|
||||||
}
|
for (uint8 uiI = 0; uiI < 7; ++uiI)
|
||||||
else
|
HandleGameObject(uiLeviathanDoor[uiI],true);
|
||||||
{
|
break;
|
||||||
for (uint8 uiI = 0; uiI < 7; ++uiI)
|
case TYPE_IGNIS:
|
||||||
HandleGameObject(uiLeviathanDoor[uiI],true);
|
case TYPE_RAZORSCALE:
|
||||||
}
|
case TYPE_XT002:
|
||||||
break;
|
case TYPE_ASSEMBLY:
|
||||||
case TYPE_IGNIS:
|
case TYPE_AURIAYA:
|
||||||
case TYPE_RAZORSCALE:
|
case TYPE_MIMIRON:
|
||||||
case TYPE_XT002:
|
case TYPE_VEZAX:
|
||||||
case TYPE_ASSEMBLY:
|
case TYPE_YOGGSARON:
|
||||||
case TYPE_AURIAYA:
|
break;
|
||||||
case TYPE_MIMIRON:
|
case TYPE_KOLOGARN:
|
||||||
case TYPE_VEZAX:
|
if (state == DONE)
|
||||||
case TYPE_YOGGSARON:
|
if (GameObject* go = instance->GetGameObject(uiKologarnChestGUID))
|
||||||
break;
|
go->SetRespawnTime(go->GetRespawnDelay());
|
||||||
case TYPE_KOLOGARN:
|
break;
|
||||||
if (state == DONE)
|
case TYPE_HODIR:
|
||||||
if (GameObject* go = instance->GetGameObject(uiKologarnChestGUID))
|
if (state == DONE)
|
||||||
go->SetRespawnTime(go->GetRespawnDelay());
|
if (GameObject* go = instance->GetGameObject(uiHodirChestGUID))
|
||||||
break;
|
go->SetRespawnTime(go->GetRespawnDelay());
|
||||||
case TYPE_HODIR:
|
break;
|
||||||
if (state == DONE)
|
case TYPE_THORIM:
|
||||||
if (GameObject* go = instance->GetGameObject(uiHodirChestGUID))
|
if (state == DONE)
|
||||||
go->SetRespawnTime(go->GetRespawnDelay());
|
if (GameObject* go = instance->GetGameObject(uiThorimChestGUID))
|
||||||
break;
|
go->SetRespawnTime(go->GetRespawnDelay());
|
||||||
case TYPE_THORIM:
|
break;
|
||||||
if (state == DONE)
|
case TYPE_FREYA:
|
||||||
if (GameObject* go = instance->GetGameObject(uiThorimChestGUID))
|
if (state == DONE)
|
||||||
go->SetRespawnTime(go->GetRespawnDelay());
|
if (GameObject* go = instance->GetGameObject(uiFreyaChestGUID))
|
||||||
break;
|
go->SetRespawnTime(go->GetRespawnDelay());
|
||||||
case TYPE_FREYA:
|
break;
|
||||||
if (state == DONE)
|
case TYPE_COLOSSUS:
|
||||||
if (GameObject* go = instance->GetGameObject(uiFreyaChestGUID))
|
SetData(type, state);
|
||||||
go->SetRespawnTime(go->GetRespawnDelay());
|
break;
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@@ -315,7 +314,7 @@ public:
|
|||||||
case TYPE_KOLOGARN: return uiKologarnGUID;
|
case TYPE_KOLOGARN: return uiKologarnGUID;
|
||||||
case TYPE_AURIAYA: return uiAuriayaGUID;
|
case TYPE_AURIAYA: return uiAuriayaGUID;
|
||||||
case TYPE_MIMIRON: return uiMimironGUID;
|
case TYPE_MIMIRON: return uiMimironGUID;
|
||||||
case TYPE_HODIR: return uiMimironGUID;
|
case TYPE_HODIR: return uiHodirGUID;
|
||||||
case TYPE_THORIM: return uiThorimGUID;
|
case TYPE_THORIM: return uiThorimGUID;
|
||||||
case TYPE_FREYA: return uiFreyaGUID;
|
case TYPE_FREYA: return uiFreyaGUID;
|
||||||
case TYPE_VEZAX: return uiVezaxGUID;
|
case TYPE_VEZAX: return uiVezaxGUID;
|
||||||
@@ -363,7 +362,7 @@ public:
|
|||||||
OUT_SAVE_INST_DATA;
|
OUT_SAVE_INST_DATA;
|
||||||
|
|
||||||
std::ostringstream saveStream;
|
std::ostringstream saveStream;
|
||||||
saveStream << "U U " << GetBossSaveData() << " " << uiEncounter[14];
|
saveStream << "U U " << GetBossSaveData() << " " << GetData[TYPE_COLOSSUS];
|
||||||
|
|
||||||
OUT_SAVE_INST_DATA_COMPLETE;
|
OUT_SAVE_INST_DATA_COMPLETE;
|
||||||
return saveStream.str();
|
return saveStream.str();
|
||||||
@@ -383,7 +382,7 @@ public:
|
|||||||
uint32 data14;
|
uint32 data14;
|
||||||
|
|
||||||
std::istringstream loadStream(strIn);
|
std::istringstream loadStream(strIn);
|
||||||
loadStream >> dataHead1 >> dataHead2 >> data14;
|
loadStream >> dataHead1 >> dataHead2;
|
||||||
|
|
||||||
if (dataHead1 == 'U' && dataHead2 == 'U')
|
if (dataHead1 == 'U' && dataHead2 == 'U')
|
||||||
{
|
{
|
||||||
@@ -391,12 +390,12 @@ public:
|
|||||||
{
|
{
|
||||||
uint32 tmpState;
|
uint32 tmpState;
|
||||||
loadStream >> tmpState;
|
loadStream >> tmpState;
|
||||||
loadStream >> uiEncounter[data14]; //colossus pre leviathan
|
|
||||||
if (tmpState == IN_PROGRESS || tmpState > SPECIAL)
|
if (tmpState == IN_PROGRESS || tmpState > SPECIAL)
|
||||||
tmpState = NOT_STARTED;
|
tmpState = NOT_STARTED;
|
||||||
SetBossState(i, EncounterState(tmpState));
|
SetBossState(i, EncounterState(tmpState));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
OUT_LOAD_INST_DATA_COMPLETE;
|
OUT_LOAD_INST_DATA_COMPLETE;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user