修改结算积分
parent
70bf265812
commit
bc6d2d0abb
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -54,7 +54,7 @@ public class EXGameController extends GameController {
|
||||||
owner.stateMachine.changeState(Global.getState(EXPlayerBetState.class));
|
owner.stateMachine.changeState(Global.getState(EXPlayerBetState.class));
|
||||||
} else if (id == Integer.parseInt(Config.GAME_CALL)) {
|
} else if (id == Integer.parseInt(Config.GAME_CALL)) {
|
||||||
EXPlayer player = (EXPlayer) owner;
|
EXPlayer player = (EXPlayer) owner;
|
||||||
player.betScore = player.getRoom().callScore;
|
// player.betScore = player.getRoom().callScore;
|
||||||
owner.stateMachine.changeState(Global.getState(EXPlayerCallState.class));
|
owner.stateMachine.changeState(Global.getState(EXPlayerCallState.class));
|
||||||
} else if (id == Integer.parseInt(Config.GAME_ALL_IN)) {
|
} else if (id == Integer.parseInt(Config.GAME_ALL_IN)) {
|
||||||
owner.stateMachine.changeState(Global.getState(EXPlayerAllInState.class));
|
owner.stateMachine.changeState(Global.getState(EXPlayerAllInState.class));
|
||||||
|
|
@ -101,7 +101,6 @@ public class EXGameController extends GameController {
|
||||||
}
|
}
|
||||||
obj.putTObject("settle_log", player.settleLog.toTObject());
|
obj.putTObject("settle_log", player.settleLog.toTObject());
|
||||||
obj.putInt("total_score", player.score.total_score);
|
obj.putInt("total_score", player.score.total_score);
|
||||||
|
|
||||||
}
|
}
|
||||||
info.addTObject(obj);
|
info.addTObject(obj);
|
||||||
}
|
}
|
||||||
|
|
@ -159,6 +158,8 @@ public class EXGameController extends GameController {
|
||||||
player.cardInhand.add(room.card.deal());
|
player.cardInhand.add(room.card.deal());
|
||||||
}
|
}
|
||||||
player.showCardInhand.clear();
|
player.showCardInhand.clear();
|
||||||
|
player.needScore=0;
|
||||||
|
|
||||||
for(int j=1;j<player.cardInhand.size();j++) {
|
for(int j=1;j<player.cardInhand.size();j++) {
|
||||||
player.showCardInhand.add(player.cardInhand.get(j));
|
player.showCardInhand.add(player.cardInhand.get(j));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -42,9 +42,17 @@ public class EXRoom extends Room {
|
||||||
/** 边池 */
|
/** 边池 */
|
||||||
public int sidePot = 0;
|
public int sidePot = 0;
|
||||||
|
|
||||||
/** 当前叫分 */
|
// /** 当前叫分 */
|
||||||
public int callScore = 0;
|
public int callScore = 0;
|
||||||
|
|
||||||
|
/** 最低下注分 */
|
||||||
|
public int minScore = 0;
|
||||||
|
|
||||||
|
/** 最高下注分 */
|
||||||
|
public int maxScore = 0;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 下注次数
|
* 下注次数
|
||||||
*/
|
*/
|
||||||
|
|
@ -62,7 +70,7 @@ public class EXRoom extends Room {
|
||||||
public void clear() {
|
public void clear() {
|
||||||
this.round = 0;
|
this.round = 0;
|
||||||
this.raiseRound = 0;
|
this.raiseRound = 0;
|
||||||
this.callScore = 0;
|
// this.callScore = 0;
|
||||||
this.callCount = 0;
|
this.callCount = 0;
|
||||||
this.sidePot = 0;
|
this.sidePot = 0;
|
||||||
this.win = null;
|
this.win = null;
|
||||||
|
|
@ -136,10 +144,15 @@ public class EXRoom extends Room {
|
||||||
*/
|
*/
|
||||||
public void addAllScore(Player destPlayer) {
|
public void addAllScore(Player destPlayer) {
|
||||||
|
|
||||||
EXPlayer dp = (EXPlayer) destPlayer;
|
|
||||||
|
|
||||||
boolean bSpring = false;
|
|
||||||
for (Entry<Integer, Player> entry : this.playerMapByPlaying.entrySet()) {
|
for (Entry<Integer, Player> 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
|
@Override
|
||||||
public void endGame() {
|
public void endGame() {
|
||||||
addAllScore(win);
|
addAllScore(win);
|
||||||
|
Global.logger.error("EXRoom: endGame");
|
||||||
|
|
||||||
EXPlayBack pb = (EXPlayBack) this.playBackData;
|
EXPlayBack pb = (EXPlayBack) this.playBackData;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ public class EXPlayerAllInState extends StateBase<EXPlayer> {
|
||||||
owner.callScoreList.put(room.round, owner.baseScore - owner.totalLostScore);
|
owner.callScoreList.put(room.round, owner.baseScore - owner.totalLostScore);
|
||||||
// 当前叫分
|
// 当前叫分
|
||||||
owner.betScore = 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();
|
TObject param = new TObject();
|
||||||
if (owner.seat >= room.playerMapByPlaying.size()) {
|
if (owner.seat >= room.playerMapByPlaying.size()) {
|
||||||
|
|
@ -120,7 +120,7 @@ public class EXPlayerAllInState extends StateBase<EXPlayer> {
|
||||||
|
|
||||||
// 扣除下注分数
|
// 扣除下注分数
|
||||||
owner.lostScore = 0 - owner.betScore;
|
owner.lostScore = 0 - owner.betScore;
|
||||||
room.callScore = 0;
|
// room.callScore = 0;
|
||||||
room.sidePot += owner.betScore;
|
room.sidePot += owner.betScore;
|
||||||
room.raiseRound = 0;
|
room.raiseRound = 0;
|
||||||
// 广播协议
|
// 广播协议
|
||||||
|
|
|
||||||
|
|
@ -113,17 +113,18 @@ public class EXPlayerBetState extends StateBase<EXPlayer> {
|
||||||
public void addSidePot(EXPlayer owner) {
|
public void addSidePot(EXPlayer owner) {
|
||||||
EXRoom room = owner.getRoom();
|
EXRoom room = owner.getRoom();
|
||||||
// 初始化每轮打出的总分数
|
// 初始化每轮打出的总分数
|
||||||
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
// for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
||||||
EXPlayer player = (EXPlayer) entry.getValue();
|
// EXPlayer player = (EXPlayer) entry.getValue();
|
||||||
player.totalLostScore += player.lostScore;
|
// player.totalLostScore += player.lostScore;
|
||||||
player.lostScore = 0;
|
// player.lostScore = 0;
|
||||||
Global.logger.info("player:" + player.playerid + "--totalLostScore:" + player.totalLostScore
|
// Global.logger.info("player:" + player.playerid + "--totalLostScore:" + player.totalLostScore
|
||||||
+ "--lostScore:" + player.lostScore);
|
// + "--lostScore:" + player.lostScore);
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
owner.totalLostScore += owner.betScore;
|
||||||
// 扣除下注分数
|
// 扣除下注分数
|
||||||
owner.lostScore = 0 - owner.betScore;
|
owner.lostScore = owner.betScore;
|
||||||
room.callScore = 0;
|
// room.callScore = 0;
|
||||||
room.sidePot += owner.betScore;
|
room.sidePot += owner.betScore;
|
||||||
room.raiseRound = 0;
|
room.raiseRound = 0;
|
||||||
// 广播协议
|
// 广播协议
|
||||||
|
|
@ -131,7 +132,7 @@ public class EXPlayerBetState extends StateBase<EXPlayer> {
|
||||||
param.putInt("sidePot", room.sidePot);
|
param.putInt("sidePot", room.sidePot);
|
||||||
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
||||||
EXPlayer player = (EXPlayer) entry.getValue();
|
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);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,14 +42,14 @@ public class EXPlayerCallState extends StateBase<EXPlayer> {
|
||||||
addSidePot(owner);
|
addSidePot(owner);
|
||||||
// 记录每轮下注分数
|
// 记录每轮下注分数
|
||||||
owner.callScoreList.put(room.round, owner.betScore);
|
owner.callScoreList.put(room.round, owner.betScore);
|
||||||
|
owner.needScore +=owner.betScore;
|
||||||
// 追加操作,广播给客户端
|
// 追加操作,广播给客户端
|
||||||
TObject param = new TObject();
|
TObject param = new TObject();
|
||||||
|
|
||||||
|
|
||||||
room.callCount += 1;
|
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("owner.betScore:" + owner.betScore);
|
||||||
Global.logger.info("room.lastRaiseSeat:" + room.lastRaiseSeat);
|
Global.logger.info("room.lastRaiseSeat:" + room.lastRaiseSeat);
|
||||||
|
|
||||||
|
|
@ -109,6 +109,7 @@ public class EXPlayerCallState extends StateBase<EXPlayer> {
|
||||||
EXPlayer player = CardCheck.CheckCall(room);
|
EXPlayer player = CardCheck.CheckCall(room);
|
||||||
room.win = player;
|
room.win = player;
|
||||||
room.roomResult();
|
room.roomResult();
|
||||||
|
room.endGame();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -118,9 +119,14 @@ public class EXPlayerCallState extends StateBase<EXPlayer> {
|
||||||
*/
|
*/
|
||||||
public void addSidePot(EXPlayer owner) {
|
public void addSidePot(EXPlayer owner) {
|
||||||
EXRoom room = owner.getRoom();
|
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);
|
room.sidePot += Math.abs(owner.lostScore);
|
||||||
// 广播协议
|
// 广播协议
|
||||||
|
|
@ -128,7 +134,7 @@ public class EXPlayerCallState extends StateBase<EXPlayer> {
|
||||||
param.putInt("sidePot", room.sidePot);
|
param.putInt("sidePot", room.sidePot);
|
||||||
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
||||||
EXPlayer player = (EXPlayer) entry.getValue();
|
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);
|
room.broadCastToClient(0, Config.GAME_EVT_RESULT, param);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,17 +29,21 @@ public class EXPlayerCheckState extends StateBase<EXPlayer> {
|
||||||
|
|
||||||
// 追加操作,广播给客户端
|
// 追加操作,广播给客户端
|
||||||
TObject param = new TObject();
|
TObject param = new TObject();
|
||||||
|
if (owner.seat >= room.playerMapByPlaying.size()) {
|
||||||
|
param.putInt("seat", 1);
|
||||||
|
} else {
|
||||||
param.putInt("seat", owner.seat + 1);
|
param.putInt("seat", owner.seat + 1);
|
||||||
|
}
|
||||||
|
|
||||||
List<Integer> actions = new ArrayList<Integer>();
|
List<Integer> actions = new ArrayList<Integer>();
|
||||||
actions.add(Integer.parseInt(Config.GAME_BET));
|
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_FOLD));
|
||||||
|
actions.add(Integer.parseInt(Config.GAME_ALL_IN));
|
||||||
ITArray actionArray = Util.toTArray(actions);
|
ITArray actionArray = Util.toTArray(actions);
|
||||||
param.putTArray("actions", actionArray);
|
param.putTArray("actions", actionArray);
|
||||||
room.broadCastToClient(0, Config.GAME_EVT_CHANGE_ACTIVE_PLAYER, param);
|
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);
|
toNextState(owner);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -74,6 +74,7 @@ public class EXPlayerFoldState extends StateBase<EXPlayer> {
|
||||||
EXPlayer player = CardCheck.CheckCall(room);
|
EXPlayer player = CardCheck.CheckCall(room);
|
||||||
room.win = player;
|
room.win = player;
|
||||||
room.roomResult();
|
room.roomResult();
|
||||||
|
room.endGame();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -91,14 +91,17 @@ public class EXPlayerRaiseState extends StateBase<EXPlayer> {
|
||||||
*/
|
*/
|
||||||
public void addSidePot(EXPlayer owner) {
|
public void addSidePot(EXPlayer owner) {
|
||||||
EXRoom room = owner.getRoom();
|
EXRoom room = owner.getRoom();
|
||||||
// 当前叫分
|
System.out.println("当前加注owner.betScore"+owner.betScore);
|
||||||
|
// // 当前叫分
|
||||||
room.callScore += owner.betScore;
|
room.callScore += owner.betScore;
|
||||||
// 记录每轮下注分数
|
System.out.println("应下注"+room.callScore);
|
||||||
// owner.betScore = room.callScore;
|
|
||||||
// 扣除下注分数
|
|
||||||
owner.lostScore = 0 - 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) {
|
if (owner.seat == 1) {
|
||||||
// 最后加注位置
|
// 最后加注位置
|
||||||
room.lastRaiseSeat = room.playerMapBySeat.size();
|
room.lastRaiseSeat = room.playerMapBySeat.size();
|
||||||
|
|
@ -106,12 +109,18 @@ public class EXPlayerRaiseState extends StateBase<EXPlayer> {
|
||||||
room.lastRaiseSeat = owner.seat - 1;
|
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();
|
TObject param = new TObject();
|
||||||
param.putInt("sidePot", room.sidePot);
|
param.putInt("sidePot", room.sidePot);
|
||||||
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
||||||
EXPlayer player = (EXPlayer) entry.getValue();
|
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);
|
room.broadCastToClient(0, Config.GAME_EVT_RESULT, param);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,12 +46,16 @@ public class EXRoomDealState extends StateBase<EXRoom> {
|
||||||
if (room.round == 0) {
|
if (room.round == 0) {
|
||||||
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
for (Entry<Integer, Player> entry : room.playerMapBySeat.entrySet()) {
|
||||||
EXPlayer player = (EXPlayer) entry.getValue();
|
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;
|
player.baseScore = 300;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
room.broadCastToClient(0, Config.GAME_EVT_RESULT, param);
|
room.broadCastToClient(0, Config.GAME_EVT_RESULT, param);
|
||||||
this.toNextState(room);
|
this.toNextState(room);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -20,11 +20,11 @@ public class EXRoomSetpState extends StateBase<EXRoom> {
|
||||||
public void enter(EXRoom owner) {
|
public void enter(EXRoom owner) {
|
||||||
EXPlayer player = null;
|
EXPlayer player = null;
|
||||||
if (owner.activeSeat == 0) {
|
if (owner.activeSeat == 0) {
|
||||||
player = (EXPlayer) owner.playerMapBySeat.get(owner.bankerSeat);
|
player = (EXPlayer) owner.playerMapByPlaying.get(owner.bankerSeat);
|
||||||
} else {
|
} else {
|
||||||
player = (EXPlayer) owner.playerMapBySeat.get(owner.activeSeat);
|
player = (EXPlayer) owner.playerMapByPlaying.get(owner.activeSeat);
|
||||||
int nextSeat = player.nextSeat;
|
int nextSeat = player.nextSeat;
|
||||||
player = (EXPlayer) owner.playerMapBySeat.get(nextSeat);
|
player = (EXPlayer) owner.playerMapByPlaying.get(nextSeat);
|
||||||
}
|
}
|
||||||
player.stateMachine.changeState(Global.getState(EXPlayerWaitState.class));
|
player.stateMachine.changeState(Global.getState(EXPlayerWaitState.class));
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue