diff --git a/common/constant.go b/common/constant.go index 7df2584..f45c121 100644 --- a/common/constant.go +++ b/common/constant.go @@ -272,8 +272,9 @@ const ( GainWayBuyItem = 86 // 商城购买道具 GainWayBuyWeekCard = 87 // 商城购买周卡 GainWayVipBuyCoin = 88 // vip商城购买金币 - GainWaySign7 = 89 // 连续签到7天进阶消耗 - GainWay_PigrankGainDiamond = 90 //存钱罐打开获取钻石 + GainWaySign7Con = 89 // 累计签到进阶奖励消耗 + GainWaySign7Add = 90 // 累计签到进阶奖励获得 + GainWay_PigrankGainDiamond = 91 //存钱罐打开获取钻石 ) // 后台选择 金币变化类型 的充值 类型id号起始 diff --git a/data/DB_GiftCard.dat b/data/DB_GiftCard.dat index 1560036..96640b0 100644 Binary files a/data/DB_GiftCard.dat and b/data/DB_GiftCard.dat differ diff --git a/data/DB_Pigbank_Prop.dat b/data/DB_Pigbank_Prop.dat index c071c30..264bbdf 100644 --- a/data/DB_Pigbank_Prop.dat +++ b/data/DB_Pigbank_Prop.dat @@ -3,6 +3,7 @@  LoseCoinRate  DayBuyMaxCnt -WinCoinRateDiamond -LoseCoinRateDiamond +WinCoinRateDiamond +LoseCoinRateDiamond + DayBuyMaxCntDiamond \ No newline at end of file diff --git a/data/DB_Pigbank_Prop.json b/data/DB_Pigbank_Prop.json index 25da528..0d31012 100644 --- a/data/DB_Pigbank_Prop.json +++ b/data/DB_Pigbank_Prop.json @@ -17,11 +17,13 @@ }, { "Id": 4, - "PorpName": "WinCoinRateDiamond" + "PorpName": "WinCoinRateDiamond", + "PropValue": 5 }, { "Id": 5, - "PorpName": "LoseCoinRateDiamond" + "PorpName": "LoseCoinRateDiamond", + "PropValue": 10 }, { "Id": 6, diff --git a/data/DB_PropExchange.dat b/data/DB_PropExchange.dat index 426f51e..28dd534 100644 Binary files a/data/DB_PropExchange.dat and b/data/DB_PropExchange.dat differ diff --git a/data/DB_Task.dat b/data/DB_Task.dat index 96901cf..3cfeaf7 100644 Binary files a/data/DB_Task.dat and b/data/DB_Task.dat differ diff --git a/worldsrv/taskmgr.go b/worldsrv/taskmgr.go index 13cd8ca..07a635e 100644 --- a/worldsrv/taskmgr.go +++ b/worldsrv/taskmgr.go @@ -105,12 +105,17 @@ func (t *TaskHandle) TaskUpdate(id int, data any) { case common.TaskTypeWinOrLose: // 游戏输赢金币数量 p.PhoneLotteryTask(common.TaskTypeWinOrLose, num) + if !p.IsRob { + WelfareMgrSington.UpdateDiamondBankData(p, num, false) + } case common.TaskTypeTienlenCount: //tienlen游戏场次 p.PhoneLotteryTask(common.TaskTypeTienlenCount, 1) case common.TaskTypeBindInviter: // 绑定邀请人数量 case common.TaskTypeWinCoin: // 赢取金币数量 - + if !p.IsRob { + WelfareMgrSington.UpdateDiamondBankData(p, num, true) + } case common.TaskTypeTienlenWinTimes: // tienlen游戏赢取次数 case common.TaskTypeActivityScore: // 活跃积分数量 diff --git a/worldsrv/welfmgr.go b/worldsrv/welfmgr.go index dcbf424..4ff436f 100644 --- a/worldsrv/welfmgr.go +++ b/worldsrv/welfmgr.go @@ -837,7 +837,7 @@ func (this *WelfareMgr) GetAddUp2Award(p *Player, day int32) { if p.Diamond < int64(addUpDate2Num) { return } - p.AddDiamond(int64(-addUpDate2Num), 0, common.GainWaySign7, "system", "累计签到进阶奖励钻石消耗") + p.AddDiamond(int64(-addUpDate2Num), 0, common.GainWaySign7Con, "system", "累计签到进阶奖励钻石消耗") logger.Logger.Trace("累计签到进阶奖励,扣除钻石uid = ", p.SnId) EndTime = -1 } @@ -858,7 +858,7 @@ func (this *WelfareMgr) GetAddUp2Award(p *Player, day int32) { items = append(items, item) } } - BagMgrSingleton.AddItems(p, items, 0, common.GainWaySign7, "system", "累计签到进阶奖励钻石消耗", 0, 0, false) + BagMgrSingleton.AddItems(p, items, 0, common.GainWaySign7Add, "system", "累计签到进阶奖励获得", 0, 0, false) } //通知客户端 this.UpdateAddUp2Date(p, Num, day, EndTime) @@ -1897,9 +1897,29 @@ func (this *WelfareMgr) DiamondBankTakeCoin(p *Player) { } } -// 更新数据 -func (this *WelfareMgr) UpdateDiamondBankData(p *Player) { - +// 更新钻石存储罐数据 +func (this *WelfareMgr) UpdateDiamondBankData(p *Player, coinNum int64, isWin bool) { + logger.Logger.Trace("更新钻石存储罐数据!!!!!!!!!!") + if p.WelfData.DiamondBank == nil { + p.WelfData.DiamondBank = &model.DiamondBankData{} + } + fGetPropValue := func(propName string) int32 { + pool := srvdata.PBDB_Pigbank_PropMgr.Datas.GetArr() + for _, PropItem := range pool { + if PropItem.PorpName == propName { + return PropItem.PropValue + } + } + return 0 + } + WinCoinRate := fGetPropValue("WinCoinRateDiamond") + LoseCoinRate := fGetPropValue("LoseCoinRateDiamond") + if isWin { + p.WelfData.DiamondBank.BankDiamond += float64(coinNum) * float64(WinCoinRate/10000000) + } else { + p.WelfData.DiamondBank.BankDiamond += float64(coinNum) * float64(LoseCoinRate/10000000) + } + logger.Logger.Tracef("更新钻石存储罐数据 snid = %d,coinNum = %d,isWin = %s,当前钻石存储罐钻石数量:%f", p.SnId, coinNum, isWin, p.WelfData.DiamondBank.BankDiamond) } func (this *WelfareMgr) Update() { diff --git a/xlsx/DB_Pigbank_Prop.xlsx b/xlsx/DB_Pigbank_Prop.xlsx index 4dffb7e..8b44f8e 100644 Binary files a/xlsx/DB_Pigbank_Prop.xlsx and b/xlsx/DB_Pigbank_Prop.xlsx differ