diff --git a/api/src/main/java/com/lunarclient/apollo/mods/Mods.java b/api/src/main/java/com/lunarclient/apollo/mods/Mods.java index 6ad84734..13590e31 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/Mods.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/Mods.java @@ -53,10 +53,12 @@ import com.lunarclient.apollo.mods.impl.ModHurtCam; import com.lunarclient.apollo.mods.impl.ModHypixelBedwars; import com.lunarclient.apollo.mods.impl.ModHypixelMod; +import com.lunarclient.apollo.mods.impl.ModInventoryMod; import com.lunarclient.apollo.mods.impl.ModItemCounter; import com.lunarclient.apollo.mods.impl.ModItemPhysics; import com.lunarclient.apollo.mods.impl.ModItemTracker; import com.lunarclient.apollo.mods.impl.ModKeystrokes; +import com.lunarclient.apollo.mods.impl.ModKillSounds; import com.lunarclient.apollo.mods.impl.ModLighting; import com.lunarclient.apollo.mods.impl.ModMemory; import com.lunarclient.apollo.mods.impl.ModMenuBlur; @@ -93,10 +95,12 @@ import com.lunarclient.apollo.mods.impl.ModStopwatch; import com.lunarclient.apollo.mods.impl.ModTab; import com.lunarclient.apollo.mods.impl.ModTeamView; +import com.lunarclient.apollo.mods.impl.ModTierTagger; import com.lunarclient.apollo.mods.impl.ModTimeChanger; import com.lunarclient.apollo.mods.impl.ModTitles; import com.lunarclient.apollo.mods.impl.ModTntCountdown; import com.lunarclient.apollo.mods.impl.ModToggleSneak; +import com.lunarclient.apollo.mods.impl.ModTotemCounter; import com.lunarclient.apollo.mods.impl.ModUhcOverlay; import com.lunarclient.apollo.mods.impl.ModWaila; import com.lunarclient.apollo.mods.impl.ModWaypoints; @@ -178,6 +182,7 @@ public final class Mods { ModAutoTextHotkey.class, ModAutoTextActions.class, ModMumbleLink.class, + ModTotemCounter.class, Mod2dItems.class, ModBossbar.class, ModFreelook.class, @@ -195,9 +200,12 @@ public final class Mods { ModWaila.class, ModNeu.class, ModHurtCam.class, + ModTierTagger.class, ModDamageTint.class, ModSkyblock.class, ModHorseStats.class, + ModKillSounds.class, + ModInventoryMod.class, ModRadio.class ); diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/Mod3dSkins.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/Mod3dSkins.java index 26d41d83..79b1b486 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/Mod3dSkins.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/Mod3dSkins.java @@ -55,6 +55,16 @@ public final class Mod3dSkins { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_OTHERS = SimpleOption.builder() + .node("3d-skins", "show-others").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -148,6 +158,17 @@ public final class Mod3dSkins { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final NumberOption FIRST_PERSON_VOXEL_SIZE = NumberOption.number() + .node("3d-skins", "first-person-voxel-size").type(TypeToken.get(Float.class)) + .min(1.001F).max(1.3F) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModArmorstatus.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModArmorstatus.java index 7c355b10..b209e180 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModArmorstatus.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModArmorstatus.java @@ -66,6 +66,16 @@ public final class ModArmorstatus { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption HIDE_UNBREAKABLE_DURABILITY = SimpleOption.builder() + .node("armorstatus", "hide-unbreakable-durability").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModAutoTextHotkey.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModAutoTextHotkey.java index 743042ca..b2339504 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModAutoTextHotkey.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModAutoTextHotkey.java @@ -43,6 +43,17 @@ public final class ModAutoTextHotkey { .notifyClient() .build(); + /** + * Displays a notification when an input is blocked by the server. + * + * @since 1.1.9 + */ + public static final SimpleOption NOTIFY_ON_BLOCKED_INPUT = SimpleOption.builder() + .comment("Displays a notification when an input is blocked by the server") + .node("auto-text-hotkey", "notify-on-blocked-input").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + private ModAutoTextHotkey() { } diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModChat.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModChat.java index 1b817fa7..8eaf51f3 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModChat.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModChat.java @@ -55,6 +55,26 @@ public final class ModChat { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption MODERN_CHAT_LENGTH_HYPIXEL = SimpleOption.builder() + .node("chat", "modern-chat-length-hypixel").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption LONG_CHAT_SINGLEPLAYER = SimpleOption.builder() + .node("chat", "long-chat-singleplayer").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * Choose whether or not you want to stack multiple of the same messages in chat. * @@ -183,12 +203,12 @@ public final class ModChat { .build(); /** - * Displays a preview of an image when hovering over it. + * Displays a preview of an image when hovering over it.If a single message has more than one image, press CTRL to cycle through them. * * @since 1.1.3 */ public static final SimpleOption HOVER_IMAGE_PREVIEW = SimpleOption.builder() - .comment("Displays a preview of an image when hovering over it.") + .comment("Displays a preview of an image when hovering over it.If a single message has more than one image, press CTRL to cycle through them.") .node("chat", "hover-image-preview").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -217,6 +237,17 @@ public final class ModChat { .notifyClient() .build(); + /** + * When your max image size is set to e.g. 50%, when you press shift, the image will expand to 100%. + * + * @since 1.1.9 + */ + public static final SimpleOption FULLSCREEN_IMAGE = SimpleOption.builder() + .comment("When your max image size is set to e.g. 50%, when you press shift, the image will expand to 100%") + .node("chat", "fullscreen-image").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -238,6 +269,56 @@ public final class ModChat { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption CHAT_NAME_BOLD = SimpleOption.builder() + .node("chat", "chat-name-bold").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption CHAT_NAME_ITALIC = SimpleOption.builder() + .node("chat", "chat-name-italic").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption CHAT_NAME_UNDERLINE = SimpleOption.builder() + .node("chat", "chat-name-underline").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption CHAT_NAME_STRIKETHROUGH = SimpleOption.builder() + .node("chat", "chat-name-strikethrough").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption CHAT_NAME_OBFUSCATED = SimpleOption.builder() + .node("chat", "chat-name-obfuscated").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModDirectionHud.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModDirectionHud.java index 86fdbc10..7bd0226b 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModDirectionHud.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModDirectionHud.java @@ -124,8 +124,8 @@ public final class ModDirectionHud { * * @since 1.0.0 */ - public static final SimpleOption USE_LEGACY_STYLE = SimpleOption.builder() - .node("direction-hud", "use-legacy-style").type(TypeToken.get(Boolean.class)) + public static final SimpleOption SHOW_MARKER = SimpleOption.builder() + .node("direction-hud", "show-marker").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -134,8 +134,8 @@ public final class ModDirectionHud { * * @since 1.0.0 */ - public static final SimpleOption SHOW_MARKER = SimpleOption.builder() - .node("direction-hud", "show-marker").type(TypeToken.get(Boolean.class)) + public static final SimpleOption SHOW_MARKER_VALUE = SimpleOption.builder() + .node("direction-hud", "show-marker-value").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -144,8 +144,19 @@ public final class ModDirectionHud { * * @since 1.0.0 */ - public static final SimpleOption SHOW_MARKER_VALUE = SimpleOption.builder() - .node("direction-hud", "show-marker-value").type(TypeToken.get(Boolean.class)) + public static final SimpleOption USE_LEGACY_STYLE = SimpleOption.builder() + .node("direction-hud", "use-legacy-style").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * Choose whether to show the Direction HUD when TAB is open. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_WITH_TAB = SimpleOption.builder() + .comment("Choose whether to show the Direction HUD when TAB is open.") + .node("direction-hud", "show-with-tab").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModInventoryMod.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModInventoryMod.java new file mode 100644 index 00000000..64e50262 --- /dev/null +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModInventoryMod.java @@ -0,0 +1,72 @@ +/* + * This file is part of Apollo, licensed under the MIT License. + * + * Copyright (c) 2023 Moonsworth + * + * 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. + */ +package com.lunarclient.apollo.mods.impl; + +import com.lunarclient.apollo.option.NumberOption; +import com.lunarclient.apollo.option.SimpleOption; +import io.leangen.geantyref.TypeToken; + +/** + * A collection of quality of life tweaks for the inventory. + * + * @since 1.1.9 + */ +public final class ModInventoryMod { + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ENABLED = SimpleOption.builder() + .node("inventory-mod", "enabled").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * Useful for navigating inventory menus on servers. + * + * @since 1.1.9 + */ + public static final SimpleOption DONT_RESET_CURSOR = SimpleOption.builder() + .comment("Useful for navigating inventory menus on servers.") + .node("inventory-mod", "dont-reset-cursor").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final NumberOption RESET_CURSOR_TIMEOUT = NumberOption.number() + .node("inventory-mod", "reset-cursor-timeout").type(TypeToken.get(Float.class)) + .min(0.1F).max(5.0F) + .notifyClient() + .build(); + + private ModInventoryMod() { + } + +} diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKeystrokes.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKeystrokes.java index f4fe3adc..2da92ff5 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKeystrokes.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKeystrokes.java @@ -91,8 +91,8 @@ public final class ModKeystrokes { * * @since 1.0.0 */ - public static final SimpleOption KEY_STROKES_MOVEMENT = SimpleOption.builder() - .node("keystrokes", "key-strokes-movement").type(TypeToken.get(Boolean.class)) + public static final SimpleOption USE_ARROWS = SimpleOption.builder() + .node("keystrokes", "use-arrows").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -101,8 +101,8 @@ public final class ModKeystrokes { * * @since 1.0.0 */ - public static final SimpleOption KEY_STROKES_SPACEBAR = SimpleOption.builder() - .node("keystrokes", "key-strokes-spacebar").type(TypeToken.get(Boolean.class)) + public static final SimpleOption KEY_STROKES_MOVEMENT = SimpleOption.builder() + .node("keystrokes", "key-strokes-movement").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -111,8 +111,8 @@ public final class ModKeystrokes { * * @since 1.0.0 */ - public static final SimpleOption USE_ARROWS = SimpleOption.builder() - .node("keystrokes", "use-arrows").type(TypeToken.get(Boolean.class)) + public static final SimpleOption KEY_STROKES_SPACEBAR = SimpleOption.builder() + .node("keystrokes", "key-strokes-spacebar").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -146,6 +146,67 @@ public final class ModKeystrokes { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ANIMATE = SimpleOption.builder() + .node("keystrokes", "animate").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final NumberOption DURATION = NumberOption.number() + .node("keystrokes", "duration").type(TypeToken.get(Float.class)) + .min(0.1F).max(1.0F) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ANIMATE_COLOR = SimpleOption.builder() + .node("keystrokes", "animate-color").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ANIMATION_START_COLOR = SimpleOption.builder() + .node("keystrokes", "animation-start-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ANIMATION_CENTER_COLOR = SimpleOption.builder() + .node("keystrokes", "animation-center-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ANIMATION_END_COLOR = SimpleOption.builder() + .node("keystrokes", "animation-end-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -229,6 +290,17 @@ public final class ModKeystrokes { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final NumberOption SPACEBAR_THICKNESS = NumberOption.number() + .node("keystrokes", "spacebar-thickness").type(TypeToken.get(Float.class)) + .min(1.0F).max(4.25F) + .notifyClient() + .build(); + private ModKeystrokes() { } diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKillSounds.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKillSounds.java new file mode 100644 index 00000000..2bfe7dc8 --- /dev/null +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModKillSounds.java @@ -0,0 +1,49 @@ +/* + * This file is part of Apollo, licensed under the MIT License. + * + * Copyright (c) 2023 Moonsworth + * + * 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. + */ +package com.lunarclient.apollo.mods.impl; + +import com.lunarclient.apollo.option.SimpleOption; +import io.leangen.geantyref.TypeToken; + +/** + * Allows you to change kill sounds for players. + * + * @since 1.1.9 + */ +public final class ModKillSounds { + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ENABLED = SimpleOption.builder() + .node("kill-sounds", "enabled").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + private ModKillSounds() { + } + +} diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPackDisplay.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPackDisplay.java index 883d4931..bdd8d5b2 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPackDisplay.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPackDisplay.java @@ -61,8 +61,8 @@ public final class ModPackDisplay { * * @since 1.0.0 */ - public static final SimpleOption TEXT_SHADOW = SimpleOption.builder() - .node("pack-display", "text-shadow").type(TypeToken.get(Boolean.class)) + public static final SimpleOption PACK_ICON = SimpleOption.builder() + .node("pack-display", "pack-icon").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -71,18 +71,28 @@ public final class ModPackDisplay { * * @since 1.0.0 */ - public static final SimpleOption BRACKETS = SimpleOption.builder() - .node("pack-display", "brackets").type(TypeToken.get(Boolean.class)) + public static final SimpleOption PACK_DESCRIPTION = SimpleOption.builder() + .node("pack-display", "pack-description").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); /** * No documentation available. * - * @since 1.1.6 + * @since 1.1.9 */ - public static final SimpleOption BRACKET_COLOR = SimpleOption.builder() - .node("pack-display", "bracket-color").type(TypeToken.get(Color.class)) + public static final SimpleOption PACK_EXTENSION = SimpleOption.builder() + .node("pack-display", "pack-extension").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption MOVE_TITLE_DOWN = SimpleOption.builder() + .node("pack-display", "move-title-down").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -91,30 +101,28 @@ public final class ModPackDisplay { * * @since 1.0.0 */ - public static final SimpleOption BACKGROUND = SimpleOption.builder() - .node("pack-display", "background").type(TypeToken.get(Boolean.class)) + public static final SimpleOption TEXT_SHADOW = SimpleOption.builder() + .node("pack-display", "text-shadow").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); /** - * If this is disabled the background will change size with the text. + * No documentation available. * * @since 1.0.0 */ - public static final SimpleOption STATIC_BACKGROUND_WIDTH = SimpleOption.builder() - .comment("If this is disabled the background will change size with the text.") - .node("pack-display", "static-background-width").type(TypeToken.get(Boolean.class)) + public static final SimpleOption BRACKETS = SimpleOption.builder() + .node("pack-display", "brackets").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); /** - * If this is disabled the background will change size with the text. + * No documentation available. * * @since 1.1.6 */ - public static final SimpleOption STATIC_BACKGROUND_HEIGHT = SimpleOption.builder() - .comment("If this is disabled the background will change size with the text.") - .node("pack-display", "static-background-height").type(TypeToken.get(Boolean.class)) + public static final SimpleOption BRACKET_COLOR = SimpleOption.builder() + .node("pack-display", "bracket-color").type(TypeToken.get(Color.class)) .notifyClient() .build(); @@ -123,9 +131,8 @@ public final class ModPackDisplay { * * @since 1.0.0 */ - public static final NumberOption BACKGROUND_WIDTH = NumberOption.number() - .node("pack-display", "background-width").type(TypeToken.get(Integer.class)) - .min(60).max(300) + public static final SimpleOption BACKGROUND = SimpleOption.builder() + .node("pack-display", "background").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -194,10 +201,84 @@ public final class ModPackDisplay { /** * No documentation available. * + * @since 1.1.9 + */ + public static final SimpleOption DESCRIPTION_REPLACEMENT_COLOR = SimpleOption.builder() + .node("pack-display", "description-replacement-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption KEEP_BOLD = SimpleOption.builder() + .node("pack-display", "keep-bold").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption KEEP_ITALIC = SimpleOption.builder() + .node("pack-display", "keep-italic").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption KEEP_UNDERLINE = SimpleOption.builder() + .node("pack-display", "keep-underline").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption KEEP_STRIKETHROUGH = SimpleOption.builder() + .node("pack-display", "keep-strikethrough").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption KEEP_OBFUSCATED = SimpleOption.builder() + .node("pack-display", "keep-obfuscated").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * If this is disabled the background will change size with the text. + * * @since 1.0.0 */ - public static final SimpleOption PACK_ICON = SimpleOption.builder() - .node("pack-display", "pack-icon").type(TypeToken.get(Boolean.class)) + @Deprecated + public static final SimpleOption STATIC_BACKGROUND_WIDTH = SimpleOption.builder() + .comment("If this is disabled the background will change size with the text.") + .node("pack-display", "static-background-width").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * If this is disabled the background will change size with the text. + * + * @since 1.1.6 + */ + @Deprecated + public static final SimpleOption STATIC_BACKGROUND_HEIGHT = SimpleOption.builder() + .comment("If this is disabled the background will change size with the text.") + .node("pack-display", "static-background-height").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -206,8 +287,10 @@ public final class ModPackDisplay { * * @since 1.0.0 */ - public static final SimpleOption PACK_DESCRIPTION = SimpleOption.builder() - .node("pack-display", "pack-description").type(TypeToken.get(Boolean.class)) + @Deprecated + public static final NumberOption BACKGROUND_WIDTH = NumberOption.number() + .node("pack-display", "background-width").type(TypeToken.get(Integer.class)) + .min(60).max(300) .notifyClient() .build(); diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPing.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPing.java index 96df0ccb..95a48d12 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPing.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPing.java @@ -53,27 +53,71 @@ public final class ModPing { public static final NumberOption UPDATE_INTERVAL_SEC = NumberOption.number() .comment("Faster updates may impact performance") .node("ping", "update-interval-sec").type(TypeToken.get(Integer.class)) - .min(1).max(30) + .min(1).max(120) + .notifyClient() + .build(); + + /** + * How many updates to average together (one update happens per the 'update interval' setting). + * + * @since 1.1.9 + */ + public static final NumberOption AVERAGE_SAMPLES = NumberOption.number() + .comment("How many updates to average together (one update happens per the 'update interval' setting)") + .node("ping", "average-samples").type(TypeToken.get(Integer.class)) + .min(2).max(20) .notifyClient() .build(); /** * No documentation available. * - * @since 1.1.1 + * @since 1.1.9 */ - public static final SimpleOption ENABLE_PING_NAMETAG = SimpleOption.builder() - .node("ping", "enable-ping-nametag").type(TypeToken.get(Boolean.class)) + public static final SimpleOption PING_SPIKE_DETECTION = SimpleOption.builder() + .node("ping", "ping-spike-detection").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); /** * No documentation available. * - * @since 1.1.1 + * @since 1.1.9 */ - public static final SimpleOption PING_ABOVE = SimpleOption.builder() - .node("ping", "ping-above").type(TypeToken.get(Boolean.class)) + public static final NumberOption MEDIUM_SPIKE_THRESHOLD = NumberOption.number() + .node("ping", "medium-spike-threshold").type(TypeToken.get(Integer.class)) + .min(1).max(200) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption MEDIUM_SPIKE_COLOR = SimpleOption.builder() + .node("ping", "medium-spike-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final NumberOption LARGE_SPIKE_THRESHOLD = NumberOption.number() + .node("ping", "large-spike-threshold").type(TypeToken.get(Integer.class)) + .min(1).max(200) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption LARGE_SPIKE_COLOR = SimpleOption.builder() + .node("ping", "large-spike-color").type(TypeToken.get(Color.class)) .notifyClient() .build(); @@ -87,6 +131,16 @@ public final class ModPing { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_PING_PREFIX = SimpleOption.builder() + .node("ping", "show-ping-prefix").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -157,6 +211,28 @@ public final class ModPing { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.1 + */ + @Deprecated + public static final SimpleOption ENABLE_PING_NAMETAG = SimpleOption.builder() + .node("ping", "enable-ping-nametag").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.1 + */ + @Deprecated + public static final SimpleOption PING_ABOVE = SimpleOption.builder() + .node("ping", "ping-above").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPotionEffects.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPotionEffects.java index 2861d086..302c43d7 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPotionEffects.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModPotionEffects.java @@ -96,6 +96,87 @@ public final class ModPotionEffects { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption BACKGROUND = SimpleOption.builder() + .node("potion-effects", "background").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption MINIMAL_MODE = SimpleOption.builder() + .node("potion-effects", "minimal-mode").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption MINIMAL_MODE_HORIZONTAL = SimpleOption.builder() + .node("potion-effects", "minimal-mode-horizontal").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption BORDER = SimpleOption.builder() + .node("potion-effects", "border").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final NumberOption BORDER_THICKNESS = NumberOption.number() + .node("potion-effects", "border-thickness").type(TypeToken.get(Float.class)) + .min(0.5F).max(3.0F) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption FORMATTED_DURATIONS = SimpleOption.builder() + .node("potion-effects", "formatted-durations").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption UPPERCASE_POTION_NAMES = SimpleOption.builder() + .node("potion-effects", "uppercase-potion-names").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption REVERSED_TEXT = SimpleOption.builder() + .node("potion-effects", "reversed-text").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -127,6 +208,26 @@ public final class ModPotionEffects { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption BACKGROUND_COLOR = SimpleOption.builder() + .node("potion-effects", "background-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption BORDER_COLOR = SimpleOption.builder() + .node("potion-effects", "border-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModRadio.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModRadio.java index c261e594..666a2632 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModRadio.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModRadio.java @@ -50,9 +50,9 @@ public final class ModRadio { * * @since 1.1.7 */ - public static final NumberOption SCALE = NumberOption.number() - .node("radio", "scale").type(TypeToken.get(Float.class)) - .min(0.5F).max(1.5F) + public static final NumberOption VOLUME = NumberOption.number() + .node("radio", "volume").type(TypeToken.get(Integer.class)) + .min(0).max(100) .notifyClient() .build(); @@ -61,9 +61,8 @@ public final class ModRadio { * * @since 1.1.7 */ - public static final NumberOption VOLUME = NumberOption.number() - .node("radio", "volume").type(TypeToken.get(Integer.class)) - .min(0).max(100) + public static final SimpleOption MUTE_RADIO = SimpleOption.builder() + .node("radio", "mute-radio").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -72,8 +71,9 @@ public final class ModRadio { * * @since 1.1.7 */ - public static final SimpleOption MUTE_RADIO = SimpleOption.builder() - .node("radio", "mute-radio").type(TypeToken.get(Boolean.class)) + public static final NumberOption SCALE = NumberOption.number() + .node("radio", "scale").type(TypeToken.get(Float.class)) + .min(0.5F).max(1.5F) .notifyClient() .build(); diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModScreenshot.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModScreenshot.java index df150f6c..83657736 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModScreenshot.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModScreenshot.java @@ -83,6 +83,17 @@ public final class ModScreenshot { .notifyClient() .build(); + /** + * A screenshot file saved with world details enabled has metadata that contains your player coordinates, the biome, and more. + * + * @since 1.1.9 + */ + public static final SimpleOption WORLD_DETAILS = SimpleOption.builder() + .comment("A screenshot file saved with world details enabled has metadata that contains your player coordinates, the biome, and more.") + .node("screenshot", "world-details").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + private ModScreenshot() { } diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModSkyblock.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModSkyblock.java index fdae8cd0..e02fa3c9 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModSkyblock.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModSkyblock.java @@ -148,6 +148,17 @@ public final class ModSkyblock { .notifyClient() .build(); + /** + * Replaces left clicks in menus with a middle click. Hold control to override. + * + * @since 1.1.9 + */ + public static final SimpleOption SKY_BLOCK_MIDDLE_CLICK_ITEMS = SimpleOption.builder() + .comment("Replaces left clicks in menus with a middle click. Hold control to override.") + .node("skyblock", "sky-block-middle-click-items").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * Shows the creation date of the item in the lore. * @@ -190,6 +201,16 @@ public final class ModSkyblock { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SB_MENU_CLICK_TO_COMMAND = SimpleOption.builder() + .node("skyblock", "sb-menu-click-to-command").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * Makes Giant HP more visible by showing their HP at their feet. * @@ -204,10 +225,10 @@ public final class ModSkyblock { /** * No documentation available. * - * @since 1.1.7 + * @since 1.1.9 */ - public static final SimpleOption DUNGEON_SECRETS_COLLECTED = SimpleOption.builder() - .node("skyblock", "dungeon-secrets-collected").type(TypeToken.get(Boolean.class)) + public static final SimpleOption SKYBLOCK_SECRETS_COLLECTED = SimpleOption.builder() + .node("skyblock", "skyblock-secrets-collected").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); @@ -285,6 +306,28 @@ public final class ModSkyblock { .notifyClient() .build(); + /** + * Hides players and fishing rods near your bobber while you are fishing. + * + * @since 1.1.9 + */ + public static final SimpleOption SKYBLOCK_FISHING_HIDE_PLAYERS = SimpleOption.builder() + .comment("Hides players and fishing rods near your bobber while you are fishing.") + .node("skyblock", "skyblock-fishing-hide-players").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * Shows which hotspot the Hotspot Radar item is pointing to. + * + * @since 1.1.9 + */ + public static final SimpleOption SKYBLOCK_FISHING_HOTSPOT_LOCATOR = SimpleOption.builder() + .comment("Shows which hotspot the Hotspot Radar item is pointing to.") + .node("skyblock", "skyblock-fishing-hotspot-locator").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * Provides a chat message on boss kill that tells you how long it took to kill!. * @@ -372,6 +415,27 @@ public final class ModSkyblock { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SKYBLOCK_USE_TICK_TIMERS = SimpleOption.builder() + .node("skyblock", "skyblock-use-tick-timers").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.7 + */ + @Deprecated + public static final SimpleOption DUNGEON_SECRETS_COLLECTED = SimpleOption.builder() + .node("skyblock", "dungeon-secrets-collected").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + private ModSkyblock() { } diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModTierTagger.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModTierTagger.java new file mode 100644 index 00000000..54d82609 --- /dev/null +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModTierTagger.java @@ -0,0 +1,109 @@ +/* + * This file is part of Apollo, licensed under the MIT License. + * + * Copyright (c) 2023 Moonsworth + * + * 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. + */ +package com.lunarclient.apollo.mods.impl; + +import com.lunarclient.apollo.option.SimpleOption; +import io.leangen.geantyref.TypeToken; + +/** + * Show player's PvP tier on their Name Tag. + * + * @since 1.1.9 + */ +public final class ModTierTagger { + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ENABLED = SimpleOption.builder() + .node("tier-tagger", "enabled").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption MC_TIERS_FORMAT = SimpleOption.builder() + .node("tier-tagger", "mc-tiers-format").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SUFFIX = SimpleOption.builder() + .node("tier-tagger", "suffix").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SEPARATE_NAMETAG = SimpleOption.builder() + .node("tier-tagger", "separate-nametag").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_GM_ICONS = SimpleOption.builder() + .node("tier-tagger", "show-gm-icons").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_RETIRED = SimpleOption.builder() + .node("tier-tagger", "show-retired").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_REGION = SimpleOption.builder() + .node("tier-tagger", "show-region").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + private ModTierTagger() { + } + +} diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModToggleSneak.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModToggleSneak.java index d1394391..e5049ae1 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModToggleSneak.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModToggleSneak.java @@ -54,6 +54,16 @@ public final class ModToggleSneak { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SPRINT_KEYBIND_OVERRIDE = SimpleOption.builder() + .node("toggle-sneak", "sprint-keybind-override").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -64,6 +74,16 @@ public final class ModToggleSneak { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SNEAK_KEYBIND_OVERRIDE = SimpleOption.builder() + .node("toggle-sneak", "sneak-keybind-override").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModTotemCounter.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModTotemCounter.java new file mode 100644 index 00000000..979d7947 --- /dev/null +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModTotemCounter.java @@ -0,0 +1,140 @@ +/* + * This file is part of Apollo, licensed under the MIT License. + * + * Copyright (c) 2023 Moonsworth + * + * 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. + */ +package com.lunarclient.apollo.mods.impl; + +import com.lunarclient.apollo.option.SimpleOption; +import io.leangen.geantyref.TypeToken; +import java.awt.Color; + +/** + * Keep track of players' totem usages. Totem pops aren't tracked when the mod is disabled, so toggling it on mid-game could result in a mismatch. + * + * @since 1.1.9 + */ +public final class ModTotemCounter { + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ENABLED = SimpleOption.builder() + .node("totem-counter", "enabled").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_FOR_SELF = SimpleOption.builder() + .node("totem-counter", "show-for-self").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_TAB_LIST = SimpleOption.builder() + .node("totem-counter", "show-tab-list").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption FLIP = SimpleOption.builder() + .node("totem-counter", "flip").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption COUNT_COLOR = SimpleOption.builder() + .node("totem-counter", "count-color").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_NAMETAG = SimpleOption.builder() + .node("totem-counter", "show-nametag").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_PREFIX = SimpleOption.builder() + .node("totem-counter", "show-prefix").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SEPARATE_NAMETAG = SimpleOption.builder() + .node("totem-counter", "separate-nametag").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption RENDER_FIRST = SimpleOption.builder() + .node("totem-counter", "render-first").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption PREFIX_COLOR = SimpleOption.builder() + .node("totem-counter", "prefix-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + private ModTotemCounter() { + } + +} diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaila.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaila.java index 74ed8238..8a5918c5 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaila.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaila.java @@ -56,6 +56,16 @@ public final class ModWaila { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption ALWAYS_SHOW = SimpleOption.builder() + .node("waila", "always-show").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -117,6 +127,86 @@ public final class ModWaila { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_BLOCK_COORDS = SimpleOption.builder() + .node("waila", "show-block-coords").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption BLOCK_COORDS_COLOR = SimpleOption.builder() + .node("waila", "block-coords-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_CORRECT_TOOL = SimpleOption.builder() + .node("waila", "show-correct-tool").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption CORRECT_TOOL_COLOR = SimpleOption.builder() + .node("waila", "correct-tool-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_BREAK_TIME = SimpleOption.builder() + .node("waila", "show-break-time").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption BREAK_TIME_COLOR = SimpleOption.builder() + .node("waila", "break-time-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption SHOW_LIGHT_LEVEL = SimpleOption.builder() + .node("waila", "show-light-level").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption LIGHT_LEVEL_COLOR = SimpleOption.builder() + .node("waila", "light-level-color").type(TypeToken.get(Color.class)) + .notifyClient() + .build(); + /** * No documentation available. * diff --git a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaypoints.java b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaypoints.java index c5284a60..4ce9cfe7 100644 --- a/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaypoints.java +++ b/api/src/main/java/com/lunarclient/apollo/mods/impl/ModWaypoints.java @@ -44,6 +44,16 @@ public final class ModWaypoints { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.6 + */ + public static final SimpleOption ADD_WAYPOINTS_FROM_CHAT = SimpleOption.builder() + .node("waypoints", "add-waypoints-from-chat").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + /** * No documentation available. * @@ -54,6 +64,28 @@ public final class ModWaypoints { .notifyClient() .build(); + /** + * No documentation available. + * + * @since 1.1.9 + */ + public static final SimpleOption LIMIT_DEATH_WAYPOINTS = SimpleOption.builder() + .node("waypoints", "limit-death-waypoints").type(TypeToken.get(Boolean.class)) + .notifyClient() + .build(); + + /** + * Maximum amount of Death Waypoints you will see at one time. + * + * @since 1.1.9 + */ + public static final NumberOption MAX_DEATH_WAYPOINTS = NumberOption.number() + .comment("Maximum amount of Death Waypoints you will see at one time") + .node("waypoints", "max-death-waypoints").type(TypeToken.get(Integer.class)) + .min(1).max(20) + .notifyClient() + .build(); + /** * No documentation available. * @@ -95,17 +127,6 @@ public final class ModWaypoints { .notifyClient() .build(); - /** - * Only show each waypoint when looking near then in the world. - * - * @since 1.0.0 - */ - public static final SimpleOption ONLY_SHOW_WHEN_LOOKING_NEAR = SimpleOption.builder() - .comment("Only show each waypoint when looking near then in the world") - .node("waypoints", "only-show-when-looking-near").type(TypeToken.get(Boolean.class)) - .notifyClient() - .build(); - /** * Show simpler text icons above each waypoint. * @@ -140,12 +161,13 @@ public final class ModWaypoints { .build(); /** - * No documentation available. + * Only show each waypoint when looking near then in the world. * - * @since 1.1.6 + * @since 1.0.0 */ - public static final SimpleOption ADD_WAYPOINTS_FROM_CHAT = SimpleOption.builder() - .node("waypoints", "add-waypoints-from-chat").type(TypeToken.get(Boolean.class)) + public static final SimpleOption ONLY_SHOW_WHEN_LOOKING_NEAR = SimpleOption.builder() + .comment("Only show each waypoint when looking near then in the world") + .node("waypoints", "only-show-when-looking-near").type(TypeToken.get(Boolean.class)) .notifyClient() .build(); diff --git a/docs/developers/mods/3dskins.mdx b/docs/developers/mods/3dskins.mdx index 0cdf5637..61cf6a6a 100644 --- a/docs/developers/mods/3dskins.mdx +++ b/docs/developers/mods/3dskins.mdx @@ -29,6 +29,12 @@ public void toggle3DSkinsExample(Player viewer, boolean value) { - Minimum: `5` - Maximum: `40` +- __`SHOW_OTHERS`__ + - Config Key: `show-others` + - Values + - Type: `Boolean` + - Default: `true` + - __`ENABLE_HAT`__ - Config Key: `enable-hat` - Values @@ -89,6 +95,14 @@ public void toggle3DSkinsExample(Player viewer, boolean value) { - Minimum: `1.001F` - Maximum: `1.25F` +- __`FIRST_PERSON_VOXEL_SIZE`__ + - Config Key: `first-person-voxel-size` + - Values + - Type: `Float` + - Default: `1.1F` + - Minimum: `1.001F` + - Maximum: `1.3F` + - __`ENABLE_SKULLS`__ - Config Key: `enable-skulls` - Values diff --git a/docs/developers/mods/_meta.json b/docs/developers/mods/_meta.json index f4137431..2771a51f 100644 --- a/docs/developers/mods/_meta.json +++ b/docs/developers/mods/_meta.json @@ -29,10 +29,12 @@ "hurtcam": "HurtCam", "hypixelbedwars": "HypixelBedwars", "hypixelmod": "HypixelMod", + "inventorymod": "InventoryMod", "itemcounter": "ItemCounter", "itemphysics": "ItemPhysics", "itemtracker": "ItemTracker", "keystrokes": "Keystrokes", + "killsounds": "KillSounds", "lighting": "Lighting", "memory": "Memory", "menublur": "MenuBlur", @@ -69,10 +71,12 @@ "stopwatch": "Stopwatch", "tab": "Tab", "teamview": "TeamView", + "tiertagger": "TierTagger", "timechanger": "TimeChanger", "titles": "Titles", "tntcountdown": "TntCountdown", "togglesneak": "ToggleSneak", + "totemcounter": "TotemCounter", "uhcoverlay": "UhcOverlay", "waila": "Waila", "waypoints": "Waypoints", diff --git a/docs/developers/mods/armorstatus.mdx b/docs/developers/mods/armorstatus.mdx index 31ac771d..5f451abe 100644 --- a/docs/developers/mods/armorstatus.mdx +++ b/docs/developers/mods/armorstatus.mdx @@ -35,6 +35,12 @@ public void toggleArmorStatusExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`HIDE_UNBREAKABLE_DURABILITY`__ + - Config Key: `hide-unbreakable-durability` + - Values + - Type: `Boolean` + - Default: `false` + - __`ITEM_NAME`__ - Config Key: `item-name` - Values diff --git a/docs/developers/mods/autotexthotkey.mdx b/docs/developers/mods/autotexthotkey.mdx index 8e771ce3..bcfe5d84 100644 --- a/docs/developers/mods/autotexthotkey.mdx +++ b/docs/developers/mods/autotexthotkey.mdx @@ -21,3 +21,10 @@ public void toggleAutoTextHotKeyExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`NOTIFY_ON_BLOCKED_INPUT`__ + - Displays a notification when an input is blocked by the server + - Config Key: `notify-on-blocked-input` + - Values + - Type: `Boolean` + - Default: `true` + diff --git a/docs/developers/mods/chat.mdx b/docs/developers/mods/chat.mdx index c27fafe9..c1428e57 100644 --- a/docs/developers/mods/chat.mdx +++ b/docs/developers/mods/chat.mdx @@ -28,6 +28,18 @@ public void toggleChatExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`MODERN_CHAT_LENGTH_HYPIXEL`__ + - Config Key: `modern-chat-length-hypixel` + - Values + - Type: `Boolean` + - Default: `false` + +- __`LONG_CHAT_SINGLEPLAYER`__ + - Config Key: `long-chat-singleplayer` + - Values + - Type: `Boolean` + - Default: `false` + - __`STACK_MESSAGES`__ - Choose whether or not you want to stack multiple of the same messages in chat - Config Key: `stack-messages` @@ -111,6 +123,7 @@ For example, if your name is Notch, this will ping on Notch but not Notch123. - __`HOVER_IMAGE_PREVIEW`__ - Displays a preview of an image when hovering over it. +If a single message has more than one image, press CTRL to cycle through them. - Config Key: `hover-image-preview` - Values - Type: `Boolean` @@ -130,10 +143,17 @@ For example, if your name is Notch, this will ping on Notch but not Notch123. - Config Key: `max-image-size` - Values - Type: `Double` - - Default: `100.0D` + - Default: `30.0D` - Minimum: `0.0D` - Maximum: `100.0D` +- __`FULLSCREEN_IMAGE`__ + - When your max image size is set to e.g. 50%, when you press shift, the image will expand to 100% + - Config Key: `fullscreen-image` + - Values + - Type: `Boolean` + - Default: `true` + - __`SMOOTH_CHAT`__ - Config Key: `smooth-chat` - Values @@ -148,6 +168,36 @@ For example, if your name is Notch, this will ping on Notch but not Notch123. - Minimum: `1` - Maximum: `10` +- __`CHAT_NAME_BOLD`__ + - Config Key: `chat-name-bold` + - Values + - Type: `Boolean` + - Default: `false` + +- __`CHAT_NAME_ITALIC`__ + - Config Key: `chat-name-italic` + - Values + - Type: `Boolean` + - Default: `false` + +- __`CHAT_NAME_UNDERLINE`__ + - Config Key: `chat-name-underline` + - Values + - Type: `Boolean` + - Default: `false` + +- __`CHAT_NAME_STRIKETHROUGH`__ + - Config Key: `chat-name-strikethrough` + - Values + - Type: `Boolean` + - Default: `false` + +- __`CHAT_NAME_OBFUSCATED`__ + - Config Key: `chat-name-obfuscated` + - Values + - Type: `Boolean` + - Default: `false` + - __`CHAT_BACKGROUND_OPACITY`__ - Config Key: `chat-background-opacity` - Values diff --git a/docs/developers/mods/directionhud.mdx b/docs/developers/mods/directionhud.mdx index fe4b64a2..00bac58c 100644 --- a/docs/developers/mods/directionhud.mdx +++ b/docs/developers/mods/directionhud.mdx @@ -70,12 +70,6 @@ public void toggleDirectionHUDExample(Player viewer, boolean value) { - Minimum: `0.5F` - Maximum: `3.0F` -- __`USE_LEGACY_STYLE`__ - - Config Key: `use-legacy-style` - - Values - - Type: `Boolean` - - Default: `false` - - __`SHOW_MARKER`__ - Config Key: `show-marker` - Values @@ -88,6 +82,19 @@ public void toggleDirectionHUDExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`USE_LEGACY_STYLE`__ + - Config Key: `use-legacy-style` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SHOW_WITH_TAB`__ + - Choose whether to show the Direction HUD when TAB is open. + - Config Key: `show-with-tab` + - Values + - Type: `Boolean` + - Default: `false` + - __`BACKGROUND_COLOR`__ - Config Key: `background-color` - Values diff --git a/docs/developers/mods/inventorymod.mdx b/docs/developers/mods/inventorymod.mdx new file mode 100644 index 00000000..c38732ee --- /dev/null +++ b/docs/developers/mods/inventorymod.mdx @@ -0,0 +1,38 @@ +# Inventory Mod + +A collection of quality of life tweaks for the inventory. + +## Integration + +### How to toggle the mod + +```java +public void toggleInventoryModExample(Player viewer, boolean value) { + Optional apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId()); + apolloPlayerOpt.ifPresent(apolloPlayer -> this.modSettingModule.getOptions().set(apolloPlayer, ModInventoryMod.ENABLED, value)); +} +``` + +## Available options + +- __`ENABLED`__ + - Config Key: `enabled` + - Values + - Type: `Boolean` + - Default: `false` + +- __`DONT_RESET_CURSOR`__ + - Useful for navigating inventory menus on servers. + - Config Key: `dont-reset-cursor` + - Values + - Type: `Boolean` + - Default: `false` + +- __`RESET_CURSOR_TIMEOUT`__ + - Config Key: `reset-cursor-timeout` + - Values + - Type: `Float` + - Default: `0.3F` + - Minimum: `0.1F` + - Maximum: `5.0F` + diff --git a/docs/developers/mods/keystrokes.mdx b/docs/developers/mods/keystrokes.mdx index eeccfc54..8d1e2134 100644 --- a/docs/developers/mods/keystrokes.mdx +++ b/docs/developers/mods/keystrokes.mdx @@ -47,6 +47,12 @@ public void toggleKeyStrokesExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`USE_ARROWS`__ + - Config Key: `use-arrows` + - Values + - Type: `Boolean` + - Default: `false` + - __`KEY_STROKES_MOVEMENT`__ - Config Key: `key-strokes-movement` - Values @@ -57,13 +63,7 @@ public void toggleKeyStrokesExample(Player viewer, boolean value) { - Config Key: `key-strokes-spacebar` - Values - Type: `Boolean` - - Default: `false` - -- __`USE_ARROWS`__ - - Config Key: `use-arrows` - - Values - - Type: `Boolean` - - Default: `false` + - Default: `true` - __`TEXT_SHADOW`__ - Config Key: `text-shadow` @@ -83,11 +83,49 @@ public void toggleKeyStrokesExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`ANIMATE`__ + - Config Key: `animate` + - Values + - Type: `Boolean` + - Default: `false` + +- __`DURATION`__ + - Config Key: `duration` + - Values + - Type: `Float` + - Default: `0.5F` + - Minimum: `0.1F` + - Maximum: `1.0F` + +- __`ANIMATE_COLOR`__ + - Config Key: `animate-color` + - Values + - Type: `Boolean` + - Default: `false` + +- __`ANIMATION_START_COLOR`__ + - Config Key: `animation-start-color` + - Values + - Type: `String` + - Default: `#C0FFFFFF` + +- __`ANIMATION_CENTER_COLOR`__ + - Config Key: `animation-center-color` + - Values + - Type: `String` + - Default: `#6FFFFFFF` + +- __`ANIMATION_END_COLOR`__ + - Config Key: `animation-end-color` + - Values + - Type: `String` + - Default: `#6FFFFFFF` + - __`BORDER_THICKNESS`__ - Config Key: `border-thickness` - Values - Type: `Float` - - Default: `0.5F` + - Default: `1.0F` - Minimum: `0.5F` - Maximum: `3.0F` @@ -137,3 +175,11 @@ public void toggleKeyStrokesExample(Player viewer, boolean value) { - Minimum: `0L` - Maximum: `500L` +- __`SPACEBAR_THICKNESS`__ + - Config Key: `spacebar-thickness` + - Values + - Type: `Float` + - Default: `1.0F` + - Minimum: `1.0F` + - Maximum: `4.25F` + diff --git a/docs/developers/mods/killsounds.mdx b/docs/developers/mods/killsounds.mdx new file mode 100644 index 00000000..5fadd565 --- /dev/null +++ b/docs/developers/mods/killsounds.mdx @@ -0,0 +1,23 @@ +# Kill Sounds + +Allows you to change kill sounds for players. + +## Integration + +### How to toggle the mod + +```java +public void toggleKillSoundsExample(Player viewer, boolean value) { + Optional apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId()); + apolloPlayerOpt.ifPresent(apolloPlayer -> this.modSettingModule.getOptions().set(apolloPlayer, ModKillSounds.ENABLED, value)); +} +``` + +## Available options + +- __`ENABLED`__ + - Config Key: `enabled` + - Values + - Type: `Boolean` + - Default: `false` + diff --git a/docs/developers/mods/packdisplay.mdx b/docs/developers/mods/packdisplay.mdx index 38ed2e04..30217e2b 100644 --- a/docs/developers/mods/packdisplay.mdx +++ b/docs/developers/mods/packdisplay.mdx @@ -29,6 +29,30 @@ public void togglePackDisplayExample(Player viewer, boolean value) { - Minimum: `0.5F` - Maximum: `1.5F` +- __`PACK_ICON`__ + - Config Key: `pack-icon` + - Values + - Type: `Boolean` + - Default: `true` + +- __`PACK_DESCRIPTION`__ + - Config Key: `pack-description` + - Values + - Type: `Boolean` + - Default: `false` + +- __`PACK_EXTENSION`__ + - Config Key: `pack-extension` + - Values + - Type: `Boolean` + - Default: `false` + +- __`MOVE_TITLE_DOWN`__ + - Config Key: `move-title-down` + - Values + - Type: `Boolean` + - Default: `true` + - __`TEXT_SHADOW`__ - Config Key: `text-shadow` - Values @@ -53,28 +77,6 @@ public void togglePackDisplayExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` -- __`STATIC_BACKGROUND_WIDTH`__ - - If this is disabled the background will change size with the text. - - Config Key: `static-background-width` - - Values - - Type: `Boolean` - - Default: `true` - -- __`STATIC_BACKGROUND_HEIGHT`__ - - If this is disabled the background will change size with the text. - - Config Key: `static-background-height` - - Values - - Type: `Boolean` - - Default: `true` - -- __`BACKGROUND_WIDTH`__ - - Config Key: `background-width` - - Values - - Type: `Integer` - - Default: `100` - - Minimum: `60` - - Maximum: `300` - - __`BACKGROUND_HEIGHT`__ - Config Key: `background-height` - Values @@ -115,15 +117,39 @@ public void togglePackDisplayExample(Player viewer, boolean value) { - Type: `String` - Default: `#FFFFFFFF` -- __`PACK_ICON`__ - - Config Key: `pack-icon` +- __`DESCRIPTION_REPLACEMENT_COLOR`__ + - Config Key: `description-replacement-color` + - Values + - Type: `String` + - Default: `#FFFFFFFF` + +- __`KEEP_BOLD`__ + - Config Key: `keep-bold` - Values - Type: `Boolean` - Default: `true` -- __`PACK_DESCRIPTION`__ - - Config Key: `pack-description` +- __`KEEP_ITALIC`__ + - Config Key: `keep-italic` - Values - Type: `Boolean` - - Default: `false` + - Default: `true` + +- __`KEEP_UNDERLINE`__ + - Config Key: `keep-underline` + - Values + - Type: `Boolean` + - Default: `true` + +- __`KEEP_STRIKETHROUGH`__ + - Config Key: `keep-strikethrough` + - Values + - Type: `Boolean` + - Default: `true` + +- __`KEEP_OBFUSCATED`__ + - Config Key: `keep-obfuscated` + - Values + - Type: `Boolean` + - Default: `true` diff --git a/docs/developers/mods/ping.mdx b/docs/developers/mods/ping.mdx index 15f62ba9..7f3b9672 100644 --- a/docs/developers/mods/ping.mdx +++ b/docs/developers/mods/ping.mdx @@ -26,21 +26,52 @@ public void togglePingExample(Player viewer, boolean value) { - Config Key: `update-interval-sec` - Values - Type: `Integer` - - Default: `15` + - Default: `20` - Minimum: `1` - - Maximum: `30` + - Maximum: `120` -- __`ENABLE_PING_NAMETAG`__ - - Config Key: `enable-ping-nametag` +- __`AVERAGE_SAMPLES`__ + - How many updates to average together (one update happens per the 'update interval' setting) + - Config Key: `average-samples` + - Values + - Type: `Integer` + - Default: `3` + - Minimum: `2` + - Maximum: `20` + +- __`PING_SPIKE_DETECTION`__ + - Config Key: `ping-spike-detection` - Values - Type: `Boolean` - Default: `false` -- __`PING_ABOVE`__ - - Config Key: `ping-above` +- __`MEDIUM_SPIKE_THRESHOLD`__ + - Config Key: `medium-spike-threshold` - Values - - Type: `Boolean` - - Default: `true` + - Type: `Integer` + - Default: `20` + - Minimum: `1` + - Maximum: `200` + +- __`MEDIUM_SPIKE_COLOR`__ + - Config Key: `medium-spike-color` + - Values + - Type: `String` + - Default: `#FFFF9100` + +- __`LARGE_SPIKE_THRESHOLD`__ + - Config Key: `large-spike-threshold` + - Values + - Type: `Integer` + - Default: `50` + - Minimum: `1` + - Maximum: `200` + +- __`LARGE_SPIKE_COLOR`__ + - Config Key: `large-spike-color` + - Values + - Type: `String` + - Default: `#FFFF0000` - __`PING_SHOW_MS`__ - Config Key: `ping-show-ms` @@ -48,11 +79,17 @@ public void togglePingExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`SHOW_PING_PREFIX`__ + - Config Key: `show-ping-prefix` + - Values + - Type: `Boolean` + - Default: `true` + - __`PING_PREFIX_COLOR`__ - Config Key: `ping-prefix-color` - Values - Type: `String` - - Default: `#55555555` + - Default: `#FFFFFFFF` - __`DYNAMIC_PING_COLOR`__ - Config Key: `dynamic-ping-color` diff --git a/docs/developers/mods/potioneffects.mdx b/docs/developers/mods/potioneffects.mdx index db4c0d6d..26d68a17 100644 --- a/docs/developers/mods/potioneffects.mdx +++ b/docs/developers/mods/potioneffects.mdx @@ -53,6 +53,56 @@ public void togglePotionEffectsExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`BACKGROUND`__ + - Config Key: `background` + - Values + - Type: `Boolean` + - Default: `true` + +- __`MINIMAL_MODE`__ + - Config Key: `minimal-mode` + - Values + - Type: `Boolean` + - Default: `false` + +- __`MINIMAL_MODE_HORIZONTAL`__ + - Config Key: `minimal-mode-horizontal` + - Values + - Type: `Boolean` + - Default: `false` + +- __`BORDER`__ + - Config Key: `border` + - Values + - Type: `Boolean` + - Default: `false` + +- __`BORDER_THICKNESS`__ + - Config Key: `border-thickness` + - Values + - Type: `Float` + - Default: `0.5F` + - Minimum: `0.5F` + - Maximum: `3.0F` + +- __`FORMATTED_DURATIONS`__ + - Config Key: `formatted-durations` + - Values + - Type: `Boolean` + - Default: `false` + +- __`UPPERCASE_POTION_NAMES`__ + - Config Key: `uppercase-potion-names` + - Values + - Type: `Boolean` + - Default: `false` + +- __`REVERSED_TEXT`__ + - Config Key: `reversed-text` + - Values + - Type: `Boolean` + - Default: `false` + - __`HIDE_MODERN_ICONS`__ - Config Key: `hide-modern-icons` - Values @@ -73,6 +123,18 @@ public void togglePotionEffectsExample(Player viewer, boolean value) { - Minimum: `2` - Maximum: `20` +- __`BACKGROUND_COLOR`__ + - Config Key: `background-color` + - Values + - Type: `String` + - Default: `#6F000000` + +- __`BORDER_COLOR`__ + - Config Key: `border-color` + - Values + - Type: `String` + - Default: `#9F000000` + - __`COLOR_NAME_BASED_ON_EFFECT`__ - Config Key: `color-name-based-on-effect` - Values diff --git a/docs/developers/mods/radio.mdx b/docs/developers/mods/radio.mdx index 737d4930..87d68f1a 100644 --- a/docs/developers/mods/radio.mdx +++ b/docs/developers/mods/radio.mdx @@ -21,14 +21,6 @@ public void toggleRadioExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` -- __`SCALE`__ - - Config Key: `scale` - - Values - - Type: `Float` - - Default: `1.0F` - - Minimum: `0.5F` - - Maximum: `1.5F` - - __`VOLUME`__ - Config Key: `volume` - Values @@ -43,6 +35,14 @@ public void toggleRadioExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`SCALE`__ + - Config Key: `scale` + - Values + - Type: `Float` + - Default: `1.0F` + - Minimum: `0.5F` + - Maximum: `1.5F` + - __`BACKGROUND`__ - Config Key: `background` - Values diff --git a/docs/developers/mods/screenshot.mdx b/docs/developers/mods/screenshot.mdx index 1e7cc98f..41283ac9 100644 --- a/docs/developers/mods/screenshot.mdx +++ b/docs/developers/mods/screenshot.mdx @@ -45,3 +45,10 @@ public void toggleScreenshotUploaderExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`WORLD_DETAILS`__ + - A screenshot file saved with world details enabled has metadata that contains your player coordinates, the biome, and more. + - Config Key: `world-details` + - Values + - Type: `Boolean` + - Default: `true` + diff --git a/docs/developers/mods/scrollabletooltips.mdx b/docs/developers/mods/scrollabletooltips.mdx index 1ebd4d7b..bfe64801 100644 --- a/docs/developers/mods/scrollabletooltips.mdx +++ b/docs/developers/mods/scrollabletooltips.mdx @@ -19,7 +19,7 @@ public void toggleScrollableTooltipsExample(Player viewer, boolean value) { - Config Key: `enabled` - Values - Type: `Boolean` - - Default: `true` + - Default: `false` - __`START_AT_TOP`__ - Config Key: `start-at-top` diff --git a/docs/developers/mods/skyblock.mdx b/docs/developers/mods/skyblock.mdx index 5b170560..c3c00574 100644 --- a/docs/developers/mods/skyblock.mdx +++ b/docs/developers/mods/skyblock.mdx @@ -86,6 +86,13 @@ public void toggleHypixelSkyblockExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`SKY_BLOCK_MIDDLE_CLICK_ITEMS`__ + - Replaces left clicks in menus with a middle click. Hold control to override. + - Config Key: `sky-block-middle-click-items` + - Values + - Type: `Boolean` + - Default: `false` + - __`SKY_BLOCK_CREATION_DATE`__ - Shows the creation date of the item in the lore. - Config Key: `sky-block-creation-date` @@ -112,6 +119,12 @@ public void toggleHypixelSkyblockExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`SB_MENU_CLICK_TO_COMMAND`__ + - Config Key: `sb-menu-click-to-command` + - Values + - Type: `Boolean` + - Default: `true` + - __`SHOW_GIANT_HPAT_FEET`__ - Makes Giant HP more visible by showing their HP at their feet. - Config Key: `show-giant-h-p-at-feet` @@ -119,11 +132,11 @@ public void toggleHypixelSkyblockExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` -- __`DUNGEON_SECRETS_COLLECTED`__ - - Config Key: `dungeon-secrets-collected` +- __`SKYBLOCK_SECRETS_COLLECTED`__ + - Config Key: `skyblock-secrets-collected` - Values - Type: `Boolean` - - Default: `false` + - Default: `true` - __`TALLER_CROPS`__ - Changes crop hitboxes with their 1.12+ variant. Only enabled on Hypixel or singleplayer. @@ -171,6 +184,20 @@ public void toggleHypixelSkyblockExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `false` +- __`SKYBLOCK_FISHING_HIDE_PLAYERS`__ + - Hides players and fishing rods near your bobber while you are fishing. + - Config Key: `skyblock-fishing-hide-players` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SKYBLOCK_FISHING_HOTSPOT_LOCATOR`__ + - Shows which hotspot the Hotspot Radar item is pointing to. + - Config Key: `skyblock-fishing-hotspot-locator` + - Values + - Type: `Boolean` + - Default: `false` + - __`SLAYER_BOSS_TIMER`__ - Provides a chat message on boss kill that tells you how long it took to kill! - Config Key: `slayer-boss-timer` @@ -227,3 +254,9 @@ public void toggleHypixelSkyblockExample(Player viewer, boolean value) { - Minimum: `1.0F` - Maximum: `10.0F` +- __`SKYBLOCK_USE_TICK_TIMERS`__ + - Config Key: `skyblock-use-tick-timers` + - Values + - Type: `Boolean` + - Default: `true` + diff --git a/docs/developers/mods/tiertagger.mdx b/docs/developers/mods/tiertagger.mdx new file mode 100644 index 00000000..5401ceb7 --- /dev/null +++ b/docs/developers/mods/tiertagger.mdx @@ -0,0 +1,59 @@ +# Tier Tagger + +Show player's PvP tier on their Name Tag + +## Integration + +### How to toggle the mod + +```java +public void toggleTierTaggerExample(Player viewer, boolean value) { + Optional apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId()); + apolloPlayerOpt.ifPresent(apolloPlayer -> this.modSettingModule.getOptions().set(apolloPlayer, ModTierTagger.ENABLED, value)); +} +``` + +## Available options + +- __`ENABLED`__ + - Config Key: `enabled` + - Values + - Type: `Boolean` + - Default: `false` + +- __`MC_TIERS_FORMAT`__ + - Config Key: `mc-tiers-format` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SUFFIX`__ + - Config Key: `suffix` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SEPARATE_NAMETAG`__ + - Config Key: `separate-nametag` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SHOW_GM_ICONS`__ + - Config Key: `show-gm-icons` + - Values + - Type: `Boolean` + - Default: `true` + +- __`SHOW_RETIRED`__ + - Config Key: `show-retired` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SHOW_REGION`__ + - Config Key: `show-region` + - Values + - Type: `Boolean` + - Default: `true` + diff --git a/docs/developers/mods/togglesneak.mdx b/docs/developers/mods/togglesneak.mdx index e6e17485..234deba4 100644 --- a/docs/developers/mods/togglesneak.mdx +++ b/docs/developers/mods/togglesneak.mdx @@ -27,12 +27,24 @@ public void toggleToggleSneakSprintExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`SPRINT_KEYBIND_OVERRIDE`__ + - Config Key: `sprint-keybind-override` + - Values + - Type: `Boolean` + - Default: `false` + - __`TOGGLE_SNEAK`__ - Config Key: `toggle-sneak` - Values - Type: `Boolean` - Default: `false` +- __`SNEAK_KEYBIND_OVERRIDE`__ + - Config Key: `sneak-keybind-override` + - Values + - Type: `Boolean` + - Default: `false` + - __`TOGGLE_SNEAK_CONTAINER`__ - Config Key: `toggle-sneak-container` - Values diff --git a/docs/developers/mods/totemcounter.mdx b/docs/developers/mods/totemcounter.mdx new file mode 100644 index 00000000..4447696d --- /dev/null +++ b/docs/developers/mods/totemcounter.mdx @@ -0,0 +1,77 @@ +# Totem Counter + +Keep track of players' totem usages. Totem pops aren't tracked when the mod is disabled, so toggling it on mid-game could result in a mismatch. + +## Integration + +### How to toggle the mod + +```java +public void toggleTotemCounterExample(Player viewer, boolean value) { + Optional apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId()); + apolloPlayerOpt.ifPresent(apolloPlayer -> this.modSettingModule.getOptions().set(apolloPlayer, ModTotemCounter.ENABLED, value)); +} +``` + +## Available options + +- __`ENABLED`__ + - Config Key: `enabled` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SHOW_FOR_SELF`__ + - Config Key: `show-for-self` + - Values + - Type: `Boolean` + - Default: `true` + +- __`SHOW_TAB_LIST`__ + - Config Key: `show-tab-list` + - Values + - Type: `Boolean` + - Default: `true` + +- __`FLIP`__ + - Config Key: `flip` + - Values + - Type: `Boolean` + - Default: `false` + +- __`COUNT_COLOR`__ + - Config Key: `count-color` + - Values + - Type: `Boolean` + - Default: `true` + +- __`SHOW_NAMETAG`__ + - Config Key: `show-nametag` + - Values + - Type: `Boolean` + - Default: `true` + +- __`SHOW_PREFIX`__ + - Config Key: `show-prefix` + - Values + - Type: `Boolean` + - Default: `false` + +- __`SEPARATE_NAMETAG`__ + - Config Key: `separate-nametag` + - Values + - Type: `Boolean` + - Default: `false` + +- __`RENDER_FIRST`__ + - Config Key: `render-first` + - Values + - Type: `Boolean` + - Default: `false` + +- __`PREFIX_COLOR`__ + - Config Key: `prefix-color` + - Values + - Type: `String` + - Default: `#FFFFFF55` + diff --git a/docs/developers/mods/waila.mdx b/docs/developers/mods/waila.mdx index 82f75205..973ebd17 100644 --- a/docs/developers/mods/waila.mdx +++ b/docs/developers/mods/waila.mdx @@ -29,6 +29,12 @@ public void toggleWAILAExample(Player viewer, boolean value) { - Minimum: `0.5F` - Maximum: `1.5F` +- __`ALWAYS_SHOW`__ + - Config Key: `always-show` + - Values + - Type: `Boolean` + - Default: `false` + - __`SHOW_ENTITIES`__ - Config Key: `show-entities` - Values @@ -67,6 +73,54 @@ public void toggleWAILAExample(Player viewer, boolean value) { - Minimum: `0.5F` - Maximum: `3.0F` +- __`SHOW_BLOCK_COORDS`__ + - Config Key: `show-block-coords` + - Values + - Type: `Boolean` + - Default: `true` + +- __`BLOCK_COORDS_COLOR`__ + - Config Key: `block-coords-color` + - Values + - Type: `String` + - Default: `#FFFFFFFF` + +- __`SHOW_CORRECT_TOOL`__ + - Config Key: `show-correct-tool` + - Values + - Type: `Boolean` + - Default: `true` + +- __`CORRECT_TOOL_COLOR`__ + - Config Key: `correct-tool-color` + - Values + - Type: `String` + - Default: `#FFFFFFFF` + +- __`SHOW_BREAK_TIME`__ + - Config Key: `show-break-time` + - Values + - Type: `Boolean` + - Default: `false` + +- __`BREAK_TIME_COLOR`__ + - Config Key: `break-time-color` + - Values + - Type: `String` + - Default: `#FFFFFFFF` + +- __`SHOW_LIGHT_LEVEL`__ + - Config Key: `show-light-level` + - Values + - Type: `Boolean` + - Default: `false` + +- __`LIGHT_LEVEL_COLOR`__ + - Config Key: `light-level-color` + - Values + - Type: `String` + - Default: `#FFFFFFFF` + - __`TEXT_COLOR`__ - Config Key: `text-color` - Values diff --git a/docs/developers/mods/waypoints.mdx b/docs/developers/mods/waypoints.mdx index 24a60903..b4e0107e 100644 --- a/docs/developers/mods/waypoints.mdx +++ b/docs/developers/mods/waypoints.mdx @@ -21,11 +21,32 @@ public void toggleWaypointsExample(Player viewer, boolean value) { - Type: `Boolean` - Default: `true` +- __`ADD_WAYPOINTS_FROM_CHAT`__ + - Config Key: `add-waypoints-from-chat` + - Values + - Type: `Boolean` + - Default: `true` + - __`DEATH_WAYPOINT`__ - Config Key: `death-waypoint` - Values - Type: `Boolean` - - Default: `false` + - Default: `true` + +- __`LIMIT_DEATH_WAYPOINTS`__ + - Config Key: `limit-death-waypoints` + - Values + - Type: `Boolean` + - Default: `true` + +- __`MAX_DEATH_WAYPOINTS`__ + - Maximum amount of Death Waypoints you will see at one time + - Config Key: `max-death-waypoints` + - Values + - Type: `Integer` + - Default: `3` + - Minimum: `1` + - Maximum: `20` - __`WAYPOINT_BEAMS`__ - Config Key: `waypoint-beams` @@ -53,13 +74,6 @@ public void toggleWaypointsExample(Player viewer, boolean value) { - Minimum: `1.0F` - Maximum: `8.0F` -- __`ONLY_SHOW_WHEN_LOOKING_NEAR`__ - - Only show each waypoint when looking near then in the world - - Config Key: `only-show-when-looking-near` - - Values - - Type: `Boolean` - - Default: `false` - - __`SHOW_ICONS`__ - Show simpler text icons above each waypoint - Config Key: `show-icons` @@ -83,9 +97,10 @@ public void toggleWaypointsExample(Player viewer, boolean value) { - Minimum: `0.1F` - Maximum: `3.0F` -- __`ADD_WAYPOINTS_FROM_CHAT`__ - - Config Key: `add-waypoints-from-chat` +- __`ONLY_SHOW_WHEN_LOOKING_NEAR`__ + - Only show each waypoint when looking near then in the world + - Config Key: `only-show-when-looking-near` - Values - Type: `Boolean` - - Default: `true` + - Default: `false`