add 进房余额检查
This commit is contained in:
parent
faeab1bbec
commit
fed71065f7
|
@ -112,6 +112,20 @@ func (this *CSEnterRoomHandler) Process(s *netlib.Session, packetid int, data in
|
||||||
logger.Logger.Trace("CSEnterRoomHandler cost error")
|
logger.Logger.Trace("CSEnterRoomHandler cost error")
|
||||||
goto failed
|
goto failed
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if scene.CustomParam.CostType == 1 { // AA
|
||||||
|
var afterCoin = p.GetCoin()
|
||||||
|
for _, v := range scene.CustomParam.GetItems() {
|
||||||
|
if v.GetId() == common.ItemIDCoin {
|
||||||
|
afterCoin -= v.GetNum()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if afterCoin <= 0 || (scene.dbGameFree.GetLimitCoin() > 0 && afterCoin < scene.dbGameFree.GetLimitCoin()) {
|
||||||
|
code = gamehall.OpResultCode_Game_OPRC_CoinNotEnough_Game
|
||||||
|
logger.Logger.Trace("CSEnterRoomHandler cost after coin too little error")
|
||||||
|
goto failed
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dbGameFree = scene.dbGameFree
|
dbGameFree = scene.dbGameFree
|
||||||
|
@ -1327,12 +1341,16 @@ func CSCreatePrivateRoomHandler(s *netlib.Session, packetId int, data interface{
|
||||||
}
|
}
|
||||||
|
|
||||||
var item []*server.Item
|
var item []*server.Item
|
||||||
|
var afterCoin = p.GetCoin()
|
||||||
costItem := sp.NeedRoomCardCost(int(costType), int(msg.GetPlayerNum()), cfg)
|
costItem := sp.NeedRoomCardCost(int(costType), int(msg.GetPlayerNum()), cfg)
|
||||||
for _, v := range costItem {
|
for _, v := range costItem {
|
||||||
item = append(item, &server.Item{
|
item = append(item, &server.Item{
|
||||||
Id: v.ItemID,
|
Id: v.ItemID,
|
||||||
Num: v.Count,
|
Num: v.Count,
|
||||||
})
|
})
|
||||||
|
if v.ItemID == common.ItemIDCoin {
|
||||||
|
afterCoin -= v.Count
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 创建房间
|
// 创建房间
|
||||||
|
@ -1369,6 +1387,12 @@ func CSCreatePrivateRoomHandler(s *netlib.Session, packetId int, data interface{
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if afterCoin <= 0 || (scene.dbGameFree.GetLimitCoin() > 0 && afterCoin < scene.dbGameFree.GetLimitCoin()) {
|
||||||
|
code = gamehall.OpResultCode_Game_OPRC_CoinNotEnough_Game
|
||||||
|
send()
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
csp.AddScene(scene)
|
csp.AddScene(scene)
|
||||||
|
|
||||||
sp.CostPayment(scene, p.SnId)
|
sp.CostPayment(scene, p.SnId)
|
||||||
|
|
Loading…
Reference in New Issue