From 233e673d5efc338ee0f916830e46b3281a48592a Mon Sep 17 00:00:00 2001 From: okx-code Date: Mon, 4 Aug 2025 04:01:53 +0100 Subject: [PATCH] add too happy ghasts hack --- .../plugins/SimpleAdminHacks/config.yml | 2 + .../plugins/SimpleAdminHacks/config.yml | 2 + .../hacks/basic/TooHappyGhasts.java | 46 +++++++++++++++++++ .../src/main/resources/config.yml | 2 + 4 files changed, 52 insertions(+) create mode 100644 plugins/simpleadminhacks-paper/src/main/java/com/programmerdan/minecraft/simpleadminhacks/hacks/basic/TooHappyGhasts.java diff --git a/ansible/files/paper-config/plugins/SimpleAdminHacks/config.yml b/ansible/files/paper-config/plugins/SimpleAdminHacks/config.yml index 59cc204f3..6b921f785 100644 --- a/ansible/files/paper-config/plugins/SimpleAdminHacks/config.yml +++ b/ansible/files/paper-config/plugins/SimpleAdminHacks/config.yml @@ -606,3 +606,5 @@ hacks: enabled: false server: main world: world + TooHappyGhasts: + enabled: true diff --git a/ansible/files/pvp-config/plugins/SimpleAdminHacks/config.yml b/ansible/files/pvp-config/plugins/SimpleAdminHacks/config.yml index 8c247bacf..5609bd759 100644 --- a/ansible/files/pvp-config/plugins/SimpleAdminHacks/config.yml +++ b/ansible/files/pvp-config/plugins/SimpleAdminHacks/config.yml @@ -596,3 +596,5 @@ hacks: enabled: true server: main world: world + TooHappyGhasts: + enabled: true diff --git a/plugins/simpleadminhacks-paper/src/main/java/com/programmerdan/minecraft/simpleadminhacks/hacks/basic/TooHappyGhasts.java b/plugins/simpleadminhacks-paper/src/main/java/com/programmerdan/minecraft/simpleadminhacks/hacks/basic/TooHappyGhasts.java new file mode 100644 index 000000000..63cefcf45 --- /dev/null +++ b/plugins/simpleadminhacks-paper/src/main/java/com/programmerdan/minecraft/simpleadminhacks/hacks/basic/TooHappyGhasts.java @@ -0,0 +1,46 @@ +package com.programmerdan.minecraft.simpleadminhacks.hacks.basic; + +import com.programmerdan.minecraft.simpleadminhacks.SimpleAdminHacks; +import com.programmerdan.minecraft.simpleadminhacks.framework.BasicHack; +import com.programmerdan.minecraft.simpleadminhacks.framework.BasicHackConfig; +import java.util.logging.Level; +import org.bukkit.Bukkit; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.entity.Entity; +import org.bukkit.entity.HappyGhast; + +public class TooHappyGhasts extends BasicHack { + + public TooHappyGhasts(SimpleAdminHacks plugin, BasicHackConfig config) { + super(plugin, config); + } + + @Override + public void onEnable() { + super.onEnable(); + Bukkit.getScheduler().runTaskTimer(SimpleAdminHacks.instance(), () -> { + try { + for (World world : Bukkit.getWorlds()) { + for (HappyGhast entity : world.getEntitiesByClass(HappyGhast.class)) { + if (entity.getY() > 316) { + Location loc = entity.getLocation(); + loc.setY(315.5); + for (Entity passenger : entity.getPassengers()) { + entity.removePassenger(passenger); + } + entity.teleport(loc); + } + } + } + } catch (RuntimeException ex) { + SimpleAdminHacks.instance().getLogger().log(Level.WARNING, "Ticking ghast positions", ex); + } + }, 0, 1); + } + + @Override + public void onDisable() { + super.onDisable(); + } +} diff --git a/plugins/simpleadminhacks-paper/src/main/resources/config.yml b/plugins/simpleadminhacks-paper/src/main/resources/config.yml index 4cf9cf9c4..faf59f37d 100644 --- a/plugins/simpleadminhacks-paper/src/main/resources/config.yml +++ b/plugins/simpleadminhacks-paper/src/main/resources/config.yml @@ -547,3 +547,5 @@ hacks: enabled: false server: main world: world + TooHappyGhasts: + enabled: true