Added Explosion Block Listener
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package dev.tatsi.reloadmc.smp;
|
||||
|
||||
import dev.tatsi.reloadmc.smp.command.DeathStatsCommand;
|
||||
import dev.tatsi.reloadmc.smp.listener.ExplosionBlockListener;
|
||||
import dev.tatsi.reloadmc.smp.listener.PlayerDeathListener;
|
||||
import dev.tatsi.reloadmc.smp.listener.PlayerJoinLeaveListener;
|
||||
import dev.tatsi.reloadmc.smp.listener.PrettyChatListener;
|
||||
@@ -21,6 +22,7 @@ public final class ReloadMC extends JavaPlugin {
|
||||
getServer().getPluginManager().registerEvents(new PlayerDeathListener(deathCounterManager), this);
|
||||
getServer().getPluginManager().registerEvents(new PlayerJoinLeaveListener(), this);
|
||||
getServer().getPluginManager().registerEvents(new TabPingListener(this), this);
|
||||
getServer().getPluginManager().registerEvents(new ExplosionBlockListener(), this);
|
||||
|
||||
// Register commands
|
||||
getCommand("deathstats").setExecutor(new DeathStatsCommand(deathCounterManager));
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package dev.tatsi.reloadmc.smp.listener;
|
||||
|
||||
import org.bukkit.entity.Creeper;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.EntityExplodeEvent;
|
||||
|
||||
/**
|
||||
* @author Thatsaphorn Atchariyaphap
|
||||
* @since 04.09.25
|
||||
*/
|
||||
public class ExplosionBlockListener implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
|
||||
public void onCreeperExplode(EntityExplodeEvent event) {
|
||||
if (!(event.getEntity() instanceof Creeper)) {
|
||||
event.setCancelled(true);
|
||||
return;
|
||||
}
|
||||
|
||||
// Entfernt alle Blöcke, die sonst zerstört würden.
|
||||
event.blockList().clear();
|
||||
|
||||
// Optional (je nach Geschmack): Loot/„Ertrag“ der Explosion auf 0 setzen.
|
||||
// Hat bei Creepern i.d.R. keine Relevanz, schadet aber nicht.
|
||||
event.setYield(0f);
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
name: reloadmc_smp
|
||||
version: '1.0.0'
|
||||
name: ReloadMCSMP
|
||||
version: '1.0.1'
|
||||
main: dev.tatsi.reloadmc.smp.ReloadMC
|
||||
api-version: '1.21'
|
||||
prefix: CorePlugin
|
||||
|
||||
Reference in New Issue
Block a user