Select Git revision
Forked from
COUETOUX Basile / FirefighterStarter
Source project has a limited visibility.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Square.java 989 B
package model;
import java.util.Optional;
public class Square {
private Tile tile;
private Square[] neighboringSquares;
private Square(Tile tile, Square[] neighboringSquares) {
this.tile = tile;
this.neighboringSquares = neighboringSquares;
}
public Square(){
this(null, new Square[CardinalDirection.NUMBER_OF_DIRECTIONS]);
}
public Optional<Tile> getSquareTile(){
if(!hasTile())
return Optional.empty();
return Optional.of(tile);
}
public void add(Tile tile) {
this.tile = tile;
}
public boolean hasTile() {
return tile != null;
}
public Optional<Tile> getNeighboringSquare(CardinalDirection side) {
if (neighboringSquares[side.ordinal()] == null)
return Optional.empty();
return neighboringSquares[side.ordinal()].getSquareTile();
}
public void setNeighboringSquare(Square neighboringSquare, CardinalDirection direction) {
this.neighboringSquares[direction.ordinal()] = neighboringSquare;
}
}