merge development into test #26
@@ -15,32 +15,55 @@
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* State where the player can choose a power card
|
||||||
|
*/
|
||||||
public class ChoosePowerCardState extends PowerCardStates {
|
public class ChoosePowerCardState extends PowerCardStates {
|
||||||
|
|
||||||
private final PowerCardState parent;
|
private final PowerCardState parent;
|
||||||
private ArrayList<BonusCard> possibleCards;
|
private ArrayList<BonusCard> possibleCards;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
* @param parent parent state
|
||||||
|
* @param logic game logic
|
||||||
|
*/
|
||||||
public ChoosePowerCardState(ClientState parent, ClientGameLogic logic) {
|
public ChoosePowerCardState(ClientState parent, ClientGameLogic logic) {
|
||||||
super(parent, logic);
|
super(parent, logic);
|
||||||
this.parent = (PowerCardState) parent;
|
this.parent = (PowerCardState) parent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enter the state
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void enter() {
|
public void enter() {
|
||||||
possibleCards = new ArrayList<>();
|
possibleCards = new ArrayList<>();
|
||||||
|
//TODO: logic.send(new RequestPossibleCardsMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exit the state
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void exit() {
|
public void exit() {
|
||||||
possibleCards = null;
|
possibleCards = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the possible cards
|
||||||
|
* @param msg possible cards message
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void received(PossibleCardMessage msg){
|
public void received(PossibleCardMessage msg){
|
||||||
possibleCards = (ArrayList<BonusCard>) msg.getPossibleCards();
|
possibleCards = (ArrayList<BonusCard>) msg.getPossibleCards();
|
||||||
logic.addNotification(new SelectableCardsNotification(possibleCards));
|
logic.addNotification(new SelectableCardsNotification(possibleCards));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select a card
|
||||||
|
* @param card card to select
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void selectCard(BonusCard card){
|
public void selectCard(BonusCard card){
|
||||||
if(card != null){
|
if(card != null){
|
||||||
@@ -50,6 +73,10 @@ public void selectCard(BonusCard card){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Receive a card
|
||||||
|
* @param msg card message
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void received(PlayCardMessage msg){
|
public void received(PlayCardMessage msg){
|
||||||
if(msg.getCard().equals(BonusCard.TURBO)){
|
if(msg.getCard().equals(BonusCard.TURBO)){
|
||||||
@@ -59,11 +86,19 @@ public void received(PlayCardMessage msg){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Receive a die now message
|
||||||
|
* @param msg dice now message
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void received(DiceNowMessage msg){
|
public void received(DiceNowMessage msg){
|
||||||
parent.getParent().setState(parent.getParent().getRollDice());
|
parent.getParent().setState(parent.getParent().getRollDice());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Receive a possible piece message and decide if the player can swap or shield
|
||||||
|
* @param msg possible piece message
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void received(PossiblePieceMessage msg){
|
public void received(PossiblePieceMessage msg){
|
||||||
if (msg.getEnemyPossiblePieces().isEmpty()){
|
if (msg.getEnemyPossiblePieces().isEmpty()){
|
||||||
|
|||||||
Reference in New Issue
Block a user