Add useful functions and class
This commit is contained in:
parent
bf37f32407
commit
4958c7688e
@ -13,6 +13,7 @@ import java.util.List;
|
||||
public abstract class DropObject extends AbstractAction {
|
||||
|
||||
protected final Point point;
|
||||
private final Direction direction;
|
||||
|
||||
public DropObject(Game game, Player player, Direction direction) throws NotValidDirectionException {
|
||||
super(game, player);
|
||||
@ -23,6 +24,7 @@ public abstract class DropObject extends AbstractAction {
|
||||
throw new NotValidDirectionException(direction + " isn't a valid position");
|
||||
}
|
||||
this.point = dropDirection;
|
||||
this.direction = direction;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -48,5 +50,8 @@ public abstract class DropObject extends AbstractAction {
|
||||
return listMoves;
|
||||
}
|
||||
|
||||
public Direction getDirection() {
|
||||
return direction;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -15,6 +15,7 @@ import java.util.List;
|
||||
public class Move extends AbstractAction {
|
||||
|
||||
private final Point point;
|
||||
private final Direction direction;
|
||||
|
||||
public Move(Game game, Player player, Direction direction) throws NotValidDirectionException {
|
||||
super(game, player);
|
||||
@ -25,6 +26,7 @@ public class Move extends AbstractAction {
|
||||
throw new NotValidDirectionException(direction + " isn't a valid position");
|
||||
}
|
||||
this.point = newPosition;
|
||||
this.direction = direction;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -64,4 +66,10 @@ public class Move extends AbstractAction {
|
||||
}
|
||||
return listMoves;
|
||||
}
|
||||
|
||||
public Direction getDirection() {
|
||||
return direction;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,38 @@
|
||||
package fr.lnl.game.server.games.action;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class ReunionSameAction {
|
||||
|
||||
private final String actionName;
|
||||
private List<Action> actions;
|
||||
|
||||
public ReunionSameAction(String actionName){
|
||||
this.actionName = actionName;
|
||||
this.actions = new ArrayList<>();
|
||||
}
|
||||
|
||||
public ReunionSameAction(String actionName, Action action){
|
||||
this(actionName);
|
||||
this.actions = new ArrayList<>(List.of(action));
|
||||
}
|
||||
|
||||
public List<Action> getActions() {
|
||||
return actions;
|
||||
}
|
||||
|
||||
|
||||
public String getActionName() {
|
||||
return actionName;
|
||||
}
|
||||
|
||||
public Action getAction(int value) {
|
||||
return getActions().get(value);
|
||||
}
|
||||
|
||||
public void addAction(Action action) {
|
||||
this.actions.add(action);
|
||||
}
|
||||
}
|
@ -36,6 +36,7 @@ public class Shot extends AbstractAction {
|
||||
for(int i=0; i < range; i++) {
|
||||
Point point = new Point(this.point.getA() + (i * direction.getDeltaX()),
|
||||
this.point.getB() + (i * direction.getDeltaY()));
|
||||
// TODO: 07/12/2021 WARNING -> probleme de nullpointerexeption sur getA car on verif pas la sortie de terrain
|
||||
Player player = game.getGrid().getBoard().get(point).getA();
|
||||
if(player != null) {
|
||||
player.decrementEnergy(player.getClassPlayer().getPenaltyShoot());
|
||||
@ -83,4 +84,8 @@ public class Shot extends AbstractAction {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public Point getPoint() {
|
||||
return point;
|
||||
}
|
||||
}
|
||||
|
@ -12,9 +12,9 @@ public class Maths {
|
||||
return Integer.parseInt(entry);
|
||||
}
|
||||
|
||||
public static float testFloat(String entry, Scanner scanner) {
|
||||
public static float testFloat(String entry, Scanner scanner, String error) {
|
||||
while (!isFloat(entry)) {
|
||||
System.out.println("\033[0;31mErreur de saisie\033[0m : Veuillez rentrer une valeur correcte !");
|
||||
System.out.println(Error.Entry_Error_Message + error);
|
||||
entry = scanner.next();
|
||||
}
|
||||
return Integer.parseInt(entry);
|
||||
|
Loading…
Reference in New Issue
Block a user