@@ -176,6 +176,20 @@ public final class SeedMapperHelperHack extends Hack
176176 private final ButtonSetting applyEspTimeoutMinutesButton =
177177 new ButtonSetting ("Apply EspTimeoutMinutes" ,
178178 this ::applyEspTimeoutMinutes );
179+ private final TextFieldSetting worldBorderLimitSetting =
180+ new TextFieldSetting ("World border limit" , "" , AMOUNT_VALIDATOR );
181+ private final ButtonSetting applyWorldBorderLimitButton =
182+ new ButtonSetting ("Apply WorldBorder" , this ::applyWorldBorderLimit );
183+ private final CheckboxSetting manualWaypointCompassOverlaySetting =
184+ new CheckboxSetting ("Compass overlay" , false );
185+ private final ButtonSetting applyManualWaypointCompassOverlayButton =
186+ new ButtonSetting ("Apply ManualWaypointCompassOverlay" ,
187+ this ::applyManualWaypointCompassOverlay );
188+ private final CheckboxSetting autoApplySeedCrackerSeedSetting =
189+ new CheckboxSetting ("Auto apply SeedCracker seed" , false );
190+ private final ButtonSetting applyAutoApplySeedCrackerSeedButton =
191+ new ButtonSetting ("Apply AutoApplySeedCrackerSeed" ,
192+ this ::applyAutoApplySeedCrackerSeed );
179193 private final List <EspProfile > espProfiles = new ArrayList <>();
180194 private boolean connectionPreviouslyNull = true ;
181195
@@ -392,6 +406,12 @@ public SeedMapperHelperHack()
392406 addSetting (applyDevModeButton );
393407 addSetting (espTimeoutMinutesSetting );
394408 addSetting (applyEspTimeoutMinutesButton );
409+ addSetting (worldBorderLimitSetting );
410+ addSetting (applyWorldBorderLimitButton );
411+ addSetting (manualWaypointCompassOverlaySetting );
412+ addSetting (applyManualWaypointCompassOverlayButton );
413+ addSetting (autoApplySeedCrackerSeedSetting );
414+ addSetting (applyAutoApplySeedCrackerSeedButton );
395415 addSection ("SeedMapper commands" , "General-purpose SeedMapper actions." ,
396416 statusButton , seedMapButton , minimapButton , enableMinimapButton ,
397417 disableMinimapButton , clearOverlaysButton , checkSeedButton ,
@@ -407,7 +427,11 @@ public SeedMapperHelperHack()
407427 pixelsPerBiomeSetting , applyPixelsPerBiomeButton ,
408428 toggledFeaturesSetting , applyToggledFeaturesButton , devModeSetting ,
409429 applyDevModeButton , espTimeoutMinutesSetting ,
410- applyEspTimeoutMinutesButton );
430+ applyEspTimeoutMinutesButton , worldBorderLimitSetting ,
431+ applyWorldBorderLimitButton , manualWaypointCompassOverlaySetting ,
432+ applyManualWaypointCompassOverlayButton ,
433+ autoApplySeedCrackerSeedSetting ,
434+ applyAutoApplySeedCrackerSeedButton );
411435 addSection ("SeedMap minimap" , "Configure the in-game minimap overlay." ,
412436 minimapOffsetXSetting , applyMinimapOffsetXButton ,
413437 minimapOffsetYSetting , applyMinimapOffsetYButton ,
@@ -963,6 +987,39 @@ private void applyEspTimeoutMinutes()
963987 "set EspTimeoutMinutes" );
964988 }
965989
990+ private void applyWorldBorderLimit ()
991+ {
992+ String limit = worldBorderLimitSetting .getValue ().trim ();
993+ if (limit .isEmpty ())
994+ {
995+ ChatUtils .error ("Enter a world border limit." );
996+ return ;
997+ }
998+ if (!AMOUNT_VALIDATOR .test (limit ))
999+ {
1000+ ChatUtils .error ("World border limit must be a whole number." );
1001+ return ;
1002+ }
1003+ runSimpleCommand ("sm:config WorldBorder set " + limit ,
1004+ "set WorldBorder to " + limit );
1005+ }
1006+
1007+ private void applyManualWaypointCompassOverlay ()
1008+ {
1009+ runSimpleCommand (
1010+ "sm:config ManualWaypointCompassOverlay set "
1011+ + manualWaypointCompassOverlaySetting .isChecked (),
1012+ "set ManualWaypointCompassOverlay" );
1013+ }
1014+
1015+ private void applyAutoApplySeedCrackerSeed ()
1016+ {
1017+ runSimpleCommand (
1018+ "sm:config AutoApplySeedCrackerSeed set "
1019+ + autoApplySeedCrackerSeedSetting .isChecked (),
1020+ "set AutoApplySeedCrackerSeed" );
1021+ }
1022+
9661023 private void handleSeedCheckFeedback (String message )
9671024 {
9681025 if (message == null || message .isEmpty ())
0 commit comments