2016-04-01 17:59:53 +02:00

64 lines
2.5 KiB
Java

package cicaprojekt;
import java.util.HashMap;
import java.util.Map;
public abstract class Tile {
protected Map<Direction, Tile> adjacentTile;
private Pickable itemOnTile;
public Tile(){
Menu.addTab();
System.out.println(">" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.Tile()");
adjacentTile = new HashMap<Direction, Tile>();
adjacentTile.put(Direction.NORTH, Field.testField);
adjacentTile.put(Direction.EAST, Field.testField);
adjacentTile.put(Direction.SOUTH, Field.testField);
adjacentTile.put(Direction.WEST, Field.testField);
itemOnTile = new Box();
System.out.println("<" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.Tile()");
Menu.removeTab();
}
public Tile getAdjacentTile(Direction direction) {
Menu.addTab();
System.out.println(">" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.getAdjacentTile(" + direction.name() + ")");
System.out.println("<" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.getAdjacentTile(" + direction.name() + ")");
Menu.removeTab();
return adjacentTile.get(direction);
}
public void setAdajacentTile(Tile newTile, Direction direction) {
Menu.addTab();
System.out.println(">" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.setAdjacentTile(" + "newTile, " + direction.name() + ")");
System.out.println("<" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.setAdjacentTile(" + "newTile, " + direction.name() + ")");
Menu.removeTab();
}
public abstract void spawnStargate(Stargate stargate, Direction direction);
public abstract void onEntry();
public abstract void onExit();
public Pickable removeItemFromTile() {
Menu.addTab();
System.out.println(">" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.removeItemFromTile()");
Pickable item = itemOnTile;
itemOnTile = null;
System.out.println("<" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.removeItemFromTile()");
Menu.removeTab();
return item;
}
public void setItemOnTile(Pickable item) {
Menu.addTab();
System.out.println(">" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.setItemOnTile(" + "item" + ")");
itemOnTile = item;
System.out.println("<" + "[" + ":" + this.getClass().getSimpleName() + "]" + Menu.tabulator + "Tile.setItemOnTile(" + "item" + ")");
Menu.removeTab();
}
}