Turn Timer hat ein Interface
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@107 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
614d0935be
commit
e3e0e301a3
4 changed files with 23 additions and 3 deletions
|
@ -8,6 +8,7 @@ import java.util.Map;
|
||||||
|
|
||||||
import javax.swing.UIManager;
|
import javax.swing.UIManager;
|
||||||
|
|
||||||
|
import jrummikub.control.ITurnTimer;
|
||||||
import jrummikub.control.TurnTimer;
|
import jrummikub.control.TurnTimer;
|
||||||
import jrummikub.model.Position;
|
import jrummikub.model.Position;
|
||||||
import jrummikub.model.Stone;
|
import jrummikub.model.Stone;
|
||||||
|
@ -34,7 +35,7 @@ public class JRummikub {
|
||||||
final IView view = new jrummikub.view.impl.View();
|
final IView view = new jrummikub.view.impl.View();
|
||||||
|
|
||||||
view.setCurrentPlayerName("Player 1");
|
view.setCurrentPlayerName("Player 1");
|
||||||
TurnTimer testTimer = new TurnTimer(view);
|
ITurnTimer testTimer = new TurnTimer(view);
|
||||||
testTimer.startTimer();
|
testTimer.startTimer();
|
||||||
view.getTablePanel().setLeftPlayerName("Player 2");
|
view.getTablePanel().setLeftPlayerName("Player 2");
|
||||||
view.getTablePanel().setTopPlayerName("Player 3");
|
view.getTablePanel().setTopPlayerName("Player 3");
|
||||||
|
|
13
src/jrummikub/control/ITurnTimer.java
Normal file
13
src/jrummikub/control/ITurnTimer.java
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
package jrummikub.control;
|
||||||
|
|
||||||
|
import jrummikub.util.IEvent;
|
||||||
|
|
||||||
|
public interface ITurnTimer {
|
||||||
|
|
||||||
|
public abstract void startTimer();
|
||||||
|
|
||||||
|
public abstract void stopTimer();
|
||||||
|
|
||||||
|
public abstract IEvent getTimeRunOutEvent();
|
||||||
|
|
||||||
|
}
|
|
@ -10,7 +10,7 @@ import jrummikub.view.IView;
|
||||||
public class TurnControl {
|
public class TurnControl {
|
||||||
private Hand hand;
|
private Hand hand;
|
||||||
private ITable table;
|
private ITable table;
|
||||||
private TurnTimer timer;
|
private ITurnTimer timer;
|
||||||
private IView view;
|
private IView view;
|
||||||
private Event endOfTurnEvent = new Event();
|
private Event endOfTurnEvent = new Event();
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ import jrummikub.util.Event;
|
||||||
import jrummikub.util.IEvent;
|
import jrummikub.util.IEvent;
|
||||||
import jrummikub.view.IView;
|
import jrummikub.view.IView;
|
||||||
|
|
||||||
public class TurnTimer implements ActionListener {
|
public class TurnTimer implements ActionListener, ITurnTimer {
|
||||||
private IView view;
|
private IView view;
|
||||||
private int timeLeft = 60;
|
private int timeLeft = 60;
|
||||||
private Timer timer;
|
private Timer timer;
|
||||||
|
@ -23,14 +23,19 @@ public class TurnTimer implements ActionListener {
|
||||||
view.getPlayerPanel().setTimeLeft(timeLeft);
|
view.getPlayerPanel().setTimeLeft(timeLeft);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
public void startTimer() {
|
public void startTimer() {
|
||||||
timer.start();
|
timer.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
public void stopTimer() {
|
public void stopTimer() {
|
||||||
timer.stop();
|
timer.stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent arg0) {
|
public void actionPerformed(ActionEvent arg0) {
|
||||||
timeLeft--;
|
timeLeft--;
|
||||||
|
@ -41,6 +46,7 @@ public class TurnTimer implements ActionListener {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IEvent getTimeRunOutEvent() {
|
public IEvent getTimeRunOutEvent() {
|
||||||
return timeRunOutEvent;
|
return timeRunOutEvent;
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue