diff --git a/src/main/java/pw/kaboom/extras/Main.java b/src/main/java/pw/kaboom/extras/Main.java index f855b7f..37d6c0e 100644 --- a/src/main/java/pw/kaboom/extras/Main.java +++ b/src/main/java/pw/kaboom/extras/Main.java @@ -12,12 +12,10 @@ import pw.kaboom.extras.modules.block.BlockPhysics; import pw.kaboom.extras.modules.entity.EntityExplosion; import pw.kaboom.extras.modules.entity.EntityKnockback; import pw.kaboom.extras.modules.entity.EntitySpawn; -import pw.kaboom.extras.modules.entity.EntityTeleport; import pw.kaboom.extras.modules.player.*; import pw.kaboom.extras.modules.server.ServerCommand; import pw.kaboom.extras.modules.server.ServerGameRule; import pw.kaboom.extras.modules.server.ServerTabComplete; -import pw.kaboom.extras.modules.server.ServerTick; import java.io.File; import java.util.Collections; @@ -28,16 +26,6 @@ public final class Main extends JavaPlugin { @Override public void onLoad() { - /* Fill lists */ - Collections.addAll( - BlockPhysics.getBlockFaces(), - BlockFace.NORTH, - BlockFace.SOUTH, - BlockFace.WEST, - BlockFace.EAST, - BlockFace.UP - ); - /* Load missing config.yml defaults */ getConfig().options().copyDefaults(true); saveConfig(); @@ -80,7 +68,6 @@ public final class Main extends JavaPlugin { this.getServer().getPluginManager().registerEvents(new EntityExplosion(), this); this.getServer().getPluginManager().registerEvents(new EntityKnockback(), this); this.getServer().getPluginManager().registerEvents(new EntitySpawn(), this); - this.getServer().getPluginManager().registerEvents(new EntityTeleport(), this); /* Player-related modules */ this.getServer().getPluginManager().registerEvents(new PlayerChat(), this); @@ -96,7 +83,6 @@ public final class Main extends JavaPlugin { this.getServer().getPluginManager().registerEvents(new ServerCommand(), this); this.getServer().getPluginManager().registerEvents(new ServerGameRule(), this); this.getServer().getPluginManager().registerEvents(new ServerTabComplete(), this); - this.getServer().getPluginManager().registerEvents(new ServerTick(), this); /* Custom worlds */ this.getServer().createWorld( diff --git a/src/main/java/pw/kaboom/extras/modules/block/BlockCheck.java b/src/main/java/pw/kaboom/extras/modules/block/BlockCheck.java index 78f9204..ff3def4 100644 --- a/src/main/java/pw/kaboom/extras/modules/block/BlockCheck.java +++ b/src/main/java/pw/kaboom/extras/modules/block/BlockCheck.java @@ -3,39 +3,13 @@ package pw.kaboom.extras.modules.block; import org.bukkit.Chunk; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; -import org.bukkit.event.block.BlockPlaceEvent; -import org.bukkit.event.block.SignChangeEvent; import org.bukkit.event.world.ChunkUnloadEvent; public final class BlockCheck implements Listener { - @EventHandler - void onBlockPlace(final BlockPlaceEvent event) { - try { - final int maxItemStringLength = 3019; - - if (event.getItemInHand().toString().length() > maxItemStringLength) { - event.setCancelled(true); - } - - event.getBlockPlaced().getState(); - } catch (Exception exception) { - event.setCancelled(true); - } - } - @EventHandler void onChunkUnload(final ChunkUnloadEvent event) { for (Chunk chunk : event.getChunk().getWorld().getForceLoadedChunks()) { chunk.setForceLoaded(false); } } - - @EventHandler - void onSignChange(final SignChangeEvent event) { - try { - event.getLines(); - } catch (Exception exception) { - event.setCancelled(true); - } - } } diff --git a/src/main/java/pw/kaboom/extras/modules/block/BlockPhysics.java b/src/main/java/pw/kaboom/extras/modules/block/BlockPhysics.java index bb9adb9..4f1bbad 100644 --- a/src/main/java/pw/kaboom/extras/modules/block/BlockPhysics.java +++ b/src/main/java/pw/kaboom/extras/modules/block/BlockPhysics.java @@ -24,109 +24,11 @@ public final class BlockPhysics implements Listener { // This class contains code to prevent large areas of non-solid blocks // from crashing the server private static double tps = 20; - private static HashSet blockFaces = new HashSet(); - - @EventHandler - void onBlockDestroy(final BlockDestroyEvent event) { - try { - if (!event.getBlock().getType().isSolid()) { - for (BlockFace face : getBlockFaces()) { - if (event.getBlock().getRelative(face).getType() - != event.getBlock().getType()) { - return; - } - if (!event.getBlock().getType().equals(Material.AIR)) { - event.getBlock().setType(Material.AIR, false); - } - if (!event.isCancelled()) { - event.setCancelled(true); - } - } - } - } catch (Exception | StackOverflowError e) { - event.setCancelled(true); - } - } - - @EventHandler - void onBlockFade(final BlockFadeEvent event) { - try { - if (event.getBlock().getType() == Material.FIRE) { - event.getBlock().setType(Material.AIR, false); - event.setCancelled(true); - } - } catch (Exception | StackOverflowError e) { - event.setCancelled(true); - } - } - - @EventHandler - void onBlockForm(final BlockFormEvent event) { - try { - if (event.getBlock().getType() == Material.LAVA - || event.getBlock().getType() == Material.WATER) { - for (BlockFace face : getBlockFaces()) { - if (event.getBlock().getRelative(face).getType() != Material.LAVA - && event.getBlock().getRelative(face).getType() != Material.WATER) { - return; - } - event.setCancelled(true); - } - } - } catch (Exception | StackOverflowError e) { - event.setCancelled(true); - } - } - - @EventHandler - void onBlockFromTo(final BlockFromToEvent event) { - try { - if (event.getBlock().getType() == Material.LAVA - || event.getBlock().getType() == Material.WATER) { - boolean lavaFound = false; - boolean waterFound = false; - - for (BlockFace face : getBlockFaces()) { - if (event.getBlock().getRelative(face).getType() == Material.LAVA - && !lavaFound) { - lavaFound = true; - } else if (event.getBlock().getRelative(face).getType() == Material.WATER - && !waterFound) { - waterFound = true; - } - - if (lavaFound && waterFound) { - event.setCancelled(true); - return; - } - } - } - } catch (Exception | StackOverflowError e) { - event.setCancelled(true); - } - } @EventHandler void onBlockPhysics(final BlockPhysicsEvent event) { try { switch (event.getChangedType()) { - case ACTIVATOR_RAIL: - case DETECTOR_RAIL: - case POWERED_RAIL: - case RAIL: - case COMPARATOR: - case REDSTONE_TORCH: - case REDSTONE_WIRE: - case REPEATER: - case TRIPWIRE: - if (!event.getBlock().getRelative(BlockFace.DOWN).getType().isSolid() - && !Material.AIR.equals(event.getBlock().getRelative(BlockFace.DOWN) - .getType()) - && !Material.CAVE_AIR.equals(event.getBlock() - .getRelative(BlockFace.DOWN).getType())) { - event.setCancelled(true); - } - return; case COMMAND_BLOCK: case CHAIN_COMMAND_BLOCK: case REPEATING_COMMAND_BLOCK: @@ -167,10 +69,6 @@ public final class BlockPhysics implements Listener { } } - public static HashSet getBlockFaces() { - return blockFaces; - } - private static void updateTPS() { final double[] tpsValues = Bukkit.getTPS(); diff --git a/src/main/java/pw/kaboom/extras/modules/entity/EntitySpawn.java b/src/main/java/pw/kaboom/extras/modules/entity/EntitySpawn.java index 6e85fe0..1eefdf8 100644 --- a/src/main/java/pw/kaboom/extras/modules/entity/EntitySpawn.java +++ b/src/main/java/pw/kaboom/extras/modules/entity/EntitySpawn.java @@ -19,6 +19,7 @@ import org.bukkit.entity.Vehicle; import org.bukkit.entity.minecart.ExplosiveMinecart; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; +import org.bukkit.event.block.TNTPrimeEvent; import org.bukkit.event.entity.AreaEffectCloudApplyEvent; import org.bukkit.event.entity.EntitySpawnEvent; import org.bukkit.event.entity.ExplosionPrimeEvent; @@ -27,7 +28,6 @@ import org.bukkit.event.entity.SpawnerSpawnEvent; import org.bukkit.event.vehicle.VehicleCreateEvent; import org.bukkit.event.weather.LightningStrikeEvent; -import com.destroystokyo.paper.event.block.TNTPrimeEvent; import com.destroystokyo.paper.event.entity.PreCreatureSpawnEvent; import com.destroystokyo.paper.event.entity.PreSpawnerSpawnEvent; import org.bukkit.plugin.java.JavaPlugin; @@ -107,21 +107,6 @@ public final class EntitySpawn implements Listener { return false; } - private boolean isOutsideBoundaries(final double x, final double y, final double z) { - final int maxValue = 30000000; - final int minValue = -30000000; - - if (x > maxValue - || x < minValue - || y > maxValue - || y < minValue - || z > maxValue - || z < minValue) { - return true; - } - return false; - } - private void limitAreaEffectCloudRadius(final AreaEffectCloud cloud) { if (cloud.getRadius() > 40) { cloud.setRadius(40); @@ -187,11 +172,6 @@ public final class EntitySpawn implements Listener { final double y = event.getLocation().getY(); final double z = event.getLocation().getZ(); - if (isOutsideBoundaries(x, y, z)) { - event.setCancelled(true); - return; - } - final EntityType entityType = event.getEntityType(); final Chunk chunk = event.getLocation().getChunk(); final World world = event.getLocation().getWorld(); @@ -225,11 +205,6 @@ public final class EntitySpawn implements Listener { final double y = lightning.getLocation().getY(); final double z = lightning.getLocation().getZ(); - if (isOutsideBoundaries(x, y, z)) { - event.setCancelled(true); - return; - } - final EntityType entityType = EntityType.LIGHTNING; final Chunk chunk = lightning.getChunk(); final World world = event.getWorld(); @@ -273,16 +248,8 @@ public final class EntitySpawn implements Listener { @EventHandler void onTNTPrime(final TNTPrimeEvent event) { - switch (event.getReason()) { - case EXPLOSION: - case FIRE: - case REDSTONE: - if (ThreadLocalRandom.current().nextBoolean()) { - event.setCancelled(true); - } - return; - default: - break; + if (ThreadLocalRandom.current().nextBoolean()) { + event.setCancelled(true); } } @@ -293,11 +260,6 @@ public final class EntitySpawn implements Listener { final double y = vehicle.getLocation().getY(); final double z = vehicle.getLocation().getZ(); - if (isOutsideBoundaries(x, y, z)) { - event.setCancelled(true); - return; - } - final EntityType entityType = vehicle.getType(); final Chunk chunk = vehicle.getChunk(); final World world = vehicle.getWorld(); diff --git a/src/main/java/pw/kaboom/extras/modules/entity/EntityTeleport.java b/src/main/java/pw/kaboom/extras/modules/entity/EntityTeleport.java deleted file mode 100644 index 8858c54..0000000 --- a/src/main/java/pw/kaboom/extras/modules/entity/EntityTeleport.java +++ /dev/null @@ -1,43 +0,0 @@ -package pw.kaboom.extras.modules.entity; - -import org.bukkit.Location; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.EntityTeleportEvent; - -public final class EntityTeleport implements Listener { - public static Location limitLocation(final Location location) { - double x = location.getX(); - double y = location.getY(); - double z = location.getZ(); - - final int maxValue = 30000000; - final int minValue = -30000000; - - if (x > maxValue) { - location.setX(maxValue); - } - if (x < minValue) { - location.setX(minValue); - } - if (y > maxValue) { - location.setY(maxValue); - } - if (y < minValue) { - location.setY(minValue); - } - if (z > maxValue) { - location.setZ(maxValue); - } - if (z < minValue) { - location.setZ(minValue); - } - - return location; - } - - @EventHandler - void onEntityTeleport(final EntityTeleportEvent event) { - event.setTo(limitLocation(event.getTo())); - } -} diff --git a/src/main/java/pw/kaboom/extras/modules/player/PlayerInteract.java b/src/main/java/pw/kaboom/extras/modules/player/PlayerInteract.java index 34d5c54..f48c7be 100644 --- a/src/main/java/pw/kaboom/extras/modules/player/PlayerInteract.java +++ b/src/main/java/pw/kaboom/extras/modules/player/PlayerInteract.java @@ -14,15 +14,6 @@ import org.bukkit.inventory.ItemStack; public final class PlayerInteract implements Listener { //static HashMap interactMillisList = new HashMap(); - @EventHandler - void onInventoryClick(final InventoryClickEvent event) { - try { - event.getSlot(); - } catch (Exception exception) { - event.setCancelled(true); - } - } - @EventHandler void onPlayerInteract(final PlayerInteractEvent event) { /*final UUID playerUuid = event.getPlayer().getUniqueId(); diff --git a/src/main/java/pw/kaboom/extras/modules/player/PlayerTeleport.java b/src/main/java/pw/kaboom/extras/modules/player/PlayerTeleport.java index c481801..cf72dad 100644 --- a/src/main/java/pw/kaboom/extras/modules/player/PlayerTeleport.java +++ b/src/main/java/pw/kaboom/extras/modules/player/PlayerTeleport.java @@ -6,8 +6,6 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerChangedWorldEvent; import org.bukkit.event.player.PlayerTeleportEvent; -import pw.kaboom.extras.modules.entity.EntityTeleport; - public final class PlayerTeleport implements Listener { @EventHandler void onPlayerChangedWorld(final PlayerChangedWorldEvent event) { @@ -19,9 +17,4 @@ public final class PlayerTeleport implements Listener { player.setMaxHealth(20); } } - - @EventHandler - void onPlayerTeleport(final PlayerTeleportEvent event) { - event.setTo(EntityTeleport.limitLocation(event.getTo())); - } } diff --git a/src/main/java/pw/kaboom/extras/modules/server/ServerTick.java b/src/main/java/pw/kaboom/extras/modules/server/ServerTick.java deleted file mode 100644 index f5b38b6..0000000 --- a/src/main/java/pw/kaboom/extras/modules/server/ServerTick.java +++ /dev/null @@ -1,19 +0,0 @@ -package pw.kaboom.extras.modules.server; - -import org.bukkit.World; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.PlayerStatisticIncrementEvent; - -public final class ServerTick implements Listener { - @EventHandler - void onPlayerStatisticIncrement(final PlayerStatisticIncrementEvent event) { - final World world = event.getPlayer().getWorld(); - - if (!world.isAutoSave()) { - world.setAutoSave(true); - } - - event.setCancelled(true); - } -}