Skip to content

Commit 0c42ce3

Browse files
Sync LunarClient Mods & Options
1 parent 08c03f1 commit 0c42ce3

17 files changed

Lines changed: 298 additions & 92 deletions

api/src/main/java/com/lunarclient/apollo/mods/Mods.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
import com.lunarclient.apollo.mods.impl.ModHypixelMod;
5858
import com.lunarclient.apollo.mods.impl.ModInventoryMod;
5959
import com.lunarclient.apollo.mods.impl.ModItemCounter;
60+
import com.lunarclient.apollo.mods.impl.ModItemCustomizer;
6061
import com.lunarclient.apollo.mods.impl.ModItemPhysics;
6162
import com.lunarclient.apollo.mods.impl.ModItemTracker;
6263
import com.lunarclient.apollo.mods.impl.ModKeystrokes;
@@ -160,7 +161,6 @@ public final class Mods {
160161
ModNametag.class,
161162
ModShulkerPreview.class,
162163
ModScrollableTooltips.class,
163-
ModUhcOverlay.class,
164164
ModParticleChanger.class,
165165
ModNickHider.class,
166166
ModCooldowns.class,
@@ -212,6 +212,7 @@ public final class Mods {
212212
ModDamageTint.class,
213213
ModMobSize.class,
214214
ModSkyblock.class,
215+
ModItemCustomizer.class,
215216
ModHorseStats.class,
216217
ModOverlayMod.class,
217218
ModRewind.class,
@@ -220,7 +221,8 @@ public final class Mods {
220221
ModKillSounds.class,
221222
ModInventoryMod.class,
222223
ModF3Display.class,
223-
ModRadio.class
224+
ModRadio.class,
225+
ModUhcOverlay.class
224226
);
225227

226228
private Mods() {

api/src/main/java/com/lunarclient/apollo/mods/impl/ModChat.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,11 +173,12 @@ public final class ModChat {
173173
.build();
174174

175175
/**
176-
* No documentation available.
176+
* Prevents your chat history from being cleared when disconnecting from or switching between servers.
177177
*
178178
* @since 1.0.0
179179
*/
180180
public static final SimpleOption<Boolean> NO_CLOSE_MY_CHAT = SimpleOption.<Boolean>builder()
181+
.comment("Prevents your chat history from being cleared when disconnecting from or switching between servers.")
181182
.node("chat", "no-close-my-chat").type(TypeToken.get(Boolean.class))
182183
.defaultValue(true)
183184
.notifyClient()

api/src/main/java/com/lunarclient/apollo/mods/impl/ModCooldowns.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import com.lunarclient.apollo.option.NumberOption;
2727
import com.lunarclient.apollo.option.SimpleOption;
2828
import io.leangen.geantyref.TypeToken;
29+
import java.awt.Color;
2930

3031
/**
3132
* Allows servers to display items or abilities that are on cooldown on the HUD.
@@ -57,6 +58,50 @@ public final class ModCooldowns {
5758
.notifyClient()
5859
.build();
5960

61+
/**
62+
* No documentation available.
63+
*
64+
* @since %release_version%
65+
*/
66+
public static final SimpleOption<Color> COOLDOWN_CIRCLE_START_COLOR = SimpleOption.<Color>builder()
67+
.node("cooldowns", "cooldown-circle-start-color").type(TypeToken.get(Color.class))
68+
.defaultValue(new Color(89, 89, 89, 153))
69+
.notifyClient()
70+
.build();
71+
72+
/**
73+
* No documentation available.
74+
*
75+
* @since %release_version%
76+
*/
77+
public static final SimpleOption<Color> COOLDOWN_CIRCLE_END_COLOR = SimpleOption.<Color>builder()
78+
.node("cooldowns", "cooldown-circle-end-color").type(TypeToken.get(Color.class))
79+
.defaultValue(new Color(229, 229, 229))
80+
.notifyClient()
81+
.build();
82+
83+
/**
84+
* No documentation available.
85+
*
86+
* @since %release_version%
87+
*/
88+
public static final SimpleOption<Color> COOLDOWN_EDGE_COLOR = SimpleOption.<Color>builder()
89+
.node("cooldowns", "cooldown-edge-color").type(TypeToken.get(Color.class))
90+
.defaultValue(new Color(64, 64, 64))
91+
.notifyClient()
92+
.build();
93+
94+
/**
95+
* No documentation available.
96+
*
97+
* @since %release_version%
98+
*/
99+
public static final SimpleOption<Color> TEXT_COLOR = SimpleOption.<Color>builder()
100+
.node("cooldowns", "text-color").type(TypeToken.get(Color.class))
101+
.defaultValue(new Color(255, 255, 255))
102+
.notifyClient()
103+
.build();
104+
60105
private ModCooldowns() {
61106
}
62107

api/src/main/java/com/lunarclient/apollo/mods/impl/ModHypixelBedwars.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,28 @@ public final class ModHypixelBedwars {
8181
.notifyClient()
8282
.build();
8383

84+
/**
85+
* No documentation available.
86+
*
87+
* @since %release_version%
88+
*/
89+
public static final SimpleOption<Boolean> BW_HIDE_FOOD_BAR = SimpleOption.<Boolean>builder()
90+
.node("hypixel-bedwars", "bw-hide-food-bar").type(TypeToken.get(Boolean.class))
91+
.defaultValue(false)
92+
.notifyClient()
93+
.build();
94+
95+
/**
96+
* No documentation available.
97+
*
98+
* @since %release_version%
99+
*/
100+
public static final SimpleOption<Boolean> BW_HIDE_ARMOR_BAR = SimpleOption.<Boolean>builder()
101+
.node("hypixel-bedwars", "bw-hide-armor-bar").type(TypeToken.get(Boolean.class))
102+
.defaultValue(false)
103+
.notifyClient()
104+
.build();
105+
84106
/**
85107
* No documentation available.
86108
*
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
/*
2+
* This file is part of Apollo, licensed under the MIT License.
3+
*
4+
* Copyright (c) 2026 Moonsworth
5+
*
6+
* Permission is hereby granted, free of charge, to any person obtaining a copy
7+
* of this software and associated documentation files (the "Software"), to deal
8+
* in the Software without restriction, including without limitation the rights
9+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
* copies of the Software, and to permit persons to whom the Software is
11+
* furnished to do so, subject to the following conditions:
12+
*
13+
* The above copyright notice and this permission notice shall be included in all
14+
* copies or substantial portions of the Software.
15+
*
16+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
* SOFTWARE.
23+
*/
24+
package com.lunarclient.apollo.mods.impl;
25+
26+
import com.lunarclient.apollo.option.SimpleOption;
27+
import io.leangen.geantyref.TypeToken;
28+
29+
/**
30+
* Allows you to customize the rendering/animation of held and dropped items.
31+
*
32+
* @since %release_version%
33+
*/
34+
public final class ModItemCustomizer {
35+
36+
/**
37+
* No documentation available.
38+
*
39+
* @since %release_version%
40+
*/
41+
public static final SimpleOption<Boolean> ENABLED = SimpleOption.<Boolean>builder()
42+
.node("item-customizer", "enabled").type(TypeToken.get(Boolean.class))
43+
.defaultValue(false)
44+
.notifyClient()
45+
.build();
46+
47+
private ModItemCustomizer() {
48+
}
49+
50+
}

api/src/main/java/com/lunarclient/apollo/mods/impl/ModOneSevenVisuals.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828

2929
/**
3030
* Revert certain visuals and animations to how they behaved on 1.7.
31+
* Note: the settings of this mod are unique on 1.8, and don't carry over to later versions, and vice versa.
3132
*
3233
* @since 1.0.0
3334
*/
@@ -44,6 +45,18 @@ public final class ModOneSevenVisuals {
4445
.notifyClient()
4546
.build();
4647

48+
/**
49+
* 1.7: Right-clicking while breaking blocks will stop the block break.
50+
*
51+
* @since %release_version%
52+
*/
53+
public static final SimpleOption<Boolean> USE_ITEM_WHILE_DIGGING = SimpleOption.<Boolean>builder()
54+
.comment("1.7: Right-clicking while breaking blocks will stop the block break")
55+
.node("one-seven-visuals", "use-item-while-digging").type(TypeToken.get(Boolean.class))
56+
.defaultValue(true)
57+
.notifyClient()
58+
.build();
59+
4760
/**
4861
* Provides better visual feedback when attacking while keeping vanilla behavior.
4962
*

api/src/main/java/com/lunarclient/apollo/mods/impl/ModOverlayMod.java

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -82,30 +82,6 @@ public final class ModOverlayMod {
8282
.notifyClient()
8383
.build();
8484

85-
/**
86-
* No documentation available.
87-
*
88-
* @since 1.2.2
89-
*/
90-
public static final NumberOption<Float> TOTEM_SCALE = NumberOption.<Float>number()
91-
.node("overlay-mod", "totem-scale").type(TypeToken.get(Float.class))
92-
.min(0.25F).max(1.5F)
93-
.defaultValue(1.0F)
94-
.notifyClient()
95-
.build();
96-
97-
/**
98-
* No documentation available.
99-
*
100-
* @since 1.2.2
101-
*/
102-
public static final NumberOption<Float> HELD_ITEM_SCALE = NumberOption.<Float>number()
103-
.node("overlay-mod", "held-item-scale").type(TypeToken.get(Float.class))
104-
.min(0.25F).max(1.5F)
105-
.defaultValue(1.0F)
106-
.notifyClient()
107-
.build();
108-
10985
/**
11086
* No documentation available.
11187
*
@@ -633,6 +609,32 @@ public final class ModOverlayMod {
633609
.notifyClient()
634610
.build();
635611

612+
/**
613+
* No documentation available.
614+
*
615+
* @since 1.2.2
616+
*/
617+
@Deprecated
618+
public static final NumberOption<Float> TOTEM_SCALE = NumberOption.<Float>number()
619+
.node("overlay-mod", "totem-scale").type(TypeToken.get(Float.class))
620+
.min(0.25F).max(1.5F)
621+
.defaultValue(1.0F)
622+
.notifyClient()
623+
.build();
624+
625+
/**
626+
* No documentation available.
627+
*
628+
* @since 1.2.2
629+
*/
630+
@Deprecated
631+
public static final NumberOption<Float> HELD_ITEM_SCALE = NumberOption.<Float>number()
632+
.node("overlay-mod", "held-item-scale").type(TypeToken.get(Float.class))
633+
.min(0.25F).max(1.5F)
634+
.defaultValue(1.0F)
635+
.notifyClient()
636+
.build();
637+
636638
private ModOverlayMod() {
637639
}
638640

api/src/main/java/com/lunarclient/apollo/mods/impl/ModSkyblock.java

Lines changed: 65 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -177,12 +177,13 @@ public final class ModSkyblock {
177177
.build();
178178

179179
/**
180-
* No documentation available.
180+
* Fixes being unable to use the "Pick Block" keybind on items when it is bound to a mouse button.
181181
*
182-
* @since 1.2.1
182+
* @since %release_version%
183183
*/
184-
public static final SimpleOption<Boolean> SKYBLOCK_BOW_REEQUIP = SimpleOption.<Boolean>builder()
185-
.node("skyblock", "skyblock-bow-reequip").type(TypeToken.get(Boolean.class))
184+
public static final SimpleOption<Boolean> MIDDLE_CLICK_ARMOR_FIX = SimpleOption.<Boolean>builder()
185+
.comment("Fixes being unable to use the "Pick Block" keybind on items when it is bound to a mouse button.")
186+
.node("skyblock", "middle-click-armor-fix").type(TypeToken.get(Boolean.class))
186187
.defaultValue(true)
187188
.notifyClient()
188189
.build();
@@ -276,17 +277,6 @@ public final class ModSkyblock {
276277
.notifyClient()
277278
.build();
278279

279-
/**
280-
* No documentation available.
281-
*
282-
* @since 1.2.2
283-
*/
284-
public static final SimpleOption<Boolean> SKYBLOCK_HIDE_RANDOM_BOSSBARS = SimpleOption.<Boolean>builder()
285-
.node("skyblock", "skyblock-hide-random-bossbars").type(TypeToken.get(Boolean.class))
286-
.defaultValue(true)
287-
.notifyClient()
288-
.build();
289-
290280
/**
291281
* Provides QOL for the Diana mayor that helps the user quickly locate burrows.
292282
*
@@ -409,18 +399,6 @@ public final class ModSkyblock {
409399
.notifyClient()
410400
.build();
411401

412-
/**
413-
* Changes crop hitboxes with their 1.12+ variant. Only enabled on Hypixel or singleplayer.
414-
*
415-
* @since 1.0.9
416-
*/
417-
public static final SimpleOption<Boolean> TALLER_CROPS = SimpleOption.<Boolean>builder()
418-
.comment("Changes crop hitboxes with their 1.12+ variant. Only enabled on Hypixel or singleplayer.")
419-
.node("skyblock", "taller-crops").type(TypeToken.get(Boolean.class))
420-
.defaultValue(false)
421-
.notifyClient()
422-
.build();
423-
424402
/**
425403
* No documentation available.
426404
*
@@ -899,6 +877,66 @@ public final class ModSkyblock {
899877
.notifyClient()
900878
.build();
901879

880+
/**
881+
* No documentation available.
882+
*
883+
* @since %release_version%
884+
*/
885+
public static final SimpleOption<Boolean> CUSTOM_CHIME_VOLUME_ENABLED = SimpleOption.<Boolean>builder()
886+
.node("skyblock", "custom-chime-volume-enabled").type(TypeToken.get(Boolean.class))
887+
.defaultValue(false)
888+
.notifyClient()
889+
.build();
890+
891+
/**
892+
* No documentation available.
893+
*
894+
* @since %release_version%
895+
*/
896+
public static final NumberOption<Float> CUSTOM_CHIME_VOLUME = NumberOption.<Float>number()
897+
.node("skyblock", "custom-chime-volume").type(TypeToken.get(Float.class))
898+
.min(0.0F).max(1.0F)
899+
.defaultValue(5.0F)
900+
.notifyClient()
901+
.build();
902+
903+
/**
904+
* No documentation available.
905+
*
906+
* @since 1.2.1
907+
*/
908+
@Deprecated
909+
public static final SimpleOption<Boolean> SKYBLOCK_BOW_REEQUIP = SimpleOption.<Boolean>builder()
910+
.node("skyblock", "skyblock-bow-reequip").type(TypeToken.get(Boolean.class))
911+
.defaultValue(true)
912+
.notifyClient()
913+
.build();
914+
915+
/**
916+
* No documentation available.
917+
*
918+
* @since 1.2.2
919+
*/
920+
@Deprecated
921+
public static final SimpleOption<Boolean> SKYBLOCK_HIDE_RANDOM_BOSSBARS = SimpleOption.<Boolean>builder()
922+
.node("skyblock", "skyblock-hide-random-bossbars").type(TypeToken.get(Boolean.class))
923+
.defaultValue(true)
924+
.notifyClient()
925+
.build();
926+
927+
/**
928+
* Changes crop hitboxes with their 1.12+ variant. Only enabled on Hypixel or singleplayer.
929+
*
930+
* @since 1.0.9
931+
*/
932+
@Deprecated
933+
public static final SimpleOption<Boolean> TALLER_CROPS = SimpleOption.<Boolean>builder()
934+
.comment("Changes crop hitboxes with their 1.12+ variant. Only enabled on Hypixel or singleplayer.")
935+
.node("skyblock", "taller-crops").type(TypeToken.get(Boolean.class))
936+
.defaultValue(false)
937+
.notifyClient()
938+
.build();
939+
902940
/**
903941
* No documentation available.
904942
*

0 commit comments

Comments
 (0)