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(); } }