fix(Core/Battlegrounds): MinLevel and MaxLevel from `battelground… (#12880)
fix(Core/Battlegrounds): `MinLevel` and `MaxLevel` from `battelground_template` should be taken into account while joining bg queue. Fixes #6781
This commit is contained in:
@@ -1986,6 +1986,11 @@ GroupJoinBattlegroundResult Group::CanJoinBattlegroundQueue(Battleground const*
|
|||||||
// don't let Death Knights join BG queues when they are not allowed to be teleported yet
|
// don't let Death Knights join BG queues when they are not allowed to be teleported yet
|
||||||
if (member->getClass() == CLASS_DEATH_KNIGHT && member->GetMapId() == 609 && !member->IsGameMaster() && !member->HasSpell(50977))
|
if (member->getClass() == CLASS_DEATH_KNIGHT && member->GetMapId() == 609 && !member->IsGameMaster() && !member->HasSpell(50977))
|
||||||
return ERR_GROUP_JOIN_BATTLEGROUND_FAIL;
|
return ERR_GROUP_JOIN_BATTLEGROUND_FAIL;
|
||||||
|
|
||||||
|
if (!member->GetBGAccessByLevel(bgTemplate->GetBgTypeID()))
|
||||||
|
{
|
||||||
|
return ERR_BATTLEGROUND_JOIN_TIMED_OUT;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// for arenas: check party size is proper
|
// for arenas: check party size is proper
|
||||||
|
|||||||
@@ -187,6 +187,10 @@ void WorldSession::HandleBattlemasterJoinOpcode(WorldPacket& recvData)
|
|||||||
{
|
{
|
||||||
err = ERR_BATTLEGROUND_NONE;
|
err = ERR_BATTLEGROUND_NONE;
|
||||||
}
|
}
|
||||||
|
else if (!_player->GetBGAccessByLevel(bgTypeId))
|
||||||
|
{
|
||||||
|
err = ERR_BATTLEGROUND_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
if (err <= 0)
|
if (err <= 0)
|
||||||
{
|
{
|
||||||
@@ -236,6 +240,10 @@ void WorldSession::HandleBattlemasterJoinOpcode(WorldPacket& recvData)
|
|||||||
{
|
{
|
||||||
err = ERR_BATTLEGROUND_NONE;
|
err = ERR_BATTLEGROUND_NONE;
|
||||||
}
|
}
|
||||||
|
else if (!member->GetBGAccessByLevel(bgTypeId))
|
||||||
|
{
|
||||||
|
err = ERR_BATTLEGROUND_JOIN_TIMED_OUT;
|
||||||
|
}
|
||||||
|
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user