diff --git a/worldsrv/welfmgr.go b/worldsrv/welfmgr.go index 14889d1..ccfad96 100644 --- a/worldsrv/welfmgr.go +++ b/worldsrv/welfmgr.go @@ -1545,12 +1545,13 @@ func (this *WelfareMgr) PigbankTakeCoin(p *Player) { return 0 } + BankMaxCoin := int64(fGetPropValue("BankMaxCoin")) if p.WelfData != nil && p.WelfData.PigBank != nil { pack.CostDiamond = fGetCostDiamond(p.WelfData.PigBank.TakeTimes + 1) - pack.BankMaxCoin = int64(fGetPropValue("BankMaxCoin")) + pack.BankMaxCoin = BankMaxCoin - if p.WelfData.PigBank.BankCoin < int64(fGetPropValue("BankMaxCoin")) { + if p.WelfData.PigBank.BankCoin < BankMaxCoin { pack.OpRetCode = welfare.OpResultCode_OPRC_PigbankNotFull logger.Logger.Trace("存钱罐没有满") p.SendToClient(int(welfare.SPacketID_PACKET_SCPigbankTakeCoin), pack) @@ -1569,11 +1570,11 @@ func (this *WelfareMgr) PigbankTakeCoin(p *Player) { return } - if p.WelfData.PigBank.BankCoin == int64(fGetPropValue("BankMaxCoin")) { + if p.WelfData.PigBank.BankCoin >= BankMaxCoin { pack.OpRetCode = welfare.OpResultCode_OPRC_Sucess - pack.TakeCoinNum = p.WelfData.PigBank.BankCoin + pack.TakeCoinNum = BankMaxCoin - p.AddCoin(p.WelfData.PigBank.BankCoin, 0, common.GainWay_PigrankGainCoin, "sys", "存钱罐领取金币") + p.AddCoin(BankMaxCoin, 0, common.GainWay_PigrankGainCoin, "sys", "存钱罐领取金币") // 领取完之后 设置为0 p.WelfData.PigBank.BankCoin = 0