diff options
author | jackpoz <giacomopoz@gmail.com> | 2020-09-05 22:03:26 +0200 |
---|---|---|
committer | jackpoz <giacomopoz@gmail.com> | 2020-09-05 22:03:26 +0200 |
commit | cc64762f068749bbee0ef96580614f5a8cdfc867 (patch) | |
tree | e8e476ca7828e2b853b9ab58e9189a5898c88d96 /src | |
parent | 1e446b021b704818fb4ef9bd8622716d138295b0 (diff) |
Core/Arena: Fix Arena.ArenaStartPersonalRating setting not having effect if the player didn't do any arena match before next server restart
Ref #16609
Diffstat (limited to 'src')
-rw-r--r-- | src/server/database/Database/Implementation/CharacterDatabase.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/ArenaTeam.cpp | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/server/database/Database/Implementation/CharacterDatabase.cpp b/src/server/database/Database/Implementation/CharacterDatabase.cpp index bf5ea294626..78643ee7af7 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.cpp +++ b/src/server/database/Database/Implementation/CharacterDatabase.cpp @@ -287,7 +287,7 @@ void CharacterDatabaseConnection::DoPrepareStatements() // Arena teams PrepareStatement(CHAR_SEL_CHARACTER_ARENAINFO, "SELECT arenaTeamId, weekGames, seasonGames, seasonWins, personalRating FROM arena_team_member WHERE guid = ?", CONNECTION_ASYNC); PrepareStatement(CHAR_INS_ARENA_TEAM, "INSERT INTO arena_team (arenaTeamId, name, captainGuid, type, rating, backgroundColor, emblemStyle, emblemColor, borderStyle, borderColor) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", CONNECTION_ASYNC); - PrepareStatement(CHAR_INS_ARENA_TEAM_MEMBER, "INSERT INTO arena_team_member (arenaTeamId, guid) VALUES (?, ?)", CONNECTION_ASYNC); + PrepareStatement(CHAR_INS_ARENA_TEAM_MEMBER, "INSERT INTO arena_team_member (arenaTeamId, guid, personalRating) VALUES (?, ?, ?)", CONNECTION_ASYNC); PrepareStatement(CHAR_DEL_ARENA_TEAM, "DELETE FROM arena_team where arenaTeamId = ?", CONNECTION_ASYNC); PrepareStatement(CHAR_DEL_ARENA_TEAM_MEMBERS, "DELETE FROM arena_team_member WHERE arenaTeamId = ?", CONNECTION_ASYNC); PrepareStatement(CHAR_UPD_ARENA_TEAM_CAPTAIN, "UPDATE arena_team SET captainGuid = ? WHERE arenaTeamId = ?", CONNECTION_ASYNC); diff --git a/src/server/game/Battlegrounds/ArenaTeam.cpp b/src/server/game/Battlegrounds/ArenaTeam.cpp index cd490c0b23c..e0a33e303b2 100644 --- a/src/server/game/Battlegrounds/ArenaTeam.cpp +++ b/src/server/game/Battlegrounds/ArenaTeam.cpp @@ -124,10 +124,10 @@ bool ArenaTeam::AddMember(ObjectGuid playerGuid) } // Set player's personal rating - uint32 personalRating = 0; + uint16 personalRating = 0; if (sWorld->getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING) > 0) - personalRating = sWorld->getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING); + personalRating = uint16(sWorld->getIntConfig(CONFIG_ARENA_START_PERSONAL_RATING)); else if (GetRating() >= 1000) personalRating = 1000; @@ -166,6 +166,7 @@ bool ArenaTeam::AddMember(ObjectGuid playerGuid) stmt = CharacterDatabase.GetPreparedStatement(CHAR_INS_ARENA_TEAM_MEMBER); stmt->setUInt32(0, TeamId); stmt->setUInt32(1, playerGuid.GetCounter()); + stmt->setUInt16(2, personalRating); CharacterDatabase.Execute(stmt); // Inform player if online |