aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Player/Player.cpp9
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp2
2 files changed, 5 insertions, 6 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index ba55f9b85f6..a0117149937 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -26591,15 +26591,14 @@ void Player::SetEquipmentSet(EquipmentSetInfo::EquipmentSetData const& newEqSet)
}
}
- EquipmentSetInfo& eqSlot = _equipmentSets[newEqSet.Guid];
-
- EquipmentSetUpdateState oldState = eqSlot.State;
+ uint64 setGuid = (newEqSet.Guid != 0) ? newEqSet.Guid : sObjectMgr->GenerateEquipmentSetGuid();
+ EquipmentSetInfo& eqSlot = _equipmentSets[setGuid];
eqSlot.Data = newEqSet;
if (eqSlot.Data.Guid == 0)
{
- eqSlot.Data.Guid = sObjectMgr->GenerateEquipmentSetGuid();
+ eqSlot.Data.Guid = setGuid;
WorldPackets::EquipmentSet::EquipmentSetID data;
data.GUID = eqSlot.Data.Guid;
@@ -26608,7 +26607,7 @@ void Player::SetEquipmentSet(EquipmentSetInfo::EquipmentSetData const& newEqSet)
SendDirectMessage(data.Write());
}
- eqSlot.State = oldState == EQUIPMENT_SET_NEW ? EQUIPMENT_SET_NEW : EQUIPMENT_SET_CHANGED;
+ eqSlot.State = eqSlot.State == EQUIPMENT_SET_NEW ? EQUIPMENT_SET_NEW : EQUIPMENT_SET_CHANGED;
}
void Player::_SaveEquipmentSets(SQLTransaction& trans)
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index e7ce10fceef..07d13c1d303 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -6728,7 +6728,7 @@ void ObjectMgr::SetHighestGuids()
if (result)
sArenaTeamMgr->SetNextArenaTeamId((*result)[0].GetUInt32()+1);
- result = CharacterDatabase.Query("SELECT MAX(setguid) FROM character_equipmentsets");
+ result = CharacterDatabase.Query("SELECT MAX(maxguid) FROM ((SELECT MAX(setguid) AS maxguid FROM character_equipmentsets) UNION (SELECT MAX(setguid) AS maxguid FROM character_transmog_outfits)) allsets");
if (result)
_equipmentSetGuid = (*result)[0].GetUInt64()+1;