[7275] getbattlegroundqueueidfromlevel returns now bg-specific queueids

before this commit, queueids were staticaly given for
    9-19,20-29,30-39... but for instance alterac valley needs
    51-60,61-70,71-80.. this patch allows this,
    if you change the minlevel in battleground_template you also could make
    23-32,33-42.. levelranges
    not that we always use 10lvl-steps.. this is actually hardcoded..

Author: balrok

--HG--
branch : trunk
This commit is contained in:
megamage
2009-02-13 20:07:49 -06:00
parent 136e49f39f
commit 096030e625
6 changed files with 84 additions and 95 deletions

View File

@@ -1348,7 +1348,7 @@ uint32 Group::CanJoinBattleGroundQueue(BattleGroundTypeId bgTypeId, BattleGround
if(!reference)
return BG_JOIN_ERR_OFFLINE_MEMBER;
uint32 bgQueueId = reference->GetBattleGroundQueueIdFromLevel();
uint32 queue_id = reference->GetBattleGroundQueueIdFromLevel(bgTypeId);
uint32 arenaTeamId = reference->GetArenaTeamId(arenaSlot);
uint32 team = reference->GetTeam();
@@ -1363,7 +1363,7 @@ uint32 Group::CanJoinBattleGroundQueue(BattleGroundTypeId bgTypeId, BattleGround
if(member->GetTeam() != team)
return BG_JOIN_ERR_MIXED_FACTION;
// not in the same battleground level braket, don't let join
if(member->GetBattleGroundQueueIdFromLevel() != bgQueueId)
if(member->GetBattleGroundQueueIdFromLevel(bgTypeId) != queue_id)
return BG_JOIN_ERR_MIXED_LEVELS;
// don't let join rated matches if the arena team id doesn't match
if(isRated && member->GetArenaTeamId(arenaSlot) != arenaTeamId)