aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/DBCStructure.h2
-rw-r--r--src/game/DBCfmt.h2
-rw-r--r--src/game/Player.cpp6
-rw-r--r--src/game/Player.h2
4 files changed, 6 insertions, 6 deletions
diff --git a/src/game/DBCStructure.h b/src/game/DBCStructure.h
index 1c80fdd2819..557ff02db07 100644
--- a/src/game/DBCStructure.h
+++ b/src/game/DBCStructure.h
@@ -1044,7 +1044,7 @@ struct ItemExtendedCostEntry
uint32 ID; // 0 extended-cost entry id
uint32 reqhonorpoints; // 1 required honor points
uint32 reqarenapoints; // 2 required arena points
- //uint32 unk1; // 4 probably indicates new 2v2 bracket restrictions
+ uint32 reqarenaslot; // 4 arena slot restrctions (min slot value)
uint32 reqitem[5]; // 5-8 required item id
uint32 reqitemcount[5]; // 9-13 required count of 1st item
uint32 reqpersonalarenarating; // 14 required personal arena rating};
diff --git a/src/game/DBCfmt.h b/src/game/DBCfmt.h
index aede5bf3838..5eb9468e8e3 100644
--- a/src/game/DBCfmt.h
+++ b/src/game/DBCfmt.h
@@ -68,7 +68,7 @@ const char Itemfmt[]="niiiiiii";
const char ItemBagFamilyfmt[]="nxxxxxxxxxxxxxxxxx";
//const char ItemDisplayTemplateEntryfmt[]="nxxxxxxxxxxixxxxxxxxxxx";
//const char ItemCondExtCostsEntryfmt[]="xiii";
-const char ItemExtendedCostEntryfmt[]="niixiiiiiiiiiiix";
+const char ItemExtendedCostEntryfmt[]="niiiiiiiiiiiiiix";
const char ItemLimitCategoryEntryfmt[]="nxxxxxxxxxxxxxxxxxix";
const char ItemRandomPropertiesfmt[]="nxiiiiissssssssssssssssx";
const char ItemRandomSuffixfmt[]="nssssssssssssssssxxiiiiiiiiii";
diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 59280f1e7e1..472a5017b35 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -19072,7 +19072,7 @@ bool Player::BuyItemFromVendor(uint64 vendorguid, uint32 item, uint8 count, uint
}
// check for personal arena rating requirement
- if( GetMaxPersonalArenaRatingRequirement() < iece->reqpersonalarenarating )
+ if( GetMaxPersonalArenaRatingRequirement(iece->reqarenaslot) < iece->reqpersonalarenarating )
{
// probably not the proper equip err
SendEquipError(EQUIP_ERR_CANT_EQUIP_RANK,NULL,NULL);
@@ -19210,13 +19210,13 @@ bool Player::BuyItemFromVendor(uint64 vendorguid, uint32 item, uint8 count, uint
return crItem->maxcount != 0;
}
-uint32 Player::GetMaxPersonalArenaRatingRequirement()
+uint32 Player::GetMaxPersonalArenaRatingRequirement(uint32 minarenaslot)
{
// returns the maximal personal arena rating that can be used to purchase items requiring this condition
// the personal rating of the arena team must match the required limit as well
// so return max[in arenateams](min(personalrating[teamtype], teamrating[teamtype]))
uint32 max_personal_rating = 0;
- for (uint8 i = 0; i < MAX_ARENA_SLOT; ++i)
+ for (uint8 i = minarenaslot; i < MAX_ARENA_SLOT; ++i)
{
if(ArenaTeam * at = objmgr.GetArenaTeamById(GetArenaTeamId(i)))
{
diff --git a/src/game/Player.h b/src/game/Player.h
index f82f4848414..3781df95a89 100644
--- a/src/game/Player.h
+++ b/src/game/Player.h
@@ -1893,7 +1893,7 @@ class TRINITY_DLL_SPEC Player : public Unit, public GridObject<Player>
uint32 GetArenaPoints() { return GetUInt32Value(PLAYER_FIELD_ARENA_CURRENCY); }
void ModifyHonorPoints( int32 value );
void ModifyArenaPoints( int32 value );
- uint32 GetMaxPersonalArenaRatingRequirement();
+ uint32 GetMaxPersonalArenaRatingRequirement(uint32 minarenaslot);
//End of PvP System