43 lines
1.2 KiB
Java
43 lines
1.2 KiB
Java
package me.paradoxpixel.themepark.attraction.sign;
|
|
|
|
import me.paradoxpixel.themepark.api.attraction.Attraction;
|
|
import me.paradoxpixel.themepark.api.attraction.component.Status;
|
|
import me.paradoxpixel.themepark.attraction.status.StatusManager;
|
|
import me.paradoxpixel.themepark.utils.Utils;
|
|
import org.bukkit.Location;
|
|
import org.bukkit.block.Sign;
|
|
|
|
public class StatusSign {
|
|
|
|
private Attraction attraction;
|
|
private Location location;
|
|
|
|
public StatusSign(Attraction attraction, Location location) {
|
|
this.attraction = attraction;
|
|
this.location = location;
|
|
}
|
|
|
|
public Attraction getAttraction() {
|
|
return attraction;
|
|
}
|
|
|
|
public Location getLocation() {
|
|
return location;
|
|
}
|
|
|
|
public void update() {
|
|
Status status = attraction.getStatus();
|
|
if(!location.getChunk().isLoaded())
|
|
location.getChunk().load();
|
|
|
|
if(!(location.getBlock().getState() instanceof Sign)) {
|
|
SignManager.removeSign(this);
|
|
return;
|
|
}
|
|
|
|
Sign sign = (Sign) location.getBlock().getState();
|
|
sign.setLine(2, Utils.color(StatusManager.getName(status)));
|
|
sign.update();
|
|
}
|
|
|
|
}
|