mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 19:55:48 +00:00
54 lines
1.6 KiB
Java
54 lines
1.6 KiB
Java
|
package me.mrCookieSlime.Slimefun.holograms;
|
|||
|
|
|||
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Math.DoubleHandler;
|
|||
|
import me.mrCookieSlime.Slimefun.SlimefunStartup;
|
|||
|
|
|||
|
import org.bukkit.Bukkit;
|
|||
|
import org.bukkit.Location;
|
|||
|
import org.bukkit.block.Block;
|
|||
|
import org.bukkit.entity.ArmorStand;
|
|||
|
import org.bukkit.entity.Entity;
|
|||
|
|
|||
|
public class EnergyHologram {
|
|||
|
|
|||
|
public static void update(Block b, double supply, double demand) {
|
|||
|
update(b, demand > supply ? ("<EFBFBD>4<EFBFBD>l- <20>c" + DoubleHandler.getFancyDouble(Math.abs(supply - demand)) + " <20>7J <20>e\u26A1"): ("<EFBFBD>2<EFBFBD>l+ <20>a" + DoubleHandler.getFancyDouble(supply - demand) + " <20>7J <20>e\u26A1"));
|
|||
|
}
|
|||
|
|
|||
|
public static void update(final Block b, final String name) {
|
|||
|
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
|||
|
|
|||
|
@Override
|
|||
|
public void run() {
|
|||
|
ArmorStand hologram = getArmorStand(b);
|
|||
|
hologram.setCustomName(name);
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
|
|||
|
public static void remove(final Block b) {
|
|||
|
Bukkit.getScheduler().scheduleSyncDelayedTask(SlimefunStartup.instance, new Runnable() {
|
|||
|
|
|||
|
@Override
|
|||
|
public void run() {
|
|||
|
ArmorStand hologram = getArmorStand(b);
|
|||
|
hologram.remove();
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
|
|||
|
private static ArmorStand getArmorStand(Block b) {
|
|||
|
Location l = new Location(b.getWorld(), b.getX() + 0.5, b.getY() - 0.7F, b.getZ() + 0.5);
|
|||
|
|
|||
|
for (Entity n: l.getChunk().getEntities()) {
|
|||
|
if (n instanceof ArmorStand) {
|
|||
|
if (n.getCustomName() != null && l.distanceSquared(n.getLocation()) < 0.4D) return (ArmorStand) n;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
ArmorStand hologram = ArmorStandFactory.createHidden(l);
|
|||
|
return hologram;
|
|||
|
}
|
|||
|
|
|||
|
}
|