typo
This commit is contained in:
@@ -45,58 +45,50 @@ void WorldSession::HandleTransmogrifyItems(WorldPackets::Transmogrification::Tra
|
||||
std::vector<uint32> bindAppearances;
|
||||
|
||||
auto validateAndStoreTransmogItem = [&](Item* itemTransmogrified, uint32 itemModifiedAppearanceId, bool isSecondary)
|
||||
{
|
||||
ItemModifiedAppearanceEntry const* itemModifiedAppearance = sItemModifiedAppearanceStore.LookupEntry(itemModifiedAppearanceId);
|
||||
if (!itemModifiedAppearance)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using invalid appearance ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
ItemModifiedAppearanceEntry const* itemModifiedAppearance = sItemModifiedAppearanceStore.LookupEntry(itemModifiedAppearanceId);
|
||||
if (!itemModifiedAppearance)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using invalid appearance ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (isSecondary && itemTransmogrified->GetTemplate()->GetInventoryType() != INVTYPE_SHOULDERS)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify secondary appearance to non-shoulder item.", player->GetGUID().ToString(), player->GetName());
|
||||
return false;
|
||||
}
|
||||
if (isSecondary && itemTransmogrified->GetTemplate()->GetInventoryType() != INVTYPE_SHOULDERS)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify secondary appearance to non-shoulder item.", player->GetGUID().ToString(), player->GetName());
|
||||
return false;
|
||||
}
|
||||
|
||||
auto [hasAppearance, isTemporary] = GetCollectionMgr()->HasItemAppearance(itemModifiedAppearanceId);
|
||||
if (!hasAppearance)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using appearance he has not collected ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
ItemTemplate const* itemTemplate = sObjectMgr->GetItemTemplate(itemModifiedAppearance->ItemID);
|
||||
if (!itemTemplate)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using invalid appearance ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
if (itemTemplate->HasFlag(ITEM_FLAG2_INTERNAL_ITEM)
|
||||
|| (itemTemplate->HasFlag(ITEM_FLAG2_FACTION_HORDE) && player->GetTeam() != HORDE)
|
||||
|| (itemTemplate->HasFlag(ITEM_FLAG2_FACTION_ALLIANCE) && player->GetTeam() != ALLIANCE)
|
||||
|| !itemTemplate->GetAllowableRace().HasRace(player->GetRace()))
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using appearance they cannot use ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
auto [hasAppearance, isTemporary] = GetCollectionMgr()->HasItemAppearance(itemModifiedAppearanceId);
|
||||
if (!hasAppearance)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using appearance he has not collected ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
ItemTemplate const* itemTemplate = sObjectMgr->GetItemTemplate(itemModifiedAppearance->ItemID);
|
||||
if (player->CanUseItem(itemTemplate) != EQUIP_ERR_OK)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} tried to transmogrify using appearance he can never use ({}).", player->GetGUID().ToString(), player->GetName(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
|
||||
// validity of the transmogrification items
|
||||
if (!Item::CanTransmogrifyItemWithItem(itemTransmogrified, itemModifiedAppearance))
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} failed CanTransmogrifyItemWithItem ({} with appearance {}).", player->GetGUID().ToString(), player->GetName(), itemTransmogrified->GetEntry(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
// validity of the transmogrification items
|
||||
if (!Item::CanTransmogrifyItemWithItem(itemTransmogrified, itemModifiedAppearance))
|
||||
{
|
||||
TC_LOG_DEBUG("network", "WORLD: HandleTransmogrifyItems - {}, Name: {} failed CanTransmogrifyItemWithItem ({} with appearance {}).", player->GetGUID().ToString(), player->GetName(), itemTransmogrified->GetEntry(), itemModifiedAppearanceId);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!isSecondary)
|
||||
transmogItems[itemTransmogrified].first = itemModifiedAppearanceId;
|
||||
else
|
||||
transmogItems[itemTransmogrified].second = itemModifiedAppearanceId;
|
||||
if (!isSecondary)
|
||||
transmogItems[itemTransmogrified].first = itemModifiedAppearanceId;
|
||||
else
|
||||
transmogItems[itemTransmogrified].second = itemModifiedAppearanceId;
|
||||
|
||||
if (isTemporary)
|
||||
bindAppearances.push_back(itemModifiedAppearanceId);
|
||||
if (isTemporary)
|
||||
bindAppearances.push_back(itemModifiedAppearanceId);
|
||||
|
||||
return true;
|
||||
};
|
||||
return true;
|
||||
};
|
||||
|
||||
for (WorldPackets::Transmogrification::TransmogrifyItem const& transmogItem : transmogrifyItems.Items)
|
||||
{
|
||||
@@ -515,9 +507,9 @@ void WorldSession::HandleTransmogOutfitUpdateSlots(WorldPackets::Transmogrificat
|
||||
// calculate cost
|
||||
float baseCost = 0;
|
||||
if (uint32 curveId = sDB2Manager.GetGlobalCurveId(GlobalCurve::TransmogCost))
|
||||
baseCost = sDB2Manager.GetCurveValueAt(curveId, std::max<int32>(_player->GetLevel(), _player->m_activePlayerData->MaxLevel)); 1Code has comments.Press enter to view.
|
||||
baseCost = sDB2Manager.GetCurveValueAt(curveId, std::max<int32>(_player->GetLevel(), _player->m_activePlayerData->MaxLevel));
|
||||
|
||||
float costMultiplier = 1.0f;
|
||||
float costMultiplier = 1.0f;
|
||||
TransmogOutfitEntryEntry const* transmogOutfitEntry = sTransmogOutfitEntryStore.AssertEntry(transmogOutfitUpdateSlots.OutfitID);
|
||||
if (transmogOutfitEntry->HasFlag(TransmogOutfitEntryFlags::UseOverrideCostModifier))
|
||||
costMultiplier *= transmogOutfitEntry->OverrideCostModifier;
|
||||
|
||||
Reference in New Issue
Block a user