From f22f58f66f8ceed202947ad4a0633784636a7967 Mon Sep 17 00:00:00 2001 From: polaris Date: Thu, 11 Jun 2026 16:11:47 -0400 Subject: [PATCH] feat: switch event bus to fastbus --- README.md | 24 --- build.gradle.kts | 4 +- .../org/afterlike/openutils/OpenUtils.java | 8 +- .../openutils/event/api/CancellableEvent.java | 38 ----- .../afterlike/openutils/event/api/Event.java | 30 ---- .../openutils/event/api/EventBus.java | 151 ------------------ .../openutils/event/api/EventPriority.java | 35 ---- .../event/handler/EventExecutable.java | 99 ------------ .../openutils/event/handler/EventHandler.java | 39 ----- .../openutils/event/handler/Listener.java | 34 ---- .../event/handler/ListenerHandler.java | 63 -------- .../event/handler/MethodHandler.java | 59 ------- .../event/impl/AttackEntityEvent.java | 2 +- .../openutils/event/impl/GameTickEvent.java | 2 +- .../openutils/event/impl/KeyPressEvent.java | 2 +- .../event/impl/MouseButtonEvent.java | 2 +- .../event/impl/MouseScrollEvent.java | 2 +- .../event/impl/ReceiveChatEvent.java | 2 +- .../event/impl/ReceivePacketEvent.java | 2 +- .../event/impl/RenderOverlayEvent.java | 2 +- .../event/impl/RenderWorldEvent.java | 2 +- .../event/impl/ResizeWindowEvent.java | 2 +- .../event/impl/WindowClickEvent.java | 2 +- .../openutils/event/impl/WorldLoadEvent.java | 2 +- .../module/handler/ModuleHandler.java | 4 +- .../impl/bedwars/ArmorAlertsModule.java | 6 +- .../impl/bedwars/FinalKillsHudModule.java | 10 +- .../module/impl/bedwars/ItemAlertsModule.java | 6 +- .../module/impl/bedwars/QuickShopModule.java | 4 +- .../impl/bedwars/ResourceCountModule.java | 4 +- .../module/impl/bedwars/TimersHudModule.java | 6 +- .../impl/bedwars/UpgradeAlertsModule.java | 6 +- .../impl/bedwars/UpgradesHudModule.java | 8 +- .../module/impl/hypixel/AutoGGModule.java | 6 +- .../module/impl/hypixel/DenickerModule.java | 6 +- .../module/impl/hypixel/QuickMathModule.java | 6 +- .../impl/movement/NoJumpDelayModule.java | 4 +- .../module/impl/movement/NullMoveModule.java | 6 +- .../module/impl/movement/SprintModule.java | 4 +- .../impl/player/ActionSoundsModule.java | 6 +- .../impl/player/NoBreakDelayModule.java | 4 +- .../module/impl/player/NoHitDelayModule.java | 4 +- .../module/impl/render/ArrayListModule.java | 4 +- .../module/impl/render/CameraModule.java | 4 +- .../module/impl/render/DamageTagsModule.java | 10 +- .../module/impl/render/FallViewModule.java | 6 +- .../module/impl/render/FreeLookModule.java | 6 +- .../module/impl/render/TargetHudModule.java | 8 +- src/main/resource-templates/mcmod.info.peb | 4 +- 49 files changed, 90 insertions(+), 660 deletions(-) delete mode 100644 src/main/java/org/afterlike/openutils/event/api/CancellableEvent.java delete mode 100644 src/main/java/org/afterlike/openutils/event/api/Event.java delete mode 100644 src/main/java/org/afterlike/openutils/event/api/EventBus.java delete mode 100644 src/main/java/org/afterlike/openutils/event/api/EventPriority.java delete mode 100644 src/main/java/org/afterlike/openutils/event/handler/EventExecutable.java delete mode 100644 src/main/java/org/afterlike/openutils/event/handler/EventHandler.java delete mode 100644 src/main/java/org/afterlike/openutils/event/handler/Listener.java delete mode 100644 src/main/java/org/afterlike/openutils/event/handler/ListenerHandler.java delete mode 100644 src/main/java/org/afterlike/openutils/event/handler/MethodHandler.java diff --git a/README.md b/README.md index f611c62..39ec0ed 100644 --- a/README.md +++ b/README.md @@ -34,30 +34,12 @@ OpenUtils is designed to be: ## Credits -- **Azura-Event-Bus** - © 2025 Azura (MIT License) - https://github.com/azura-client/Azura-Event-Bus - **Click GUI Design** - ported from **raven b3** https://www.youtube.com/@blowsy https://www.youtube.com/watch?v=FCPr6S1bLis --- -## Included Third-Party Code - -### Azura-Event-Bus - -This project includes a copied and lightly adapted event bus implementation from the Azura-Event-Bus project. - -- **Project:** Azura-Event-Bus -- **Source:** https://github.com/azura-client/Azura-Event-Bus -- **License:** MIT License -- **Copyright:** © 2025 Azura - -The Azura-Event-Bus remains licensed under the MIT License. -All required license notices are preserved in the source files where it is used. - ---- - ## Licensing ### OpenUtils License @@ -69,12 +51,6 @@ This means: - Any distributed derivative works **must remain open-source** - Modifications must be provided under the same license -### License Compatibility -- OpenUtils (GPL-3.0) -- Azura Event Bus (MIT) - ---- - ## Disclaimer This project is provided **as-is**, without warranty of any kind. diff --git a/build.gradle.kts b/build.gradle.kts index 3ecb86f..ccc9607 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -93,6 +93,7 @@ repositories { mavenCentral() maven("https://repo.spongepowered.org/maven/") maven("https://pkgs.dev.azure.com/djtheredstoner/DevAuth/_packaging/public/maven/v1") + maven("https://maven.tsuku.re/releases") } val shade: Configuration by configurations.creating { @@ -105,6 +106,7 @@ dependencies { forge("net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9") shade("com.google.code.gson:gson:2.13.2") + shade("re.tsuku:fastbus:1.1.1") shade("org.spongepowered:mixin:0.7.11-SNAPSHOT") { isTransitive = false } @@ -157,8 +159,8 @@ tasks { fun relocateInside(name: String) = relocate(name, "org.afterlike.openutils.lib.$name") relocateInside("com.google.gson") + relocateInside("re.tsuku.fastbus") } assemble.get().dependsOn(remapJar) } - diff --git a/src/main/java/org/afterlike/openutils/OpenUtils.java b/src/main/java/org/afterlike/openutils/OpenUtils.java index 4ee3695..d99b212 100644 --- a/src/main/java/org/afterlike/openutils/OpenUtils.java +++ b/src/main/java/org/afterlike/openutils/OpenUtils.java @@ -6,13 +6,13 @@ import net.minecraft.util.EnumChatFormatting; import net.minecraftforge.fml.common.FMLCommonHandler; import org.afterlike.openutils.config.handler.ConfigHandler; -import org.afterlike.openutils.event.api.EventBus; import org.afterlike.openutils.gui.ClickGuiScreen; import org.afterlike.openutils.module.handler.ModuleHandler; import org.afterlike.openutils.util.client.UpdateUtil; import org.afterlike.openutils.util.lang.ReflectionUtil; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import re.tsuku.fastbus.FastBus; public class OpenUtils { private static final Logger logger = LogManager.getLogger(OpenUtils.class); @@ -23,12 +23,12 @@ public class OpenUtils { private static volatile boolean notified = false; private final ModuleHandler moduleHandler; private final ConfigHandler configHandler; - private final EventBus eventBus; + private final FastBus eventBus; private ClickGuiScreen clickGuiScreen; public OpenUtils() { this.moduleHandler = new ModuleHandler(); this.configHandler = new ConfigHandler(); - this.eventBus = new EventBus(); + this.eventBus = new FastBus(); } public void initialize() { @@ -52,7 +52,7 @@ public void lateInitialize() { UpdateUtil.checkAsync(); } - public EventBus getEventBus() { + public FastBus getEventBus() { return eventBus; } diff --git a/src/main/java/org/afterlike/openutils/event/api/CancellableEvent.java b/src/main/java/org/afterlike/openutils/event/api/CancellableEvent.java deleted file mode 100644 index 1bb7b95..0000000 --- a/src/main/java/org/afterlike/openutils/event/api/CancellableEvent.java +++ /dev/null @@ -1,38 +0,0 @@ -package org.afterlike.openutils.event.api; - -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -public class CancellableEvent implements Event { - private boolean cancelled; - public void setCancelled(final boolean cancelled) { - this.cancelled = cancelled; - } - - public Boolean isCancelled() { - return cancelled; - } -} diff --git a/src/main/java/org/afterlike/openutils/event/api/Event.java b/src/main/java/org/afterlike/openutils/event/api/Event.java deleted file mode 100644 index 925d1c0..0000000 --- a/src/main/java/org/afterlike/openutils/event/api/Event.java +++ /dev/null @@ -1,30 +0,0 @@ -package org.afterlike.openutils.event.api; - -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -public interface Event { -} diff --git a/src/main/java/org/afterlike/openutils/event/api/EventBus.java b/src/main/java/org/afterlike/openutils/event/api/EventBus.java deleted file mode 100644 index 7f8450c..0000000 --- a/src/main/java/org/afterlike/openutils/event/api/EventBus.java +++ /dev/null @@ -1,151 +0,0 @@ -package org.afterlike.openutils.event.api; - -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.util.Comparator; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.CopyOnWriteArrayList; -import org.afterlike.openutils.event.handler.EventExecutable; -import org.afterlike.openutils.event.handler.EventHandler; -import org.afterlike.openutils.event.handler.Listener; -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -public final class EventBus { - /** Map of event classes to their executables */ - private final Map, List> executableMap = new ConcurrentHashMap<>(); - /** - * Register an object in the event system - * - * @param object - * the object to register - */ - public void subscribe(final Object object) { - if (subscribed(object)) - return; - for (final Method method : object.getClass().getDeclaredMethods()) { - if (!method.isAnnotationPresent(EventHandler.class) || method.getParameterCount() <= 0) - continue; - final EventExecutable executable = new EventExecutable(method, object, - method.getDeclaredAnnotation(EventHandler.class).value()); - addExecutable(executable); - } - for (final Field field : object.getClass().getDeclaredFields()) { - if (!field.isAnnotationPresent(EventHandler.class) - || !field.getType().isAssignableFrom(Listener.class)) - continue; - final EventExecutable executable = new EventExecutable(field, object, - field.getDeclaredAnnotation(EventHandler.class).value()); - addExecutable(executable); - } - } - - private void addExecutable(final EventExecutable executable) { - final Class eventClass = executable.getEventClass(); - final List executables = executableMap.computeIfAbsent(eventClass, - k -> new CopyOnWriteArrayList<>()); - executables.add(executable); - executables.sort(Comparator.comparingInt(EventExecutable::getPriority)); - } - - /** - * Register an object in the event system - * - * @param object - * the object to register - * @param eventClass - * the event class to listen to - * @param listener - * the listener to call - * @param priority - * the priority of the listener - */ - public void subscribe(final Object object, final Class eventClass, - final Listener listener, final int priority) { - addExecutable(new EventExecutable(eventClass, listener, object, priority)); - } - - /** - * Register an object in the event system - * - * @param object - * the object to register - * @param eventClass - * the event class to listen to - * @param listener - * the listener to call Uses the default priority - */ - public void subscribe(final Object object, final Class eventClass, - final Listener listener) { - this.subscribe(object, eventClass, listener, EventPriority.DEFAULT); - } - - /** - * Method used for calling events - * - * @param event - * the event that should be called - */ - public U post(final U event) { - final List executables = executableMap.get(event.getClass()); - if (executables != null) { - for (final EventExecutable eventExecutable : executables) - eventExecutable.call(event); - } - return event; - } - - /** - * Unregister an object from the event system - * - * @param object - * the object to unregister - */ - public void unsubscribe(final Object object) { - for (final List executables : executableMap.values()) { - executables.removeIf(e -> e.getParent().equals(object)); - } - executableMap.values().removeIf(List::isEmpty); - } - - /** - * Method used to check whether an object is registered in the event system - * - * @param object - * the object to check - */ - public boolean subscribed(final Object object) { - for (final List executables : executableMap.values()) { - if (executables.stream().anyMatch(e -> e.getParent().equals(object))) { - return true; - } - } - return false; - } -} \ No newline at end of file diff --git a/src/main/java/org/afterlike/openutils/event/api/EventPriority.java b/src/main/java/org/afterlike/openutils/event/api/EventPriority.java deleted file mode 100644 index 122a896..0000000 --- a/src/main/java/org/afterlike/openutils/event/api/EventPriority.java +++ /dev/null @@ -1,35 +0,0 @@ -package org.afterlike.openutils.event.api; - -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -public final class EventPriority { - public static final int LOWEST = 4; - public static final int LOWER = 3; - public static final int DEFAULT = 2; - public static final int HIGHER = 1; - public static final int HIGHEST = 0; -} diff --git a/src/main/java/org/afterlike/openutils/event/handler/EventExecutable.java b/src/main/java/org/afterlike/openutils/event/handler/EventExecutable.java deleted file mode 100644 index dcb8f61..0000000 --- a/src/main/java/org/afterlike/openutils/event/handler/EventExecutable.java +++ /dev/null @@ -1,99 +0,0 @@ -package org.afterlike.openutils.event.handler; - -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import org.afterlike.openutils.event.api.Event; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -public final class EventExecutable { - private static final Logger logger = LogManager.getLogger(EventExecutable.class); - // Parental object - private final Object parent; - // MethodHandler instance for registered methods - private MethodHandler method; - // ListenerHandler instance for registered listeners - private ListenerHandler listener; - private final int priority; - public EventExecutable(final Method method, final Object parent, final int eventPriority) { - this(method, null, parent, eventPriority); - } - - public EventExecutable(final Field field, final Object parent, final int eventPriority) { - this(null, field, parent, eventPriority); - } - - public EventExecutable(final Class clazz, final Listener listener, - final Object parent, final int eventPriority) { - this((Method) null, null, parent, eventPriority); - this.listener = new ListenerHandler<>(clazz, listener); - } - - public EventExecutable(final Method method, final Field field, final Object parent, - final int priority) { - this.parent = parent; - this.priority = priority; - // Registering a listener if the field isn't null - if (field != null) { - try { - field.setAccessible(true); - this.listener = new ListenerHandler<>(field.getGenericType(), - (Listener) field.get(parent)); - } catch (final Exception e) { - this.listener = null; - logger.error(e); - } - } else { - this.listener = null; - } - // Registering the method if it isn't null - if (method != null && method.getParameterCount() == 1) { - this.method = new MethodHandler(method, parent); - } - } - - public Object getParent() { - return parent; - } - - public int getPriority() { - return priority; - } - - public Class getEventClass() { - return listener != null ? listener.getTypeClass() : method.getEventClass(); - } - - public void call(final Event event) { - if (listener != null) - listener.call(event); - if (method != null) - method.call(event); - } -} diff --git a/src/main/java/org/afterlike/openutils/event/handler/EventHandler.java b/src/main/java/org/afterlike/openutils/event/handler/EventHandler.java deleted file mode 100644 index ca8e7a5..0000000 --- a/src/main/java/org/afterlike/openutils/event/handler/EventHandler.java +++ /dev/null @@ -1,39 +0,0 @@ -package org.afterlike.openutils.event.handler; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; -import org.afterlike.openutils.event.api.EventPriority; -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -@Target({ElementType.FIELD, ElementType.METHOD}) -@Retention(RetentionPolicy.RUNTIME) -public @interface EventHandler { - int value() default EventPriority.DEFAULT; -} diff --git a/src/main/java/org/afterlike/openutils/event/handler/Listener.java b/src/main/java/org/afterlike/openutils/event/handler/Listener.java deleted file mode 100644 index a021512..0000000 --- a/src/main/java/org/afterlike/openutils/event/handler/Listener.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.afterlike.openutils.event.handler; - -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -import org.afterlike.openutils.event.api.Event; - -public interface Listener { - void call(final T event); -} diff --git a/src/main/java/org/afterlike/openutils/event/handler/ListenerHandler.java b/src/main/java/org/afterlike/openutils/event/handler/ListenerHandler.java deleted file mode 100644 index c63c16e..0000000 --- a/src/main/java/org/afterlike/openutils/event/handler/ListenerHandler.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.afterlike.openutils.event.handler; - -import java.lang.reflect.ParameterizedType; -import java.lang.reflect.Type; -import org.afterlike.openutils.event.api.Event; -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -public final class ListenerHandler { - private final Type type; - private final Listener listener; - private final Class typeClass; - public ListenerHandler(final Type type, final Listener listener) { - this.type = type; - this.listener = listener; - if (type instanceof Class) - this.typeClass = (Class) type; - else if (type instanceof ParameterizedType) - this.typeClass = (Class) ((ParameterizedType) this.type).getActualTypeArguments()[0]; - else - throw new IllegalArgumentException("Type must be a class or a parameterized type"); - } - - @SuppressWarnings("unchecked") - public void call(final Event event) { - if (!this.typeClass.equals(event.getClass()) && !this.typeClass.equals(Event.class)) - return; - this.listener.call((T) event); - } - - @SuppressWarnings("unchecked") - public Class getTypeClass() { - return (Class) typeClass; - } - - public Type getType() { - return type; - } -} diff --git a/src/main/java/org/afterlike/openutils/event/handler/MethodHandler.java b/src/main/java/org/afterlike/openutils/event/handler/MethodHandler.java deleted file mode 100644 index 9f0d38c..0000000 --- a/src/main/java/org/afterlike/openutils/event/handler/MethodHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.afterlike.openutils.event.handler; - -import java.lang.reflect.Method; -import org.afterlike.openutils.event.api.Event; -/* - * Derived from AzuraClient’s EventBus - * https://github.com/AzuraClient/Azura-Event-Bus - * - * MIT License - * - * Copyright (c) 2025 Azura - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -public final class MethodHandler { - private final Object parent; - private Method method; - public MethodHandler(final Method method, final Object parent) { - this.method = method; - this.parent = parent; - if (method.getParameterCount() != 1 - || !Event.class.isAssignableFrom(method.getParameterTypes()[0])) { - this.method = null; - return; - } - this.method.setAccessible(true); - } - - @SuppressWarnings("unchecked") - public Class getEventClass() { - return (Class) this.method.getParameterTypes()[0]; - } - - public void call(final Event event) { - if (this.method == null) - return; - try { - this.method.invoke(parent, event); - } catch (final Exception ignored) { - } - } -} diff --git a/src/main/java/org/afterlike/openutils/event/impl/AttackEntityEvent.java b/src/main/java/org/afterlike/openutils/event/impl/AttackEntityEvent.java index 3e5b401..4b63136 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/AttackEntityEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/AttackEntityEvent.java @@ -2,7 +2,7 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class AttackEntityEvent implements Event { private final EntityPlayer playerIn; diff --git a/src/main/java/org/afterlike/openutils/event/impl/GameTickEvent.java b/src/main/java/org/afterlike/openutils/event/impl/GameTickEvent.java index 50f8e52..50e5eaa 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/GameTickEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/GameTickEvent.java @@ -1,7 +1,7 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; import org.afterlike.openutils.event.api.EventPhase; +import re.tsuku.fastbus.Event; public class GameTickEvent implements Event { private final EventPhase phase; diff --git a/src/main/java/org/afterlike/openutils/event/impl/KeyPressEvent.java b/src/main/java/org/afterlike/openutils/event/impl/KeyPressEvent.java index 86380a2..7d1fc9f 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/KeyPressEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/KeyPressEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class KeyPressEvent implements Event { private final int keyCode; diff --git a/src/main/java/org/afterlike/openutils/event/impl/MouseButtonEvent.java b/src/main/java/org/afterlike/openutils/event/impl/MouseButtonEvent.java index cb2ba98..cfd45c0 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/MouseButtonEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/MouseButtonEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class MouseButtonEvent implements Event { private final int button; diff --git a/src/main/java/org/afterlike/openutils/event/impl/MouseScrollEvent.java b/src/main/java/org/afterlike/openutils/event/impl/MouseScrollEvent.java index f4f94bf..f0d13e6 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/MouseScrollEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/MouseScrollEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class MouseScrollEvent implements Event { private final int dWheel; diff --git a/src/main/java/org/afterlike/openutils/event/impl/ReceiveChatEvent.java b/src/main/java/org/afterlike/openutils/event/impl/ReceiveChatEvent.java index 05d4301..cfd1c7c 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/ReceiveChatEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/ReceiveChatEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class ReceiveChatEvent implements Event { private final String message; diff --git a/src/main/java/org/afterlike/openutils/event/impl/ReceivePacketEvent.java b/src/main/java/org/afterlike/openutils/event/impl/ReceivePacketEvent.java index e91f863..332ab4a 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/ReceivePacketEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/ReceivePacketEvent.java @@ -1,7 +1,7 @@ package org.afterlike.openutils.event.impl; import net.minecraft.network.Packet; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class ReceivePacketEvent implements Event { private final Packet packet; diff --git a/src/main/java/org/afterlike/openutils/event/impl/RenderOverlayEvent.java b/src/main/java/org/afterlike/openutils/event/impl/RenderOverlayEvent.java index 9be14b2..95c45d5 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/RenderOverlayEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/RenderOverlayEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class RenderOverlayEvent implements Event { private final float partialTicks; diff --git a/src/main/java/org/afterlike/openutils/event/impl/RenderWorldEvent.java b/src/main/java/org/afterlike/openutils/event/impl/RenderWorldEvent.java index 82d7e98..77fdeb2 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/RenderWorldEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/RenderWorldEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class RenderWorldEvent implements Event { private final float partialTicks; diff --git a/src/main/java/org/afterlike/openutils/event/impl/ResizeWindowEvent.java b/src/main/java/org/afterlike/openutils/event/impl/ResizeWindowEvent.java index d8b5729..365e376 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/ResizeWindowEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/ResizeWindowEvent.java @@ -1,6 +1,6 @@ package org.afterlike.openutils.event.impl; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class ResizeWindowEvent implements Event { } diff --git a/src/main/java/org/afterlike/openutils/event/impl/WindowClickEvent.java b/src/main/java/org/afterlike/openutils/event/impl/WindowClickEvent.java index 063d9ae..ad1cdda 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/WindowClickEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/WindowClickEvent.java @@ -2,7 +2,7 @@ import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.inventory.Slot; -import org.afterlike.openutils.event.api.CancellableEvent; +import re.tsuku.fastbus.CancellableEvent; public class WindowClickEvent extends CancellableEvent { private final GuiContainer container; diff --git a/src/main/java/org/afterlike/openutils/event/impl/WorldLoadEvent.java b/src/main/java/org/afterlike/openutils/event/impl/WorldLoadEvent.java index 6151c67..bd1439d 100644 --- a/src/main/java/org/afterlike/openutils/event/impl/WorldLoadEvent.java +++ b/src/main/java/org/afterlike/openutils/event/impl/WorldLoadEvent.java @@ -1,7 +1,7 @@ package org.afterlike.openutils.event.impl; import net.minecraft.client.multiplayer.WorldClient; -import org.afterlike.openutils.event.api.Event; +import re.tsuku.fastbus.Event; public class WorldLoadEvent implements Event { private final WorldClient world; diff --git a/src/main/java/org/afterlike/openutils/module/handler/ModuleHandler.java b/src/main/java/org/afterlike/openutils/module/handler/ModuleHandler.java index 3664c7e..0009a54 100644 --- a/src/main/java/org/afterlike/openutils/module/handler/ModuleHandler.java +++ b/src/main/java/org/afterlike/openutils/module/handler/ModuleHandler.java @@ -3,7 +3,6 @@ import java.util.*; import net.minecraft.client.Minecraft; import org.afterlike.openutils.OpenUtils; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.KeyPressEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; @@ -15,6 +14,7 @@ import org.afterlike.openutils.module.impl.render.*; import org.afterlike.openutils.module.impl.world.*; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class ModuleHandler { private final Minecraft mc = Minecraft.getMinecraft(); @@ -100,7 +100,7 @@ public List getModulesInCategory(final ModuleCategory category) { return modulesInCategory; } - @EventHandler + @Subscribe private void onKeyPress(final KeyPressEvent event) { if (mc.currentScreen != null || !ClientUtil.notNull()) { return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/ArmorAlertsModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/ArmorAlertsModule.java index f76429e..4906762 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/ArmorAlertsModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/ArmorAlertsModule.java @@ -9,7 +9,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.network.play.server.S04PacketEntityEquipment; import net.minecraft.util.EnumChatFormatting; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.ReceivePacketEvent; import org.afterlike.openutils.event.impl.WorldLoadEvent; import org.afterlike.openutils.module.api.Module; @@ -20,6 +19,7 @@ import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.game.BedWarsUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; public class ArmorAlertsModule extends Module { private final DescriptionSetting desc; @@ -43,7 +43,7 @@ public ArmorAlertsModule() { playerArmor = new HashMap<>(); } - @EventHandler + @Subscribe private void onPacket(final ReceivePacketEvent event) { if (!ClientUtil.notNull()) return; @@ -158,7 +158,7 @@ private String getDistanceString(final EntityPlayer player) { return new DecimalFormat("#").format(player.getDistanceToEntity(mc.thePlayer)) + "m"; } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { playerArmor.clear(); } diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/FinalKillsHudModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/FinalKillsHudModule.java index 3fd92b4..bf46eba 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/FinalKillsHudModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/FinalKillsHudModule.java @@ -5,7 +5,6 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.ReceiveChatEvent; import org.afterlike.openutils.event.impl.RenderOverlayEvent; @@ -20,6 +19,7 @@ import org.afterlike.openutils.util.client.TextUtil; import org.afterlike.openutils.util.game.BedWarsUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; public class FinalKillsHudModule extends Module implements HudModule { private final Position position = new Position(5, 50); @@ -42,7 +42,7 @@ public FinalKillsHudModule() { teammatesOnly = this.registerSetting(new BooleanSetting("Teammates only", false)); } - @EventHandler + @Subscribe private void onChatReceived(final ReceiveChatEvent event) { if (!ClientUtil.notNull()) return; @@ -83,7 +83,7 @@ private void onChatReceived(final ReceiveChatEvent event) { "counted kill for " + displayName + ": " + finalKills.get(displayName)); } - @EventHandler + @Subscribe private void onRender(final RenderOverlayEvent event) { if (!ClientUtil.notNull()) return; @@ -107,7 +107,7 @@ private void onRender(final RenderOverlayEvent event) { }); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; @@ -122,7 +122,7 @@ private void onTick(final GameTickEvent event) { } } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { resetTracking(); } diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/ItemAlertsModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/ItemAlertsModule.java index a2b1b56..2f79589 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/ItemAlertsModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/ItemAlertsModule.java @@ -12,7 +12,6 @@ import net.minecraft.nbt.NBTTagList; import net.minecraft.network.play.server.S04PacketEntityEquipment; import net.minecraft.util.EnumChatFormatting; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.ReceivePacketEvent; import org.afterlike.openutils.event.impl.WorldLoadEvent; import org.afterlike.openutils.module.api.Module; @@ -24,6 +23,7 @@ import org.afterlike.openutils.util.client.TextUtil; import org.afterlike.openutils.util.game.BedWarsUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; // TODO: we should probably rewrite at some point... public class ItemAlertsModule extends Module { @@ -151,7 +151,7 @@ private void addRule(final ItemRule rule) { rulesByItem.put(rule.item, rule); } - @EventHandler + @Subscribe private void onPacket(final ReceivePacketEvent event) { if (!ClientUtil.notNull()) { return; @@ -266,7 +266,7 @@ private boolean shouldPlaySound(final Item item) { return true; } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { alerts.clear(); } diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/QuickShopModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/QuickShopModule.java index b4f227f..4b2b922 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/QuickShopModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/QuickShopModule.java @@ -6,7 +6,6 @@ import net.minecraft.inventory.Container; import net.minecraft.inventory.ContainerChest; import net.minecraft.inventory.IInventory; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.WindowClickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; @@ -14,6 +13,7 @@ import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.client.TextUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; public class QuickShopModule extends Module { private final DescriptionSetting desc; @@ -31,7 +31,7 @@ public QuickShopModule() { private static final Set SHOP_TITLES = new HashSet<>( Arrays.asList("quick buy", "upgrades & traps", "blocks", "melee", "armor", "tools", "ranged", "potions", "utility", "rotating items")); - @EventHandler + @Subscribe private void onWindowClick(final WindowClickEvent event) { if (!ClientUtil.notNull()) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/ResourceCountModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/ResourceCountModule.java index 8fa4139..0f43bb1 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/ResourceCountModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/ResourceCountModule.java @@ -7,7 +7,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; @@ -15,6 +14,7 @@ import org.afterlike.openutils.module.api.setting.impl.DescriptionSetting; import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; // TODO: rewrite - currently a direct port from meowtils public class ResourceCountModule extends Module { @@ -35,7 +35,7 @@ public ResourceCountModule() { pingSound = this.registerSetting(new BooleanSetting("Ping Sound", false)); } private final Map lastCounts = new HashMap<>(); - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/TimersHudModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/TimersHudModule.java index 90c2327..34a8176 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/TimersHudModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/TimersHudModule.java @@ -6,7 +6,6 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.RenderOverlayEvent; import org.afterlike.openutils.module.api.Module; @@ -20,6 +19,7 @@ import org.afterlike.openutils.util.client.TextUtil; import org.afterlike.openutils.util.game.GameModeUtil; import org.afterlike.openutils.util.game.WorldUtil; +import re.tsuku.fastbus.Subscribe; public class TimersHudModule extends Module implements HudModule { private final Position position = new Position(5, 150); @@ -72,7 +72,7 @@ public TimersHudModule() { showElapsedTime = this.registerSetting(new BooleanSetting("Show game time", false)); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; @@ -93,7 +93,7 @@ private void onTick(final GameTickEvent event) { } } - @EventHandler + @Subscribe private void onRender(final RenderOverlayEvent event) { if (!ClientUtil.notNull() || mc.gameSettings.showDebugInfo || !inGame) { return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradeAlertsModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradeAlertsModule.java index 297bd34..cba1076 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradeAlertsModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradeAlertsModule.java @@ -10,7 +10,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.item.ItemSword; import net.minecraft.network.play.server.S04PacketEntityEquipment; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.ReceivePacketEvent; import org.afterlike.openutils.event.impl.WorldLoadEvent; import org.afterlike.openutils.module.api.Module; @@ -20,6 +19,7 @@ import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.game.BedWarsUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; public class UpgradeAlertsModule extends Module { private final BooleanSetting pingSound; @@ -32,7 +32,7 @@ public UpgradeAlertsModule() { teamUpgrades = new HashMap<>(); } - @EventHandler + @Subscribe private void onPacket(final ReceivePacketEvent event) { if (!ClientUtil.notNull()) return; @@ -69,7 +69,7 @@ private void onPacket(final ReceivePacketEvent event) { } } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { teamUpgrades.clear(); } diff --git a/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradesHudModule.java b/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradesHudModule.java index 029b783..ee370c7 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradesHudModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/bedwars/UpgradesHudModule.java @@ -3,7 +3,6 @@ import java.util.ArrayList; import java.util.List; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.ReceiveChatEvent; import org.afterlike.openutils.event.impl.RenderOverlayEvent; @@ -17,6 +16,7 @@ import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.client.TextUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; public class UpgradesHudModule extends Module implements HudModule { private final Position position = new Position(5, 100); @@ -40,7 +40,7 @@ public UpgradesHudModule() { showProt = this.registerSetting(new BooleanSetting("Show protection", true)); } - @EventHandler + @Subscribe private void onChatReceived(final ReceiveChatEvent event) { if (!ClientUtil.notNull()) return; @@ -73,7 +73,7 @@ private void onChatReceived(final ReceiveChatEvent event) { } } - @EventHandler + @Subscribe private void onRender(final RenderOverlayEvent event) { if (!ClientUtil.notNull()) return; @@ -90,7 +90,7 @@ private void onRender(final RenderOverlayEvent event) { } } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/hypixel/AutoGGModule.java b/src/main/java/org/afterlike/openutils/module/impl/hypixel/AutoGGModule.java index e2cda29..a546a2a 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/hypixel/AutoGGModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/hypixel/AutoGGModule.java @@ -4,7 +4,6 @@ import java.util.List; import java.util.regex.Pattern; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.ReceiveChatEvent; import org.afterlike.openutils.module.api.Module; @@ -13,6 +12,7 @@ import org.afterlike.openutils.module.api.setting.impl.TextFieldSetting; import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.client.TextUtil; +import re.tsuku.fastbus.Subscribe; public class AutoGGModule extends Module { private final NumberSetting delay; @@ -46,7 +46,7 @@ public AutoGGModule() { content = this.registerSetting(new TextFieldSetting("Message", "gg", "Enter message...")); } - @EventHandler + @Subscribe private void onChat(final ReceiveChatEvent event) { String msg = event.getMessage(); String stripped = TextUtil.stripColorCodes(msg); @@ -58,7 +58,7 @@ private void onChat(final ReceiveChatEvent event) { } } - @EventHandler + @Subscribe public void onTick(GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/hypixel/DenickerModule.java b/src/main/java/org/afterlike/openutils/module/impl/hypixel/DenickerModule.java index d274970..26ff1bb 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/hypixel/DenickerModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/hypixel/DenickerModule.java @@ -9,13 +9,13 @@ import java.util.*; import net.minecraft.client.network.NetworkPlayerInfo; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.WorldLoadEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; import org.afterlike.openutils.module.api.setting.impl.BooleanSetting; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class DenickerModule extends Module { private final BooleanSetting showFailed; @@ -254,7 +254,7 @@ public DenickerModule() { showFailed = this.registerSetting(new BooleanSetting("Show failed denicks", true)); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; @@ -270,7 +270,7 @@ private void onTick(final GameTickEvent event) { } } - @EventHandler + @Subscribe private void onWorldJoin(final WorldLoadEvent event) { parsed.clear(); } diff --git a/src/main/java/org/afterlike/openutils/module/impl/hypixel/QuickMathModule.java b/src/main/java/org/afterlike/openutils/module/impl/hypixel/QuickMathModule.java index cb9a365..9c9601d 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/hypixel/QuickMathModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/hypixel/QuickMathModule.java @@ -1,7 +1,6 @@ package org.afterlike.openutils.module.impl.hypixel; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.ReceiveChatEvent; import org.afterlike.openutils.module.api.Module; @@ -10,6 +9,7 @@ import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.client.TextUtil; import org.afterlike.openutils.util.game.GameModeUtil; +import re.tsuku.fastbus.Subscribe; public class QuickMathModule extends Module { private final NumberSetting delay; @@ -20,7 +20,7 @@ public QuickMathModule() { delay = this.registerSetting(new NumberSetting("Delay (ms)", 1500, 0, 5000, 100)); } - @EventHandler + @Subscribe private void onChatReceived(final ReceiveChatEvent event) { if (!ClientUtil.notNull()) return; @@ -34,7 +34,7 @@ private void onChatReceived(final ReceiveChatEvent event) { sendTime = System.currentTimeMillis() + delay.getValue().longValue(); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/movement/NoJumpDelayModule.java b/src/main/java/org/afterlike/openutils/module/impl/movement/NoJumpDelayModule.java index d6a696a..fb6168a 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/movement/NoJumpDelayModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/movement/NoJumpDelayModule.java @@ -1,13 +1,13 @@ package org.afterlike.openutils.module.impl.movement; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; import org.afterlike.openutils.module.api.setting.impl.BooleanSetting; import org.afterlike.openutils.platform.mixin.minecraft.entity.EntityLivingBaseAccessor; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class NoJumpDelayModule extends Module { private final BooleanSetting onlyWhileMoving; @@ -16,7 +16,7 @@ public NoJumpDelayModule() { onlyWhileMoving = this.registerSetting(new BooleanSetting("Only while moving", false)); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.PRE) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/movement/NullMoveModule.java b/src/main/java/org/afterlike/openutils/module/impl/movement/NullMoveModule.java index 0327a13..523974a 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/movement/NullMoveModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/movement/NullMoveModule.java @@ -2,7 +2,6 @@ import net.minecraft.client.settings.KeyBinding; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.KeyPressEvent; import org.afterlike.openutils.module.api.Module; @@ -10,6 +9,7 @@ import org.afterlike.openutils.module.api.setting.impl.DescriptionSetting; import org.afterlike.openutils.platform.mixin.minecraft.client.settings.KeyBindingAccessor; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class NullMoveModule extends Module { private final DescriptionSetting description; @@ -19,7 +19,7 @@ public NullMoveModule() { "Prevents opposite movement inputs from canceling each other")); } - @EventHandler + @Subscribe private void onKeyPress(final KeyPressEvent event) { if (!ClientUtil.notNull()) return; @@ -55,7 +55,7 @@ private void onKeyPress(final KeyPressEvent event) { } } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (!ClientUtil.notNull()) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/movement/SprintModule.java b/src/main/java/org/afterlike/openutils/module/impl/movement/SprintModule.java index 8136e0c..a133cf4 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/movement/SprintModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/movement/SprintModule.java @@ -1,19 +1,19 @@ package org.afterlike.openutils.module.impl.movement; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; import org.afterlike.openutils.platform.mixin.minecraft.client.settings.KeyBindingAccessor; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class SprintModule extends Module { public SprintModule() { super("Sprint", ModuleCategory.MOVEMENT); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.PRE) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/player/ActionSoundsModule.java b/src/main/java/org/afterlike/openutils/module/impl/player/ActionSoundsModule.java index a52ce4a..16428f8 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/player/ActionSoundsModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/player/ActionSoundsModule.java @@ -2,7 +2,6 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.network.play.server.S19PacketEntityStatus; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.AttackEntityEvent; import org.afterlike.openutils.event.impl.ReceivePacketEvent; import org.afterlike.openutils.module.api.Module; @@ -10,6 +9,7 @@ import org.afterlike.openutils.module.api.setting.impl.BooleanSetting; import org.afterlike.openutils.module.api.setting.impl.DescriptionSetting; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class ActionSoundsModule extends Module { private final DescriptionSetting desc; @@ -23,7 +23,7 @@ public ActionSoundsModule() { crit = this.registerSetting(new BooleanSetting("Critical hit", true)); } - @EventHandler + @Subscribe private void onPacketReceived(final ReceivePacketEvent event) { if (!ClientUtil.notNull()) return; @@ -41,7 +41,7 @@ private void onPacketReceived(final ReceivePacketEvent event) { } } - @EventHandler + @Subscribe public void onAttackEntity(final AttackEntityEvent event) { if (!ClientUtil.notNull()) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/player/NoBreakDelayModule.java b/src/main/java/org/afterlike/openutils/module/impl/player/NoBreakDelayModule.java index 3aca3c0..e9c4c82 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/player/NoBreakDelayModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/player/NoBreakDelayModule.java @@ -1,7 +1,6 @@ package org.afterlike.openutils.module.impl.player; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; @@ -9,6 +8,7 @@ import org.afterlike.openutils.module.api.setting.impl.NumberSetting; import org.afterlike.openutils.platform.mixin.minecraft.client.multiplayer.PlayerControllerMPAccessor; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class NoBreakDelayModule extends Module { private final DescriptionSetting description; @@ -20,7 +20,7 @@ public NoBreakDelayModule() { delay = this.registerSetting(new NumberSetting("Delay (ticks)", 0, 0, 5, 1)); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.PRE) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/player/NoHitDelayModule.java b/src/main/java/org/afterlike/openutils/module/impl/player/NoHitDelayModule.java index d6d19e5..570d71e 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/player/NoHitDelayModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/player/NoHitDelayModule.java @@ -1,19 +1,19 @@ package org.afterlike.openutils.module.impl.player; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; import org.afterlike.openutils.platform.mixin.minecraft.client.MinecraftAccessor; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class NoHitDelayModule extends Module { public NoHitDelayModule() { super("No Hit Delay", ModuleCategory.PLAYER); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.PRE) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/render/ArrayListModule.java b/src/main/java/org/afterlike/openutils/module/impl/render/ArrayListModule.java index 6bc1c09..8d28831 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/render/ArrayListModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/render/ArrayListModule.java @@ -2,7 +2,6 @@ import java.util.*; import org.afterlike.openutils.OpenUtils; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.RenderOverlayEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; @@ -12,6 +11,7 @@ import org.afterlike.openutils.module.api.setting.impl.BooleanSetting; import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.game.RenderUtil; +import re.tsuku.fastbus.Subscribe; public class ArrayListModule extends Module implements HudModule { private final Position position = new Position(5, 70); @@ -39,7 +39,7 @@ public void onSettingChanged(final Setting setting) { super.onSettingChanged(setting); } - @EventHandler + @Subscribe private void onRenderOverlay(final RenderOverlayEvent event) { if (!ClientUtil.notNull()) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/render/CameraModule.java b/src/main/java/org/afterlike/openutils/module/impl/render/CameraModule.java index d19a222..bdc5f45 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/render/CameraModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/render/CameraModule.java @@ -1,7 +1,6 @@ package org.afterlike.openutils.module.impl.render; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.module.api.Module; import org.afterlike.openutils.module.api.ModuleCategory; @@ -9,6 +8,7 @@ import org.afterlike.openutils.module.api.setting.impl.NumberSetting; import org.afterlike.openutils.platform.mixin.minecraft.client.renderer.EntityRendererAccessor; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class CameraModule extends Module { private final DescriptionSetting description1; @@ -24,7 +24,7 @@ public CameraModule() { .registerSetting(new NumberSetting("Hurt Shake Multiplier", 0, -40, 40, 1)); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.PRE) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/render/DamageTagsModule.java b/src/main/java/org/afterlike/openutils/module/impl/render/DamageTagsModule.java index 11a881c..4f4132e 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/render/DamageTagsModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/render/DamageTagsModule.java @@ -6,7 +6,6 @@ import net.minecraft.client.gui.ScaledResolution; import net.minecraft.entity.player.EntityPlayer; import org.afterlike.openutils.event.api.EventPhase; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.RenderWorldEvent; import org.afterlike.openutils.event.impl.ResizeWindowEvent; @@ -22,6 +21,7 @@ import org.lwjgl.opengl.Display; import org.lwjgl.opengl.GL11; import org.lwjgl.util.glu.GLU; +import re.tsuku.fastbus.Subscribe; public class DamageTagsModule extends Module { private final BooleanSetting showHealing; @@ -68,7 +68,7 @@ public DamageTagsModule() { yOffset = this.registerSetting(new NumberSetting("Y Offset", 1.8, -2.0, 3.0, 0.1)); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (event.getPhase() != EventPhase.POST) return; @@ -144,7 +144,7 @@ private void onTick(final GameTickEvent event) { } } - @EventHandler + @Subscribe private void onRenderWorld(final RenderWorldEvent event) { if (!ClientUtil.notNull()) return; @@ -275,12 +275,12 @@ private void recycleTag(final DamageTag tag) { } } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { clearAll(); } - @EventHandler + @Subscribe private void onResize(final ResizeWindowEvent event) { cachedScaleFactor = -1; } diff --git a/src/main/java/org/afterlike/openutils/module/impl/render/FallViewModule.java b/src/main/java/org/afterlike/openutils/module/impl/render/FallViewModule.java index 59fe1bc..4c5fcc0 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/render/FallViewModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/render/FallViewModule.java @@ -9,7 +9,6 @@ import net.minecraft.util.DamageSource; import net.minecraft.util.MathHelper; import net.minecraft.world.chunk.Chunk; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.RenderOverlayEvent; import org.afterlike.openutils.module.api.Module; @@ -22,6 +21,7 @@ import org.afterlike.openutils.module.api.setting.impl.DescriptionSetting; import org.afterlike.openutils.module.api.setting.impl.NumberSetting; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class FallViewModule extends Module implements HudModule { private static final int WHITE_ARGB = 0xFFFFFFFF; @@ -97,7 +97,7 @@ private boolean canRunLogic() { return !onlyWhileSneaking.getValue() || mc.thePlayer.isSneaking(); } - @EventHandler + @Subscribe private void onTick(final GameTickEvent event) { if (!canRunLogic()) return; @@ -108,7 +108,7 @@ private void onTick(final GameTickEvent event) { lastComputedTick = tick; } - @EventHandler + @Subscribe private void onRender(final RenderOverlayEvent event) { if (!canRunLogic()) return; diff --git a/src/main/java/org/afterlike/openutils/module/impl/render/FreeLookModule.java b/src/main/java/org/afterlike/openutils/module/impl/render/FreeLookModule.java index 255653b..610b9c6 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/render/FreeLookModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/render/FreeLookModule.java @@ -1,6 +1,5 @@ package org.afterlike.openutils.module.impl.render; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.GameTickEvent; import org.afterlike.openutils.event.impl.WorldLoadEvent; import org.afterlike.openutils.module.api.Module; @@ -8,6 +7,7 @@ import org.afterlike.openutils.module.api.setting.impl.BooleanSetting; import org.afterlike.openutils.module.api.setting.impl.DescriptionSetting; import org.afterlike.openutils.util.client.ClientUtil; +import re.tsuku.fastbus.Subscribe; public class FreeLookModule extends Module { private final BooleanSetting lockYaw; @@ -89,14 +89,14 @@ public static float calculateSensitivity() { return sensitivity * sensitivity * sensitivity * 8.0f; } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { if (isEnabled()) { setEnabled(false); } } - @EventHandler + @Subscribe private void onGameTick(final GameTickEvent event) { if (isEnabled() && mc.currentScreen != null) { setEnabled(false); diff --git a/src/main/java/org/afterlike/openutils/module/impl/render/TargetHudModule.java b/src/main/java/org/afterlike/openutils/module/impl/render/TargetHudModule.java index 9f6a2b4..19b4dcf 100644 --- a/src/main/java/org/afterlike/openutils/module/impl/render/TargetHudModule.java +++ b/src/main/java/org/afterlike/openutils/module/impl/render/TargetHudModule.java @@ -4,7 +4,6 @@ import java.text.DecimalFormatSymbols; import java.util.Locale; import net.minecraft.entity.player.EntityPlayer; -import org.afterlike.openutils.event.handler.EventHandler; import org.afterlike.openutils.event.impl.AttackEntityEvent; import org.afterlike.openutils.event.impl.RenderOverlayEvent; import org.afterlike.openutils.event.impl.WorldLoadEvent; @@ -17,6 +16,7 @@ import org.afterlike.openutils.module.api.setting.impl.NumberSetting; import org.afterlike.openutils.util.client.ClientUtil; import org.afterlike.openutils.util.game.RenderUtil; +import re.tsuku.fastbus.Subscribe; public class TargetHudModule extends Module implements HudModule { private static final DecimalFormat HEALTH_FORMAT = new DecimalFormat("0.0", @@ -58,13 +58,13 @@ protected void onDisable() { previousTarget = null; } - @EventHandler + @Subscribe private void onWorldLoad(final WorldLoadEvent event) { target = null; previousTarget = null; } - @EventHandler + @Subscribe private void onAttack(AttackEntityEvent event) { if (event.getTarget() instanceof EntityPlayer) { target = (EntityPlayer) event.getTarget(); @@ -72,7 +72,7 @@ private void onAttack(AttackEntityEvent event) { } } - @EventHandler + @Subscribe private void onRender(RenderOverlayEvent event) { if (!ClientUtil.notNull() || target == null) { return; diff --git a/src/main/resource-templates/mcmod.info.peb b/src/main/resource-templates/mcmod.info.peb index 39b955a..768cfaa 100644 --- a/src/main/resource-templates/mcmod.info.peb +++ b/src/main/resource-templates/mcmod.info.peb @@ -10,9 +10,9 @@ "authorList": [ "polaris" ], - "credits": "azura-client, blowsy, VarHandle, Oinkest, tatp", + "credits": "blowsy, VarHandle, Oinkest, tatp", "logoFile": "", "screenshots": [], "dependencies": [] } -] \ No newline at end of file +]