Disable pause function in network mode
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@536 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
9b5f3648ed
commit
b62babba45
9 changed files with 117 additions and 89 deletions
|
@ -76,6 +76,11 @@ public class RoundControl {
|
|||
private Event1<Score> endOfRoundEvent = new Event1<Score>();
|
||||
protected List<Connection> connections = new ArrayList<Connection>();
|
||||
private boolean roundFinished;
|
||||
private boolean mayPause;
|
||||
|
||||
public RoundControl(IRoundState roundState, IView view) {
|
||||
this(roundState, view, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new RoundControl using the given gameState and view
|
||||
|
@ -85,9 +90,10 @@ public class RoundControl {
|
|||
* @param view
|
||||
* view used for user interaction
|
||||
*/
|
||||
public RoundControl(IRoundState roundState, IView view) {
|
||||
protected RoundControl(IRoundState roundState, IView view, boolean mayPause) {
|
||||
this.roundState = roundState;
|
||||
this.view = view;
|
||||
this.mayPause = mayPause;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -221,7 +227,8 @@ public class RoundControl {
|
|||
view.getPlayerPanel().setEndTurnMode(turnMode);
|
||||
}
|
||||
|
||||
turnControl.setup(new ITurnControl.TurnInfo(roundState, turnMode),
|
||||
turnControl.setup(
|
||||
new ITurnControl.TurnInfo(roundState, turnMode, mayPause),
|
||||
roundState.getGameSettings(), view);
|
||||
turnControl.getEndOfTurnEvent().add(
|
||||
new IListener2<IRoundState, InvalidTurnInfo>() {
|
||||
|
|
|
@ -15,7 +15,7 @@ public class NetworkRoundControl extends RoundControl {
|
|||
|
||||
public NetworkRoundControl(IRoundState roundState, IView view,
|
||||
final IConnectionControl connectionControl, boolean startActive) {
|
||||
super(roundState, view);
|
||||
super(roundState, view, false);
|
||||
|
||||
this.connectionControl = connectionControl;
|
||||
currentlyActive = startActive;
|
||||
|
|
|
@ -53,8 +53,4 @@ public class NetworkTurnControl extends AbstractTurnControl {
|
|||
@Override
|
||||
protected void timeOut() {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void pauseTurn() {
|
||||
}
|
||||
}
|
||||
|
|
|
@ -59,6 +59,10 @@ public abstract class AbstractTurnControl implements ITurnControl {
|
|||
}
|
||||
|
||||
protected void pauseTurn() {
|
||||
if (!turnInfo.isMayPause()) {
|
||||
return;
|
||||
}
|
||||
|
||||
timer.stopTimer();
|
||||
view.enablePauseMode(true);
|
||||
}
|
||||
|
@ -108,6 +112,8 @@ public abstract class AbstractTurnControl implements ITurnControl {
|
|||
resumeTurn();
|
||||
}
|
||||
}));
|
||||
|
||||
view.setMayPause(info.isMayPause());
|
||||
}
|
||||
|
||||
protected void cleanUp() {
|
||||
|
|
|
@ -73,6 +73,8 @@ public interface ITurnControl {
|
|||
|
||||
private TurnMode turnMode;
|
||||
|
||||
private boolean mayPause;
|
||||
|
||||
/**
|
||||
* Creates a new TurnInfo instance
|
||||
*
|
||||
|
@ -81,7 +83,7 @@ public interface ITurnControl {
|
|||
* @param turnMode
|
||||
* the turn mode
|
||||
*/
|
||||
public TurnInfo(IRoundState roundState, TurnMode turnMode) {
|
||||
public TurnInfo(IRoundState roundState, TurnMode turnMode, boolean mayPause) {
|
||||
this.roundState = roundState;
|
||||
|
||||
oldTable = roundState.getTable();
|
||||
|
@ -91,6 +93,8 @@ public interface ITurnControl {
|
|||
this.hand = (IHand) oldHand.clone();
|
||||
|
||||
this.turnMode = turnMode;
|
||||
|
||||
this.mayPause = mayPause;
|
||||
}
|
||||
|
||||
public IRoundState getRoundState() {
|
||||
|
@ -150,5 +154,9 @@ public interface ITurnControl {
|
|||
public TurnMode getTurnMode() {
|
||||
return turnMode;
|
||||
}
|
||||
|
||||
public boolean isMayPause() {
|
||||
return mayPause;
|
||||
}
|
||||
}
|
||||
}
|
Reference in a new issue