From 23a5a8033662f1080385788339b4d4599403a66f Mon Sep 17 00:00:00 2001 From: megamage Date: Fri, 8 May 2009 19:23:24 -0500 Subject: [PATCH] [7803] Prevent ignore max money limit at use .modify money command. Author: VladimirMangos --HG-- branch : trunk --- src/game/Level1.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/game/Level1.cpp b/src/game/Level1.cpp index 832f2ada5e..45137c5b21 100644 --- a/src/game/Level1.cpp +++ b/src/game/Level1.cpp @@ -2091,12 +2091,12 @@ bool ChatHandler::HandleModifyMoneyCommand(const char* args) uint32 moneyuser = chr->GetMoney(); - if(addmoney < 0) + if (addmoney < 0) { - int32 newmoney = moneyuser + addmoney; + int32 newmoney = int32(moneyuser) + addmoney; sLog.outDetail(GetTrinityString(LANG_CURRENT_MONEY), moneyuser, addmoney, newmoney); - if(newmoney <= 0 ) + if (newmoney <= 0 ) { PSendSysMessage(LANG_YOU_TAKE_ALL_MONEY, GetNameLink(chr).c_str()); if (needReportToTarget(chr)) @@ -2106,6 +2106,9 @@ bool ChatHandler::HandleModifyMoneyCommand(const char* args) } else { + if (newmoney > MAX_MONEY_AMOUNT) + newmoney = MAX_MONEY_AMOUNT; + PSendSysMessage(LANG_YOU_TAKE_MONEY, abs(addmoney), GetNameLink(chr).c_str()); if (needReportToTarget(chr)) ChatHandler(chr).PSendSysMessage(LANG_YOURS_MONEY_TAKEN, GetNameLink().c_str(), abs(addmoney)); @@ -2117,7 +2120,11 @@ bool ChatHandler::HandleModifyMoneyCommand(const char* args) PSendSysMessage(LANG_YOU_GIVE_MONEY, addmoney, GetNameLink(chr).c_str()); if (needReportToTarget(chr)) ChatHandler(chr).PSendSysMessage(LANG_YOURS_MONEY_GIVEN, GetNameLink().c_str(), addmoney); - chr->ModifyMoney( addmoney ); + + if (addmoney >=MAX_MONEY_AMOUNT) + chr->SetMoney(MAX_MONEY_AMOUNT); + else + chr->ModifyMoney( addmoney ); } sLog.outDetail(GetTrinityString(LANG_NEW_MONEY), moneyuser, addmoney, chr->GetMoney() );