refactor mini

This commit is contained in:
tiko
2026-02-05 15:28:50 +01:00
parent 754795c958
commit 2fc2b7ce97
3 changed files with 20 additions and 12 deletions

View File

@@ -35,7 +35,7 @@ public final class BattleTowersPlugin extends JavaPlugin {
);
getServer().getPluginManager().registerEvents(
new TowerBossDeathListener(), this
new TowerBossDeathListener(towerKey), this
);
getLogger().info("BattleTowers enabled!");

View File

@@ -1,25 +1,34 @@
package fyi.tiko.battletowers.boss;
import org.bukkit.NamespacedKey;
import org.bukkit.entity.IronGolem;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDeathEvent;
import static fyi.tiko.battletowers.BattleTowersPlugin.instance;
import org.bukkit.persistence.PersistentDataType;
public class TowerBossDeathListener implements Listener {
private final NamespacedKey towerKey;
public TowerBossDeathListener(NamespacedKey towerKey) {
this.towerKey = towerKey;
}
@EventHandler
public void onBossDeath(EntityDeathEvent event) {
public void onBossDeath(final EntityDeathEvent event) {
if (!(event.getEntity() instanceof IronGolem golem)) return;
if (!(event.getEntity() instanceof IronGolem golem)) {
return;
}
var data = golem.getPersistentDataContainer().get(
instance().towerKey(),
org.bukkit.persistence.PersistentDataType.STRING
final var data = golem.getPersistentDataContainer().get(
towerKey,
PersistentDataType.STRING
);
if (data == null) return;
if (data == null) {
return;
}
// Tower Collapse Start
TowerDestroyer.startCollapse(golem.getLocation(), event.getEntity().getKiller());

View File

@@ -1,6 +1,7 @@
package fyi.tiko.battletowers.loot;
import fyi.tiko.battletowers.boss.TowerBossSpawner;
import org.bukkit.block.Chest;
import org.bukkit.entity.IronGolem;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
@@ -11,7 +12,7 @@ public class TowerChestListener implements Listener {
@EventHandler
public void onChestOpen(InventoryOpenEvent event) {
if (!(event.getInventory().getHolder() instanceof org.bukkit.block.Chest)) {
if (!(event.getInventory().getHolder() instanceof Chest)) {
return;
}
@@ -19,9 +20,7 @@ public class TowerChestListener implements Listener {
// Search nearby golems
for (var entity : player.getNearbyEntities(8, 8, 8)) {
if (entity instanceof IronGolem golem) {
if (!golem.hasAI()) {
TowerBossSpawner.wakeUp(golem);
golem.setTarget(player);