diff options
author | Shauren <shauren.trinity@gmail.com> | 2013-11-25 16:25:12 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2013-11-25 16:25:12 +0100 |
commit | b100769cc0cdc8bebce46d5f03f8629cd854d6d4 (patch) | |
tree | 6e7cfbef7db1cb3394636f2463e32c1a1f274051 /src | |
parent | 172d3197bc31548df282441ec256919802b8cc67 (diff) |
Core/Guilds: Fixed gold in bank not being updated clientside after withdrawing/depositing into a bank that has no tabs purchased
Closes #5787
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Guilds/Guild.cpp | 15 | ||||
-rw-r--r-- | src/server/game/Guilds/Guild.h | 4 |
2 files changed, 9 insertions, 10 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index e68e5ea363a..10bce9e2d51 100644 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -72,8 +72,8 @@ std::string _GetGuildEventString(GuildEvents event) return "Bank tab updated"; case GE_BANK_MONEY_SET: return "Bank money set"; - case GE_BANK_MONEY_CHANGED: - return "Bank money changed"; + case GE_BANK_TAB_AND_MONEY_UPDATED: + return "Bank and money updated"; case GE_BANK_TEXT_CHANGED: return "Bank tab text changed"; default: @@ -1750,8 +1750,8 @@ void Guild::HandleMemberDepositMoney(WorldSession* session, uint32 amount) CharacterDatabase.CommitTransaction(trans); - std::string aux = ByteArrayToHexStr(reinterpret_cast<uint8*>(&amount), 8, true); - _BroadcastEvent(GE_BANK_MONEY_CHANGED, 0, aux.c_str()); + std::string aux = ByteArrayToHexStr(reinterpret_cast<uint8*>(&m_bankMoney), 8, true); + _BroadcastEvent(GE_BANK_MONEY_SET, 0, aux.c_str()); if (player->GetSession()->HasPermission(rbac::RBAC_PERM_LOG_GM_TRADE)) { @@ -1800,8 +1800,8 @@ bool Guild::HandleMemberWithdrawMoney(WorldSession* session, uint32 amount, bool _LogBankEvent(trans, repair ? GUILD_BANK_LOG_REPAIR_MONEY : GUILD_BANK_LOG_WITHDRAW_MONEY, uint8(0), player->GetGUIDLow(), amount); CharacterDatabase.CommitTransaction(trans); - std::string aux = ByteArrayToHexStr(reinterpret_cast<uint8*>(&amount), 8, true); - _BroadcastEvent(GE_BANK_MONEY_CHANGED, 0, aux.c_str()); + std::string aux = ByteArrayToHexStr(reinterpret_cast<uint8*>(&m_bankMoney), 8, true); + _BroadcastEvent(GE_BANK_MONEY_SET, 0, aux.c_str()); return true; } @@ -2926,6 +2926,5 @@ void Guild::ResetTimes() for (Members::const_iterator itr = m_members.begin(); itr != m_members.end(); ++itr) itr->second->ResetValues(); - // Hack... way to force client to ask for money/slots - _BroadcastEvent(GE_RANK_UPDATED, 0, "0", GetRankInfo(0)->GetName().c_str()); + _BroadcastEvent(GE_BANK_TAB_AND_MONEY_UPDATED, 0); } diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h index 7cec09f69a7..c695d141afe 100644 --- a/src/server/game/Guilds/Guild.h +++ b/src/server/game/Guilds/Guild.h @@ -146,11 +146,11 @@ enum GuildEvents GE_RANK_DELETED = 11, GE_SIGNED_ON = 12, GE_SIGNED_OFF = 13, - GE_GUILDBANKBAGSLOTS_CHANGED = 14, + GE_GUILDBANKBAGSLOTS_CHANGED = 14, /// TODO: Sent when items are moved in gbank - all players with bank open will send tab query GE_BANK_TAB_PURCHASED = 15, GE_BANK_TAB_UPDATED = 16, GE_BANK_MONEY_SET = 17, - GE_BANK_MONEY_CHANGED = 18, + GE_BANK_TAB_AND_MONEY_UPDATED = 18, GE_BANK_TEXT_CHANGED = 19, }; |