Files
Zoelda/Zoelda/src/main/DoorTile.java
2021-06-28 09:08:51 +02:00

64 lines
1.2 KiB
Java

package main;
import ea.Ticker;
import main.entities.player.Player;
import main.maps.ImageMap;
public class DoorTile extends Tile implements Ticker {
public static final int TOP = 0;
public static final int BOTTOM = 1;
public static final int LEFT = 2;
public static final int RIGHT = 3;
private int side;
private DoorTile connected;
private ImageMap map;
private boolean waitForLeave;
public DoorTile(float x, float y, ImageMap map) {
super(Tile.DOOR, x, y);
this.map = map;
}
@Override
public void tick() {
if (Main.instance.getWorld() != null) {
Player player = Main.instance.getWorld().getPlayer();
float dist = player.dist(posX + 0.5f, posY + 0.5f);
if (dist < 0.5f) {
if (!waitForLeave) {
Main.instance.getWorld().changeMap(this);
waitForLeave = true;
}
} else {
waitForLeave = false;
}
}
}
public int getSide() {
return side;
}
public void setSide(int side) {
this.side = side;
}
public void setConnectedDoor(DoorTile door) {
connected = door;
}
public DoorTile getConnectedDoor() {
return connected;
}
public ImageMap getMap() {
return map;
}
public void waitForLeave() {
waitForLeave = true;
}
}