From 28982e018ce3bcc6df79183ff52cb5ceb80fef07 Mon Sep 17 00:00:00 2001 From: sk <123456@qq.com> Date: Wed, 9 Oct 2024 12:00:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AD=98=E9=92=B1=E7=BD=90=E7=A9=BA=E6=8C=87?= =?UTF-8?q?=E9=92=88=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worldsrv/welfmgr.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/worldsrv/welfmgr.go b/worldsrv/welfmgr.go index 96921b2..43ce87f 100644 --- a/worldsrv/welfmgr.go +++ b/worldsrv/welfmgr.go @@ -1705,9 +1705,17 @@ func (this *WelfareMgr) PigbankGetInfo(p *Player) { } return 0 }*/ + + if p.WelfData.PigBank == nil { + p.WelfData.PigBank = &model.PigBankData{} + } + pool := srvdata.PBDB_PigBank_DiamondMgr.Datas.GetArr() infoData := pool[0] for _, data := range pool { + if data == nil { + continue + } if p.WelfData.PigBank.DayBuyTimes+1+1 >= data.BuyCountMin && p.WelfData.PigBank.DayBuyTimes+1 <= data.BuyCountMax { infoData = data break @@ -1716,6 +1724,9 @@ func (this *WelfareMgr) PigbankGetInfo(p *Player) { BankMaxCoin := int64(0) for _, data := range srvdata.PBDB_PigBank_DiamondMgr.Datas.GetArr() { + if data == nil { + continue + } if p.WelfData.PigBank.DayBuyTimes+1 >= data.BuyCountMin && p.WelfData.PigBank.DayBuyTimes+1 <= data.BuyCountMax { BankMaxCoin = int64(data.MaxGold) break @@ -1759,9 +1770,17 @@ func (this *WelfareMgr) PigbankTakeCoin(p *Player) { } return 0 }*/ + + if p.WelfData.PigBank == nil { + p.WelfData.PigBank = &model.PigBankData{} + } + pool := srvdata.PBDB_PigBank_DiamondMgr.Datas.GetArr() infoData := pool[0] for _, data := range pool { + if data == nil { + continue + } if p.WelfData.PigBank.DayBuyTimes+1+1 >= data.BuyCountMin && p.WelfData.PigBank.DayBuyTimes+1 <= data.BuyCountMax { infoData = data break @@ -1770,6 +1789,9 @@ func (this *WelfareMgr) PigbankTakeCoin(p *Player) { BankMaxCoin := int64(0) for _, data := range srvdata.PBDB_PigBank_DiamondMgr.Datas.GetArr() { + if data == nil { + continue + } if p.WelfData.PigBank.DayBuyTimes+1 >= data.BuyCountMin && p.WelfData.PigBank.DayBuyTimes+1 <= data.BuyCountMax { BankMaxCoin = int64(data.MaxGold) break @@ -1873,6 +1895,9 @@ func (this *WelfareMgr) DiamondBankGetInfo(p *Player) { p.WelfData.DiamondBank = &model.DiamondBankData{} } for _, data := range pool { + if data == nil { + continue + } if p.WelfData.DiamondBank.DayBuyTimes+1 >= data.BuyCountMin && p.WelfData.DiamondBank.DayBuyTimes+1 <= data.BuyCountMax { infoData = data break