diff --git a/libs/data_cache/target/classes/com/data/bean/AccountBean.class b/libs/data_cache/target/classes/com/data/bean/AccountBean.class index f675d44..9447ebf 100644 Binary files a/libs/data_cache/target/classes/com/data/bean/AccountBean.class and b/libs/data_cache/target/classes/com/data/bean/AccountBean.class differ diff --git a/libs/data_cache/target/classes/com/data/bean/BaseBean.class b/libs/data_cache/target/classes/com/data/bean/BaseBean.class index de6d1f9..377f882 100644 Binary files a/libs/data_cache/target/classes/com/data/bean/BaseBean.class and b/libs/data_cache/target/classes/com/data/bean/BaseBean.class differ diff --git a/libs/data_cache/target/classes/com/data/bean/GameBean.class b/libs/data_cache/target/classes/com/data/bean/GameBean.class index 82218b3..fbb9e31 100644 Binary files a/libs/data_cache/target/classes/com/data/bean/GameBean.class and b/libs/data_cache/target/classes/com/data/bean/GameBean.class differ diff --git a/libs/data_cache/target/classes/com/data/bean/GroupBean.class b/libs/data_cache/target/classes/com/data/bean/GroupBean.class index 9e4757c..dafccb7 100644 Binary files a/libs/data_cache/target/classes/com/data/bean/GroupBean.class and b/libs/data_cache/target/classes/com/data/bean/GroupBean.class differ diff --git a/libs/data_cache/target/classes/com/data/bean/GroupMemberBean.class b/libs/data_cache/target/classes/com/data/bean/GroupMemberBean.class index 42219fd..537768e 100644 Binary files a/libs/data_cache/target/classes/com/data/bean/GroupMemberBean.class and b/libs/data_cache/target/classes/com/data/bean/GroupMemberBean.class differ diff --git a/libs/data_cache/target/classes/com/data/bean/GroupPlayBean.class b/libs/data_cache/target/classes/com/data/bean/GroupPlayBean.class index 443f0af..a6be0c5 100644 Binary files a/libs/data_cache/target/classes/com/data/bean/GroupPlayBean.class and b/libs/data_cache/target/classes/com/data/bean/GroupPlayBean.class differ diff --git a/libs/data_cache/target/classes/com/data/cache/AccountCache.class b/libs/data_cache/target/classes/com/data/cache/AccountCache.class index 876a4c8..b6766f4 100644 Binary files a/libs/data_cache/target/classes/com/data/cache/AccountCache.class and b/libs/data_cache/target/classes/com/data/cache/AccountCache.class differ diff --git a/libs/data_cache/target/classes/com/data/cache/BaseCache.class b/libs/data_cache/target/classes/com/data/cache/BaseCache.class index dffae27..ac8e78e 100644 Binary files a/libs/data_cache/target/classes/com/data/cache/BaseCache.class and b/libs/data_cache/target/classes/com/data/cache/BaseCache.class differ diff --git a/libs/data_cache/target/classes/com/data/cache/GameCache.class b/libs/data_cache/target/classes/com/data/cache/GameCache.class index e3db4a7..bf83f29 100644 Binary files a/libs/data_cache/target/classes/com/data/cache/GameCache.class and b/libs/data_cache/target/classes/com/data/cache/GameCache.class differ diff --git a/libs/data_cache/target/classes/com/data/cache/GroupCache.class b/libs/data_cache/target/classes/com/data/cache/GroupCache.class index a3f2c6b..574a097 100644 Binary files a/libs/data_cache/target/classes/com/data/cache/GroupCache.class and b/libs/data_cache/target/classes/com/data/cache/GroupCache.class differ diff --git a/libs/data_cache/target/classes/com/data/cache/GroupMemberCache.class b/libs/data_cache/target/classes/com/data/cache/GroupMemberCache.class index 60bcc18..9ab989f 100644 Binary files a/libs/data_cache/target/classes/com/data/cache/GroupMemberCache.class and b/libs/data_cache/target/classes/com/data/cache/GroupMemberCache.class differ diff --git a/libs/data_cache/target/classes/com/data/cache/GroupPlayCache.class b/libs/data_cache/target/classes/com/data/cache/GroupPlayCache.class index 708cb59..2e9845f 100644 Binary files a/libs/data_cache/target/classes/com/data/cache/GroupPlayCache.class and b/libs/data_cache/target/classes/com/data/cache/GroupPlayCache.class differ diff --git a/libs/data_cache/target/classes/com/data/util/ConsumeCode.class b/libs/data_cache/target/classes/com/data/util/ConsumeCode.class index d56ab00..8feb5dd 100644 Binary files a/libs/data_cache/target/classes/com/data/util/ConsumeCode.class and b/libs/data_cache/target/classes/com/data/util/ConsumeCode.class differ diff --git a/libs/data_cache/target/classes/com/data/util/CountUtil.class b/libs/data_cache/target/classes/com/data/util/CountUtil.class index fde01f2..fcacf89 100644 Binary files a/libs/data_cache/target/classes/com/data/util/CountUtil.class and b/libs/data_cache/target/classes/com/data/util/CountUtil.class differ diff --git a/libs/data_cache/target/classes/com/data/util/ErrorCode.class b/libs/data_cache/target/classes/com/data/util/ErrorCode.class index 63a053b..284a6c1 100644 Binary files a/libs/data_cache/target/classes/com/data/util/ErrorCode.class and b/libs/data_cache/target/classes/com/data/util/ErrorCode.class differ diff --git a/libs/data_cache/target/classes/com/data/util/EventType.class b/libs/data_cache/target/classes/com/data/util/EventType.class index 4a96baf..24be787 100644 Binary files a/libs/data_cache/target/classes/com/data/util/EventType.class and b/libs/data_cache/target/classes/com/data/util/EventType.class differ diff --git a/libs/data_cache/target/classes/com/data/util/Utility.class b/libs/data_cache/target/classes/com/data/util/Utility.class index d3ccf35..9ba95ba 100644 Binary files a/libs/data_cache/target/classes/com/data/util/Utility.class and b/libs/data_cache/target/classes/com/data/util/Utility.class differ diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/EXGameController.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/EXGameController.java index 5cbc9bd..52bc058 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/EXGameController.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/EXGameController.java @@ -54,7 +54,7 @@ public class EXGameController extends GameController { owner.stateMachine.changeState(Global.getState(EXPlayerBetState.class)); } else if (id == Integer.parseInt(Config.GAME_CALL)) { EXPlayer player = (EXPlayer) owner; - player.betScore = player.getRoom().callScore; +// player.betScore = player.getRoom().callScore; owner.stateMachine.changeState(Global.getState(EXPlayerCallState.class)); } else if (id == Integer.parseInt(Config.GAME_ALL_IN)) { owner.stateMachine.changeState(Global.getState(EXPlayerAllInState.class)); @@ -101,7 +101,6 @@ public class EXGameController extends GameController { } obj.putTObject("settle_log", player.settleLog.toTObject()); obj.putInt("total_score", player.score.total_score); - } info.addTObject(obj); } @@ -159,6 +158,8 @@ public class EXGameController extends GameController { player.cardInhand.add(room.card.deal()); } player.showCardInhand.clear(); + player.needScore=0; + for(int j=1;j entry : this.playerMapByPlaying.entrySet()) { + if (entry.getKey().equals(destPlayer.playerid)) { + continue; + } + EXPlayer fromPlayer = (EXPlayer) entry.getValue(); + this.addScore(destPlayer, fromPlayer,fromPlayer.totalLostScore , EXScore.WIN); + Global.logger.info("destPlayer=" + destPlayer); + Global.logger.info("fromPlayer=" + fromPlayer); + Global.logger.info("totalLostScore=" + fromPlayer.totalLostScore); } } @@ -157,6 +170,7 @@ public class EXRoom extends Room { @Override public void endGame() { addAllScore(win); + Global.logger.error("EXRoom: endGame"); EXPlayBack pb = (EXPlayBack) this.playBackData; diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerAllInState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerAllInState.java index d6c4bd4..bdac4e5 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerAllInState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerAllInState.java @@ -49,7 +49,7 @@ public class EXPlayerAllInState extends StateBase { owner.callScoreList.put(room.round, owner.baseScore - owner.totalLostScore); // 当前叫分 owner.betScore = owner.baseScore - owner.totalLostScore; - room.callScore = owner.baseScore - owner.totalLostScore; +// room.callScore = owner.baseScore - owner.totalLostScore; // 追加操作,广播给客户端 TObject param = new TObject(); if (owner.seat >= room.playerMapByPlaying.size()) { @@ -120,7 +120,7 @@ public class EXPlayerAllInState extends StateBase { // 扣除下注分数 owner.lostScore = 0 - owner.betScore; - room.callScore = 0; +// room.callScore = 0; room.sidePot += owner.betScore; room.raiseRound = 0; // 广播协议 diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerBetState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerBetState.java index 48bdb6c..963d454 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerBetState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerBetState.java @@ -113,17 +113,18 @@ public class EXPlayerBetState extends StateBase { public void addSidePot(EXPlayer owner) { EXRoom room = owner.getRoom(); // 初始化每轮打出的总分数 - for (Entry entry : room.playerMapBySeat.entrySet()) { - EXPlayer player = (EXPlayer) entry.getValue(); - player.totalLostScore += player.lostScore; - player.lostScore = 0; - Global.logger.info("player:" + player.playerid + "--totalLostScore:" + player.totalLostScore - + "--lostScore:" + player.lostScore); - } +// for (Entry entry : room.playerMapBySeat.entrySet()) { +// EXPlayer player = (EXPlayer) entry.getValue(); +// player.totalLostScore += player.lostScore; +// player.lostScore = 0; +// Global.logger.info("player:" + player.playerid + "--totalLostScore:" + player.totalLostScore +// + "--lostScore:" + player.lostScore); +// } + owner.totalLostScore += owner.betScore; // 扣除下注分数 - owner.lostScore = 0 - owner.betScore; - room.callScore = 0; + owner.lostScore = owner.betScore; +// room.callScore = 0; room.sidePot += owner.betScore; room.raiseRound = 0; // 广播协议 @@ -131,7 +132,7 @@ public class EXPlayerBetState extends StateBase { param.putInt("sidePot", room.sidePot); for (Entry entry : room.playerMapBySeat.entrySet()) { EXPlayer player = (EXPlayer) entry.getValue(); - param.putInt("seat_" + player.seat, player.baseScore - player.totalLostScore + player.lostScore); + param.putInt("seat_" + player.seat, player.baseScore - player.totalLostScore); } diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCallState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCallState.java index 3af864c..f4af5f0 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCallState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCallState.java @@ -42,14 +42,14 @@ public class EXPlayerCallState extends StateBase { addSidePot(owner); // 记录每轮下注分数 owner.callScoreList.put(room.round, owner.betScore); - + owner.needScore +=owner.betScore; // 追加操作,广播给客户端 TObject param = new TObject(); room.callCount += 1; // 当前叫牌次数 - Global.logger.info("room.callScore:" + room.callScore); +// Global.logger.info("room.callScore:" + room.callScore); Global.logger.info("owner.betScore:" + owner.betScore); Global.logger.info("room.lastRaiseSeat:" + room.lastRaiseSeat); @@ -109,6 +109,7 @@ public class EXPlayerCallState extends StateBase { EXPlayer player = CardCheck.CheckCall(room); room.win = player; room.roomResult(); + room.endGame(); } /** @@ -118,9 +119,14 @@ public class EXPlayerCallState extends StateBase { */ public void addSidePot(EXPlayer owner) { EXRoom room = owner.getRoom(); - + System.out.println("当前需跟注分数"+room.callScore); // 扣除下注分数 - owner.lostScore = 0 - room.callScore; + owner.lostScore = room.callScore-owner.needScore; + //计算总下注分数 + owner.totalLostScore += owner.lostScore; + System.out.println("当前已下注分数"+room.callScore); + System.out.println("加注后需要补加的分数:owner.needScore"+owner.needScore); + System.out.println("总下注分数owner.totalLostScore"+owner.totalLostScore); room.sidePot += Math.abs(owner.lostScore); // 广播协议 @@ -128,7 +134,7 @@ public class EXPlayerCallState extends StateBase { param.putInt("sidePot", room.sidePot); for (Entry entry : room.playerMapBySeat.entrySet()) { EXPlayer player = (EXPlayer) entry.getValue(); - param.putInt("seat_" + player.seat, player.baseScore - player.totalLostScore + player.lostScore); + param.putInt("seat_" + player.seat, player.baseScore - player.totalLostScore); } room.broadCastToClient(0, Config.GAME_EVT_RESULT, param); } diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCheckState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCheckState.java index 0944042..3b7d370 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCheckState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerCheckState.java @@ -29,17 +29,21 @@ public class EXPlayerCheckState extends StateBase { // 追加操作,广播给客户端 TObject param = new TObject(); - param.putInt("seat", owner.seat + 1); + if (owner.seat >= room.playerMapByPlaying.size()) { + param.putInt("seat", 1); + } else { + param.putInt("seat", owner.seat + 1); + } + List actions = new ArrayList(); actions.add(Integer.parseInt(Config.GAME_BET)); - actions.add(Integer.parseInt(Config.GAME_CALL)); actions.add(Integer.parseInt(Config.GAME_FOLD)); + actions.add(Integer.parseInt(Config.GAME_ALL_IN)); ITArray actionArray = Util.toTArray(actions); param.putTArray("actions", actionArray); room.broadCastToClient(0, Config.GAME_EVT_CHANGE_ACTIVE_PLAYER, param); // 记录房间当前操作 - room.actionType =Integer.parseInt( Config.GAME_CHECK); - + room.actionType = Integer.parseInt(Config.GAME_CHECK); toNextState(owner); } diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerFoldState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerFoldState.java index b6ebfa9..952a954 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerFoldState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerFoldState.java @@ -74,6 +74,7 @@ public class EXPlayerFoldState extends StateBase { EXPlayer player = CardCheck.CheckCall(room); room.win = player; room.roomResult(); + room.endGame(); } /** diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerRaiseState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerRaiseState.java index e86111a..39ec611 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerRaiseState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/player/state/EXPlayerRaiseState.java @@ -91,14 +91,17 @@ public class EXPlayerRaiseState extends StateBase { */ public void addSidePot(EXPlayer owner) { EXRoom room = owner.getRoom(); - // 当前叫分 + System.out.println("当前加注owner.betScore"+owner.betScore); +// // 当前叫分 room.callScore += owner.betScore; - // 记录每轮下注分数 -// owner.betScore = room.callScore; - // 扣除下注分数 - owner.lostScore = 0 - room.callScore; + System.out.println("应下注"+room.callScore); - room.sidePot += Math.abs(room.callScore); + // 扣除下注分数 + owner.lostScore = room.callScore-+owner.needScore; + System.out.println("增加的owner.lostScore"+owner.lostScore); + + owner.totalLostScore += owner.lostScore; + room.sidePot += Math.abs(owner.lostScore); if (owner.seat == 1) { // 最后加注位置 room.lastRaiseSeat = room.playerMapBySeat.size(); @@ -106,12 +109,18 @@ public class EXPlayerRaiseState extends StateBase { room.lastRaiseSeat = owner.seat - 1; } + System.out.println("底池room.sidePot"+room.sidePot); + System.out.println("当前已下注分数"+room.callScore); + System.out.println("加注后需要补加的分数:owner.needScore"+owner.needScore); + System.out.println("总下注分数owner.totalLostScore"+owner.totalLostScore); + owner.needScore +=owner.lostScore; + // 广播协议 TObject param = new TObject(); param.putInt("sidePot", room.sidePot); for (Entry entry : room.playerMapBySeat.entrySet()) { EXPlayer player = (EXPlayer) entry.getValue(); - param.putInt("seat_" + player.seat, player.baseScore - player.totalLostScore + player.lostScore); + param.putInt("seat_" + player.seat, player.baseScore - player.totalLostScore); } room.broadCastToClient(0, Config.GAME_EVT_RESULT, param); } diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomDealState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomDealState.java index ce28fef..5ddde9e 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomDealState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomDealState.java @@ -46,12 +46,16 @@ public class EXRoomDealState extends StateBase { if (room.round == 0) { for (Entry entry : room.playerMapBySeat.entrySet()) { EXPlayer player = (EXPlayer) entry.getValue(); - param.putInt("seat_" + player.seat, 300); + //底分 + int baseScore = room.config.getInt(Config.ROOM_CONFIG_BASE_SCORE); + // + int riin_score = room.config.getInt(Config.ROOM_CONFIG_RIIN_SCORE); + + param.putInt("seat_" + player.seat, 300-baseScore); player.baseScore = 300; } } - room.broadCastToClient(0, Config.GAME_EVT_RESULT, param); this.toNextState(room); diff --git a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomSetpState.java b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomSetpState.java index 9bdaf64..90b66a5 100644 --- a/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomSetpState.java +++ b/puke/suoha/game_pk_suoha/src/main/java/extend/pk/room/state/EXRoomSetpState.java @@ -20,11 +20,11 @@ public class EXRoomSetpState extends StateBase { public void enter(EXRoom owner) { EXPlayer player = null; if (owner.activeSeat == 0) { - player = (EXPlayer) owner.playerMapBySeat.get(owner.bankerSeat); + player = (EXPlayer) owner.playerMapByPlaying.get(owner.bankerSeat); } else { - player = (EXPlayer) owner.playerMapBySeat.get(owner.activeSeat); + player = (EXPlayer) owner.playerMapByPlaying.get(owner.activeSeat); int nextSeat = player.nextSeat; - player = (EXPlayer) owner.playerMapBySeat.get(nextSeat); + player = (EXPlayer) owner.playerMapByPlaying.get(nextSeat); } player.stateMachine.changeState(Global.getState(EXPlayerWaitState.class));