diff --git a/src/server/game/Battlegrounds/ArenaTeam.cpp b/src/server/game/Battlegrounds/ArenaTeam.cpp index 4823b159d1..0e22125685 100755 --- a/src/server/game/Battlegrounds/ArenaTeam.cpp +++ b/src/server/game/Battlegrounds/ArenaTeam.cpp @@ -140,7 +140,14 @@ bool ArenaTeam::AddMember(const uint64& PlayerGuid) } plMMRating = sWorld.getIntConfig(CONFIG_ARENA_START_MATCHMAKER_RATING); - plPRating = sWorld.getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING); + plPRating = 0; + + if (sWorld.getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING) > 0) + plPRating = sWorld.getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING); + else if (GetRating() >= 1000) + plPRating = 1000; + + sWorld.getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING); QueryResult result = CharacterDatabase.PQuery("SELECT matchmaker_rating FROM character_arena_stats WHERE guid='%u' AND slot='%u'", GUID_LOPART(PlayerGuid), GetSlot()); if (result) diff --git a/src/server/game/Battlegrounds/ArenaTeam.h b/src/server/game/Battlegrounds/ArenaTeam.h index 9a9c9ab40d..1df98fa978 100755 --- a/src/server/game/Battlegrounds/ArenaTeam.h +++ b/src/server/game/Battlegrounds/ArenaTeam.h @@ -202,7 +202,7 @@ class ArenaTeam void MemberWon(Player * plr, uint32 againstMatchmakerRating, int32 teamratingchange = 12); int32 LostAgainst(uint32 againstRating); void MemberLost(Player * plr, uint32 againstMatchmakerRating, int32 teamratingchange = -12); - void OfflineMemberLost(uint64 guid, uint32 againstMatchmakerRating, int32 teamratingchange = 12); + void OfflineMemberLost(uint64 guid, uint32 againstMatchmakerRating, int32 teamratingchange = -12); void UpdateArenaPointsHelper(std::map & PlayerPoints);