Browse Source

1 机器人配置的处理

dev
MoQingYu 4 months ago
parent
commit
6043cb58f9
  1. 8
      game-server/game/SixAndarBahar/app/core/game/game_bet.go
  2. 30
      game-server/game/SixAndarBahar/app/core/game/game_robot.go
  3. 20
      game-server/game/rummy/app/core/game/game_robot.go

8
game-server/game/SixAndarBahar/app/core/game/game_bet.go

@ -88,6 +88,14 @@ func (rr *Room) OnUserBet(uid int64, msg interface{}, Auto bool) { // 用户下
return
}
if UserCurrentBet <= 0 {
log.Debug("玩家", ChairId, "个人下注总值", UserCurrentBet, " 拥有的钱: ", rr.PlayerMap[ChairId].Gold.IntPart())
BetRes.Code = protocol.ErrorCodeBetError
BetRes.CodeMsg = "下注额异常 " + strconv.Itoa(int(UserCurrentBet))
rr.Send(player, route.BetRes, BetRes)
return
}
if !player.IsRobot && UserCurrentBet > rr.PlayerMap[ChairId].Gold.IntPart() {
log.Debug("玩家", ChairId, "个人下注总值", UserCurrentBet, " 拥有的钱: ", rr.PlayerMap[ChairId].Gold.IntPart())
BetRes.Code = protocol.ErrorCodeBetError

30
game-server/game/SixAndarBahar/app/core/game/game_robot.go

@ -77,8 +77,8 @@ func (r *RobotManager) OnInit(conf string, GameRoom *Room) {
// 第一个进入的机器人 只判断一次
r.FirstEnterTimer = 0
if r.GameRoom.CreatorId != 0 {
FirstMinTime := r.GameRoom.TableConfig.FirstRobotCheckMinFrequency
FirstMaxTime := r.GameRoom.TableConfig.FirstRobotCheckMaxFrequency
FirstMinTime := r.GameRoom.TableConfig.FirstRobotCheckMinFrequency * 1000
FirstMaxTime := r.GameRoom.TableConfig.FirstRobotCheckMaxFrequency * 1000
if FirstMaxTime <= FirstMinTime {
r.FirstEnterTimer = nowMilliSeconds + FirstMaxTime
} else {
@ -115,11 +115,21 @@ func (r *RobotManager) OnInit(conf string, GameRoom *Room) {
if GameRoom.TableConfig != nil {
r.MaxCount = 0
if GameRoom.TableConfig.ZeroMaxNum <= GameRoom.TableConfig.ZeroMinNum {
r.MaxCount = int(GameRoom.TableConfig.ZeroMinNum)
if GameRoom.TableConfig.TableType == 2 {
if GameRoom.TableConfig.OneMaxNum <= GameRoom.TableConfig.OneMinNum {
r.MaxCount = int(GameRoom.TableConfig.OneMinNum)
} else {
r.MaxCount = int(rand.Int63n(GameRoom.TableConfig.OneMaxNum-GameRoom.TableConfig.OneMinNum+1) + GameRoom.TableConfig.OneMinNum)
}
} else {
r.MaxCount = int(rand.Int63n(GameRoom.TableConfig.ZeroMaxNum-GameRoom.TableConfig.ZeroMinNum+1) + GameRoom.TableConfig.ZeroMinNum)
if GameRoom.TableConfig.ZeroMaxNum <= GameRoom.TableConfig.ZeroMinNum {
r.MaxCount = int(GameRoom.TableConfig.ZeroMinNum)
} else {
r.MaxCount = int(rand.Int63n(GameRoom.TableConfig.ZeroMaxNum-GameRoom.TableConfig.ZeroMinNum+1) + GameRoom.TableConfig.ZeroMinNum)
}
}
r.FlushCountTimer = nowMilliSeconds + GameRoom.TableConfig.CheckFrequency*1000
log.Debug("从后台配置 最大机器人数 ", r.MaxCount, " 刷新时间 ", GameRoom.TableConfig.CheckFrequency)
@ -488,12 +498,12 @@ func (r *RobotManager) OnRobotMessage(msgId int32, player *Player, msg interface
}
//结束时候判断是否机器人要离开
if message.GameState == 1 {
if r.GameRoom.GetInRoomRobotCount() > int32(r.MaxCount) {
r.GameRoom.OnGetOutRoom(player.Uid)
log.Debug(r.GameRoom.RId, " 机器人 ", player.Uid, " 需要离开 当前机器人个数", r.GameRoom.GetInRoomRobotCount(), "需要的人数", r.MaxCount)
}
//if message.GameState == 1 {
if r.GameRoom.GetInRoomRobotCount() > int32(r.MaxCount) {
r.GameRoom.OnGetOutRoom(player.Uid)
log.Debug(r.GameRoom.RId, " 机器人 ", player.Uid, " 需要离开 当前机器人个数", r.GameRoom.GetInRoomRobotCount(), "需要的人数", r.MaxCount)
}
//}
}
case route.LogoutTableRes:
if player == nil {

20
game-server/game/rummy/app/core/game/game_robot.go

@ -86,8 +86,8 @@ func (r *RobotManager) OnInit(conf string, GameRoom *Room) {
// 第一个进入的机器人 只判断一次
r.FirstEnterTimer = 0
if r.GameRoom.CreatorId != 0 {
FirstMinTime := r.GameRoom.TableConfig.FirstRobotCheckMinFrequency
FirstMaxTime := r.GameRoom.TableConfig.FirstRobotCheckMaxFrequency
FirstMinTime := r.GameRoom.TableConfig.FirstRobotCheckMinFrequency * 1000
FirstMaxTime := r.GameRoom.TableConfig.FirstRobotCheckMaxFrequency * 1000
if FirstMaxTime <= FirstMinTime {
r.FirstEnterTimer = nowMilliSeconds + FirstMaxTime
} else {
@ -124,11 +124,21 @@ func (r *RobotManager) OnInit(conf string, GameRoom *Room) {
if GameRoom.TableConfig != nil {
r.MaxCount = 0
if GameRoom.TableConfig.ZeroMaxNum <= GameRoom.TableConfig.ZeroMinNum {
r.MaxCount = int(GameRoom.TableConfig.ZeroMinNum)
if GameRoom.TableConfig.TableType == 2 {
if GameRoom.TableConfig.OneMaxNum <= GameRoom.TableConfig.OneMinNum {
r.MaxCount = int(GameRoom.TableConfig.OneMinNum)
} else {
r.MaxCount = int(rand.Int63n(GameRoom.TableConfig.OneMaxNum-GameRoom.TableConfig.OneMinNum+1) + GameRoom.TableConfig.OneMinNum)
}
} else {
r.MaxCount = int(rand.Int63n(GameRoom.TableConfig.ZeroMaxNum-GameRoom.TableConfig.ZeroMinNum+1) + GameRoom.TableConfig.ZeroMinNum)
if GameRoom.TableConfig.ZeroMaxNum <= GameRoom.TableConfig.ZeroMinNum {
r.MaxCount = int(GameRoom.TableConfig.ZeroMinNum)
} else {
r.MaxCount = int(rand.Int63n(GameRoom.TableConfig.ZeroMaxNum-GameRoom.TableConfig.ZeroMinNum+1) + GameRoom.TableConfig.ZeroMinNum)
}
}
r.FlushCountTimer = nowMilliSeconds + GameRoom.TableConfig.CheckFrequency*1000
log.Debug("从后台配置 最大机器人数 ", r.MaxCount, " 刷新时间 ", GameRoom.TableConfig.CheckFrequency)

Loading…
Cancel
Save