fix 房费校验

This commit is contained in:
sk 2025-01-04 10:50:33 +08:00
parent 317729900a
commit 990e211d0d
1 changed files with 25 additions and 0 deletions

View File

@ -720,6 +720,12 @@ func (this *SceneBaseStateTienLen) OnPlayerOp(s *base.Scene, p *base.Player, opc
} }
if sceneEx.IsCustom() && sceneEx.GetSceneState().GetState() == rule.TienLenSceneStateBilled { if sceneEx.IsCustom() && sceneEx.GetSceneState().GetState() == rule.TienLenSceneStateBilled {
// 余额检查
if !s.CoinInLimit(p.GetCoin()) {
sceneEx.PlayerLeave(p, s.NotCoinInLimitType(p.GetCoin()), true)
return true
}
// 玩家继续 // 玩家继续
if !playerEx.IsMarkFlag(base.PlayerState_Ready) { if !playerEx.IsMarkFlag(base.PlayerState_Ready) {
playerEx.MarkFlag(base.PlayerState_Ready) playerEx.MarkFlag(base.PlayerState_Ready)
@ -730,9 +736,28 @@ func (this *SceneBaseStateTienLen) OnPlayerOp(s *base.Scene, p *base.Player, opc
if (sceneEx.GetCustom().GetCostType() == 2 && playerEx.SnId == sceneEx.GetCreator()) || if (sceneEx.GetCustom().GetCostType() == 2 && playerEx.SnId == sceneEx.GetCreator()) ||
sceneEx.GetCustom().GetCostType() == 1 { sceneEx.GetCustom().GetCostType() == 1 {
var item []*model.Item var item []*model.Item
var less bool
for _, v := range sceneEx.GetCustom().GetItems() { for _, v := range sceneEx.GetCustom().GetItems() {
item = append(item, &model.Item{ItemId: v.GetId(), ItemNum: -v.GetNum()}) item = append(item, &model.Item{ItemId: v.GetId(), ItemNum: -v.GetNum()})
if v.GetId() == 100001 && playerEx.GetCoin() < v.GetNum() {
// 金币不足
less = true
break
} else {
if playerEx.Items[v.GetId()] < v.GetNum() {
// 道具不足
less = true
break
} }
}
}
// 检查余额
if less {
sceneEx.PlayerLeave(p, common.PlayerLeaveReason_Bekickout, true)
return true
}
playerEx.AddItems(&model.AddItemParam{ playerEx.AddItems(&model.AddItemParam{
Platform: sceneEx.Platform, Platform: sceneEx.Platform,
SnId: playerEx.SnId, SnId: playerEx.SnId,