diff --git a/build.gradle b/build.gradle index e8f883b..098b2a7 100644 --- a/build.gradle +++ b/build.gradle @@ -113,8 +113,9 @@ publishing { // retrieving dependencies. } } - loom { +// accessWidener = file("src/main/resources/skyplusplus.accesswidener") +// accessWidenerPath = file("src/main/resources/skyplusplus.accesswidener") runConfigs.all { ideConfigGenerated true // Run configurations are not created for subprojects by default runDir "../../run" // Use a shared run folder and create separate worlds diff --git a/settings.gradle b/settings.gradle index 70876ce..f11f07e 100644 --- a/settings.gradle +++ b/settings.gradle @@ -18,6 +18,6 @@ stonecutter { centralScript = "build.gradle" create(getRootProject()) { - versions "1.19.2", "1.19.4", "1.20.1", "1.20.4" + versions "1.19.2", "1.19.4", "1.20.1", "1.20.4", "1.21.8" } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/SkyPlusPlus.java b/src/main/java/com/anotherpillow/skyplusplus/SkyPlusPlus.java index e295229..e066ae0 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/SkyPlusPlus.java +++ b/src/main/java/com/anotherpillow/skyplusplus/SkyPlusPlus.java @@ -6,10 +6,10 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.font.TextRenderer; //? if >=1.20.1 { -/*import net.minecraft.client.gui.DrawContext; -*///?} else { -import net.minecraft.client.gui.DrawableHelper; - //?} +import net.minecraft.client.gui.DrawContext; +//?} else { +/*import net.minecraft.client.gui.DrawableHelper; + *///?} import org.apache.logging.log4j.Level; import org.apache.logging.log4j.LogManager; diff --git a/src/main/java/com/anotherpillow/skyplusplus/client/SkyPlusPlusClient.java b/src/main/java/com/anotherpillow/skyplusplus/client/SkyPlusPlusClient.java index 5c58e4a..ebf658e 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/client/SkyPlusPlusClient.java +++ b/src/main/java/com/anotherpillow/skyplusplus/client/SkyPlusPlusClient.java @@ -29,6 +29,8 @@ import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; import net.minecraft.util.math.Direction; import net.minecraft.world.World; +//? >=1.21 +import org.joml.Matrix3x2f; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -99,7 +101,19 @@ public void onInitializeClient() { } - TraderImage.draw(/*? >=1.20.1 {*/ /*renderObject.getMatrices() *//*?} else {*/ renderObject /*?}*/); + //? <1.21 && >=1.20.1 { + /*TraderImage.draw(renderObject.getMatrices()); + *///?} else if <1.20.1 { + /*TraderImage.draw(renderObject); + *///?} + + + //? >=1.21 { + Matrix3x2f m = new Matrix3x2f(); + renderObject.getMatrices().get(m); + TraderImage.draw(m); + //?} + } }); @@ -112,10 +126,10 @@ public void onInitializeClient() { DiscordRPC.onTick(); //? if >1.19.2 { - /*BlockPos pos = new BlockPos((int) player.getX(), (int) player.getY(), (int) player.getZ()); - *///?} else { - BlockPos pos = new BlockPos(player.getX(), player.getY(), player.getZ()); - //?} + BlockPos pos = new BlockPos((int) player.getX(), (int) player.getY(), (int) player.getZ()); + //?} else { + /*BlockPos pos = new BlockPos(player.getX(), player.getY(), player.getZ()); + *///?} if (pos.equals(lastPos)) return; if (config.enableTraderFinder) { diff --git a/src/main/java/com/anotherpillow/skyplusplus/commands/GetHeadTextureCommand.java b/src/main/java/com/anotherpillow/skyplusplus/commands/GetHeadTextureCommand.java index 9f866be..57eecca 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/commands/GetHeadTextureCommand.java +++ b/src/main/java/com/anotherpillow/skyplusplus/commands/GetHeadTextureCommand.java @@ -9,6 +9,11 @@ import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager; import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource; import net.minecraft.client.MinecraftClient; +//? >=1.21 { +import net.minecraft.component.ComponentMap; +import net.minecraft.component.DataComponentTypes; +//}? +import net.minecraft.component.type.ProfileComponent; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NbtCompound; @@ -29,7 +34,8 @@ public class GetHeadTextureCommand { public static void register(CommandDispatcher dispatcher) { MinecraftClient client = MinecraftClient.getInstance(); - dispatcher.register(ClientCommandManager.literal("getheadtexture").executes(context -> { + //? <1.21 { + /*dispatcher.register(ClientCommandManager.literal("getheadtexture").executes(context -> { if (client.player == null) { return 0; } @@ -46,7 +52,16 @@ public static void register(CommandDispatcher dispatc return; } + //? if >=1.21 { + ComponentMap components = mainHand.getComponents(); + + if (components.isEmpty()) { + return; + } + + NbtCompound itemTag = mainHand.getNbt(); + if (itemTag == null) { return; } @@ -57,6 +72,10 @@ public static void register(CommandDispatcher dispatc } NbtCompound skullOwner = itemTag.getCompound("SkullOwner"); + + + + if (!skullOwner.contains("Properties", NbtElement.COMPOUND_TYPE)) { Chat.send(Chat.addLogo("No Properties tag found in SkullOwner")); return; @@ -129,6 +148,8 @@ public static void register(CommandDispatcher dispatc Chat.send(Chat.addLogo(finalMessage)); }); return 1; - })); + }));*///?} } + + } diff --git a/src/main/java/com/anotherpillow/skyplusplus/commands/GetNBTJsonCommand.java b/src/main/java/com/anotherpillow/skyplusplus/commands/GetNBTJsonCommand.java index c35e1ce..b188b3e 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/commands/GetNBTJsonCommand.java +++ b/src/main/java/com/anotherpillow/skyplusplus/commands/GetNBTJsonCommand.java @@ -37,7 +37,8 @@ public static void register(CommandDispatcher dispatc client.send(() -> { ItemStack mainHand = client.player.getStackInHand(Hand.MAIN_HAND); - if (!mainHand.hasNbt()) { + //? <1.21 { + /*if (!mainHand.hasNbt()) { Chat.send(Chat.addLogo("No NBT found on held item")); return; } @@ -46,6 +47,9 @@ public static void register(CommandDispatcher dispatc String jsonNBT = NbtOps.INSTANCE.convertTo(JsonOps.INSTANCE, nbt).toString(); MutableText txt = Text.literal(jsonNBT) .setStyle(Style.EMPTY.withClickEvent(new ClickEvent(ClickEvent.Action.COPY_TO_CLIPBOARD, jsonNBT)).withUnderline(true)); + *///?} else { + MutableText txt = Text.of("no worky on 1.21.8").copy(); + //?} Chat.send(Chat.addLogo(txt)); }); diff --git a/src/main/java/com/anotherpillow/skyplusplus/commands/RunAfterCommand.java b/src/main/java/com/anotherpillow/skyplusplus/commands/RunAfterCommand.java index d112683..37d088c 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/commands/RunAfterCommand.java +++ b/src/main/java/com/anotherpillow/skyplusplus/commands/RunAfterCommand.java @@ -32,12 +32,12 @@ public void run() { client.send(() -> { if (client.player == null) return; //? if >1.19.2 { - /*if (command.startsWith("/")) client.getNetworkHandler().sendChatMessage(command.substring(1)); + if (command.startsWith("/")) client.getNetworkHandler().sendChatMessage(command.substring(1)); else client.getNetworkHandler().sendChatMessage(command); - *///?} else { - if (command.startsWith("/")) client.player.sendCommand(command.substring(1), Text.empty()); + //?} else { + /*if (command.startsWith("/")) client.player.sendCommand(command.substring(1), Text.empty()); else client.player.sendChatMessage(command, Text.of(command)); - //?} + *///?} }); diff --git a/src/main/java/com/anotherpillow/skyplusplus/commands/ShareCommand.java b/src/main/java/com/anotherpillow/skyplusplus/commands/ShareCommand.java index 9c5323d..ed8ae9b 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/commands/ShareCommand.java +++ b/src/main/java/com/anotherpillow/skyplusplus/commands/ShareCommand.java @@ -22,10 +22,10 @@ import net.minecraft.util.Formatting; import net.minecraft.util.Hand; //? if >1.19.2 { -/*import net.minecraft.registry.Registries; -*///?} else { -import net.minecraft.util.registry.Registry; -//?} +import net.minecraft.registry.Registries; +//?} else { +/*import net.minecraft.util.registry.Registry; +*///?} import java.io.IOException; import java.net.URI; @@ -45,20 +45,31 @@ public static void register(CommandDispatcher dispatc return 0; } - CompletableFuture.runAsync(() -> { + //? if >=1.21 { + Runnable placeholder = () -> { + //?} else { + /*CompletableFuture.runAsync(() -> { + *///?} + ItemStack mainHand = client.player.getStackInHand(Hand.MAIN_HAND); String jsonNBT = "{}"; - if (mainHand.hasNbt()) { + //? if >=1.21 { + //?} else { + /*if (mainHand.hasNbt()) { NbtCompound nbt = mainHand.getNbt(); jsonNBT = NbtOps.INSTANCE.convertTo(JsonOps.INSTANCE, nbt).toString(); } + *///?} + //? if >1.19.2 { - /*String itemId = Registries.ITEM.getKey(mainHand.getItem()).get().getValue().toString(); - *///?} else { - String itemId = Registry.ITEM.getKey(mainHand.getItem()).get().getValue().toString(); - //?} + String itemId = Registries.ITEM.getKey(mainHand.getItem()).get().getValue().toString(); + //?} else { + /*String itemId = Registry.ITEM.getKey(mainHand.getItem()).get().getValue().toString(); + *///?} + + if (jsonNBT.equals("{}")) return; Gson gson = new Gson(); JsonObject json = new JsonObject(); @@ -103,7 +114,12 @@ public static void register(CommandDispatcher dispatc String url = bodyJson.get("message").getAsString(); MutableText urlText = Text.literal(url) .setStyle(Style.EMPTY.withClickEvent( - new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + //? if >=1.21 { + new ClickEvent.OpenUrl(URI.create(url))) + //?} else { + /*new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + *///?} + .withUnderline(true)); MutableText finalMessage = Text.literal("Shared URL: ").append(urlText); Chat.send(Chat.addLogo(finalMessage)); @@ -112,7 +128,12 @@ public static void register(CommandDispatcher dispatc } - }); + + //? if >=1.21 { + }; + //?} else { + /*}); + *///?} return 1; })); } diff --git a/src/main/java/com/anotherpillow/skyplusplus/config/SkyPlusPlusConfig.java b/src/main/java/com/anotherpillow/skyplusplus/config/SkyPlusPlusConfig.java index 835cce3..cc53bff 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/config/SkyPlusPlusConfig.java +++ b/src/main/java/com/anotherpillow/skyplusplus/config/SkyPlusPlusConfig.java @@ -1,7 +1,7 @@ package com.anotherpillow.skyplusplus.config; //? if >1.19.2 { -/*import com.anotherpillow.skyplusplus.util.TimeConsts; +import com.anotherpillow.skyplusplus.util.TimeConsts; import dev.isxander.yacl3.api.*; import dev.isxander.yacl3.api.controller.IntegerSliderControllerBuilder; import dev.isxander.yacl3.api.controller.StringControllerBuilder; @@ -15,8 +15,8 @@ import net.minecraft.client.gui.screen.Screen; import net.minecraft.text.Text; import net.fabricmc.loader.api.FabricLoader; -*///?} else { -import com.anotherpillow.skyplusplus.util.TimeConsts; +//?} else { +/*import com.anotherpillow.skyplusplus.util.TimeConsts; import dev.isxander.yacl.api.ConfigCategory; import dev.isxander.yacl.api.Option; import dev.isxander.yacl.api.OptionGroup; @@ -30,7 +30,7 @@ import net.minecraft.client.gui.screen.Screen; import net.minecraft.text.Text; import net.fabricmc.loader.api.FabricLoader; -//?} +*///?} import java.nio.file.Path; @@ -112,58 +112,58 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.trader-enable")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-enable-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.trader-enable-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-enable-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.trader-enable-desc")) + *///?} .binding(defaults.enableTraderFinder, () -> config.enableTraderFinder, v -> config.enableTraderFinder = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.trader-enable-title")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-enable-title-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.trader-enable-title-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-enable-title-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.trader-enable-title-desc")) + *///?} .binding(defaults.enableTraderTitles, () -> config.enableTraderTitles, v -> config.enableTraderTitles = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(int.class) .name(Text.translatable("skyplusplus.config.trader-notif-x")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-notif-x-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.trader-notif-x-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-notif-x-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.trader-notif-x-desc")) + *///?} .binding(defaults.traderX, () -> config.traderX, v -> config.traderX = v) //? if >1.19.2 { - /*.controller(opt -> IntegerSliderControllerBuilder.create(opt).range(0, 4000).step(16)) - *///?} else { - .controller(opt -> new IntegerSliderController(opt, 0, 200, 1)) - //?} + .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(0, 4000).step(16)) + //?} else { + /*.controller(opt -> new IntegerSliderController(opt, 0, 200, 1)) + *///?} .build()) .option(Option.createBuilder(int.class) .name(Text.translatable("skyplusplus.config.trader-notif-y")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-notif-y-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.trader-notif-y-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.trader-notif-y-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.trader-notif-y-desc")) + *///?} .binding(defaults.traderY, () -> config.traderY, v -> config.traderY = v) //? if >1.19.2 { - /*.controller(opt -> IntegerSliderControllerBuilder.create(opt).range(0, 4000).step(16)) - *///?} else { - .controller(opt -> new IntegerSliderController(opt, 0, 4000, 16)) - //?} + .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(0, 4000).step(16)) + //?} else { + /*.controller(opt -> new IntegerSliderController(opt, 0, 4000, 16)) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -171,212 +171,212 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidevisitmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidevisitmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidevisitmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidevisitmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidevisitmsgs-desc")) + *///?} .binding(defaults.hideVisitingMessages, () -> config.hideVisitingMessages, v -> config.hideVisitingMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidevisittitles")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidevisittitles-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidevisittitles-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidevisittitles-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidevisittitles-desc")) + *///?} .binding(defaults.hideVisitingTitle, () -> config.hideVisitingTitle, v -> config.hideVisitingTitle = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidesbmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidesbmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidesbmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidesbmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidesbmsgs-desc")) + *///?} .binding(defaults.hideSkyblockMessages, () -> config.hideSkyblockMessages, v -> config.hideSkyblockMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hideunscramble")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideunscramble-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hideunscramble-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideunscramble-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hideunscramble-desc")) + *///?} .binding(defaults.hideUnscramblingMessages, () -> config.hideUnscramblingMessages, v -> config.hideUnscramblingMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hideafk")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideafk-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hideafk-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideafk-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hideafk-desc")) + *///?} .binding(defaults.hideAFKMessages, () -> config.hideAFKMessages, v -> config.hideAFKMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidenewusermsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidenewusermsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidenewusermsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidenewusermsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidenewusermsgs-desc")) + *///?} .binding(defaults.hideNewUserMessages, () -> config.hideNewUserMessages, v -> config.hideNewUserMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc")) + *///?} .binding(defaults.hideDeathsMessages, () -> config.hideDeathsMessages, v -> config.hideDeathsMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hiderafflemsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hiderafflemsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hiderafflemsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hiderafflemsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hiderafflemsgs-desc")) + *///?} .binding(defaults.hideRaffleMessages, () -> config.hideRaffleMessages, v -> config.hideRaffleMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hideadvancementmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidedeathcountmsgs-desc")) + *///?} .binding(defaults.hideAdvancementMessages, () -> config.hideAdvancementMessages, v -> config.hideAdvancementMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidebroadcastmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidebroadcastmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidebroadcastmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidebroadcastmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidebroadcastmsgs-desc")) + *///?} .binding(defaults.hideBroadcastMessages, () -> config.hideBroadcastMessages, v -> config.hideBroadcastMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hideislandexpansionmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideislandexpansionmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hideislandexpansionmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideislandexpansionmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hideislandexpansionmsgs-desc")) + *///?} .binding(defaults.hideExpandMessages, () -> config.hideExpandMessages, v -> config.hideExpandMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hideluckycratemsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideluckycratemsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hideluckycratemsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hideluckycratemsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hideluckycratemsgs-desc")) + *///?} .binding(defaults.hideLuckyCratesMessages, () -> config.hideLuckyCratesMessages, v -> config.hideLuckyCratesMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidemailmsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidemailmsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidemailmsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidemailmsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidemailmsgs-desc")) + *///?} .binding(defaults.hideMailMessages, () -> config.hideMailMessages, v -> config.hideMailMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.hidevotemsgs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidevotemsgs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.hidevotemsgs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.hidevotemsgs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.hidevotemsgs-desc")) + *///?} .binding(defaults.hideVoteMessages, () -> config.hideVoteMessages, v -> config.hideVoteMessages = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.chatfilter.removechatranks")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.removechatranks-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.chatfilter.removechatranks-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.chatfilter.removechatranks-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.chatfilter.removechatranks-desc")) + *///?} .binding(defaults.removeChatRanks, () -> config.removeChatRanks, v -> config.removeChatRanks = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -384,30 +384,30 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.autoresponder.enable")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.autoresponder.enable-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.autoresponder.enable-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.autoresponder.enable-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.autoresponder.enable-desc")) + *///?} .binding(defaults.enableAutoResponder, () -> config.enableAutoResponder, v -> config.enableAutoResponder = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.autoresponder.message-desc")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.autoresponder.message"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.autoresponder.message")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.autoresponder.message"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.autoresponder.message")) + *///?} .binding(defaults.autoResponderMessage, () -> config.autoResponderMessage, v -> config.autoResponderMessage = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -415,58 +415,58 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-desc")) + *///?} .binding(defaults.chatPrefix, () -> config.chatPrefix, v -> config.chatPrefix = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-desc")) + *///?} .binding(defaults.chatSuffix, () -> config.chatSuffix, v -> config.chatSuffix = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-message")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-message-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-message-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-message-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.prefix-message-desc")) + *///?} .binding(defaults.chatPrefixMessage, () -> config.chatPrefixMessage, v -> config.chatPrefixMessage = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-message")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-message-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-message-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-message-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.message-prefix-suffix.suffix-message-desc")) + *///?} .binding(defaults.chatSuffixMessage, () -> config.chatSuffixMessage, v -> config.chatSuffixMessage = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -474,100 +474,100 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.changebiome")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.changebiome-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.changebiome-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.changebiome-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.changebiome-desc")) + *///?} .binding(defaults.betterChangeBiomeEnabled, () -> config.betterChangeBiomeEnabled, v -> config.betterChangeBiomeEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.better-crate-keys")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.better-crate-keys-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.better-crate-keys-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.better-crate-keys-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.better-crate-keys-desc")) + *///?} .binding(defaults.betterCrateKeysEnabled, () -> config.betterCrateKeysEnabled, v -> config.betterCrateKeysEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui-desc")) + *///?} .binding(defaults.cleanAdGuiEnabled, () -> config.cleanAdGuiEnabled, v -> config.cleanAdGuiEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.clean-quests-gui")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.clean-quests-gui-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.clean-ads-gui-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.clean-quests-gui-desc")) + *///?} .binding(defaults.cleanQuestGuiEnabled, () -> config.cleanQuestGuiEnabled, v -> config.cleanQuestGuiEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.show-empty-shops")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.show-empty-shops-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.show-empty-shops-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.show-empty-shops-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.show-empty-shops-desc")) + *///?} .binding(defaults.showEmptyShopsEnabled, () -> config.showEmptyShopsEnabled, v -> config.showEmptyShopsEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.dynamic-scoreboard-title")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.dynamic-scoreboard-title-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.dynamic-scoreboard-title-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.dynamic-scoreboard-title-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.dynamic-scoreboard-title-desc")) + *///?} .binding(defaults.dynamicScoreboardTitle, () -> config.dynamicScoreboardTitle, v -> config.dynamicScoreboardTitle = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.better-items-uis.reedit-private-signs")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.reedit-private-signs-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.better-items-uis.reedit-private-signs-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.better-items-uis.reedit-private-signs-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.better-items-uis.reedit-private-signs-desc")) + *///?} .binding(defaults.reEditPrivateSigns, () -> config.reEditPrivateSigns, v -> config.reEditPrivateSigns = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -575,128 +575,128 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.extratab")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.extratab-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.extratab-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.extratab-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.extratab-desc")) + *///?} .binding(defaults.extraTabEnabled, () -> config.extraTabEnabled, v -> config.extraTabEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-head-dropping")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-head-dropping-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-head-dropping-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-head-dropping-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-head-dropping-desc")) + *///?} .binding(defaults.preventHeadDropping, () -> config.preventHeadDropping, v -> config.preventHeadDropping = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-grass-placing")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-grass-placing-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-grass-placing-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-grass-placing-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.prevent-grass-placing-desc")) + *///?} .binding(defaults.antiGrassPlace, () -> config.antiGrassPlace, v -> config.antiGrassPlace = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.autoraffle")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.autoraffle-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.autoraffle-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.autoraffle-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.autoraffle-desc")) + *///?} .binding(defaults.autoRaffleEnabled, () -> config.autoRaffleEnabled, v -> config.autoRaffleEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.antipc")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.antipc-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.antipc-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.antipc-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.antipc-desc")) + *///?} .binding(defaults.antiPCEnabled, () -> config.antiPCEnabled, v -> config.antiPCEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.automatic-lowercase-commands")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.automatic-lowercase-commands-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.automatic-lowercase-commands-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.automatic-lowercase-commands-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.automatic-lowercase-commands-desc")) + *///?} .binding(defaults.lowerCommandsEnabled, () -> config.lowerCommandsEnabled, v -> config.lowerCommandsEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.join-commands")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.join-commands-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.join-commands-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.join-commands-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.join-commands-desc")) + *///?} .binding(defaults.joinCommandsList, () -> config.joinCommandsList, v -> config.joinCommandsList = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.copy-chat-message")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.copy-chat-message"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.copy-chat-message-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.copy-chat-message"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.copy-chat-message-desc")) + *///?} .binding(defaults.copyChatMessageButtonEnabled, () -> config.copyChatMessageButtonEnabled, v -> config.copyChatMessageButtonEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tweaks-improvements.chatcryption")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.chatcryption"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.chatcryption-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tweaks-improvements.chatcryption"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tweaks-improvements.chatcryption-desc")) + *///?} .binding(defaults.chatcryptionEnabled, () -> config.chatcryptionEnabled, v -> config.chatcryptionEnabled = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -704,16 +704,16 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.discord-rpc.enable")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.discord-rpc.enable-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.discord-rpc.enable-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.discord-rpc.enable-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.discord-rpc.enable-desc")) + *///?} .binding(defaults.enableDiscordRPC, () -> config.enableDiscordRPC, v -> config.enableDiscordRPC = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -721,86 +721,86 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.auto-advertisements.economy-enable")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.economy-enable-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.auto-advertisements.economy-enable-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.economy-enable-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.auto-advertisements.economy-enable-desc")) + *///?} .binding(defaults.enableEconomyAdverts, () -> config.enableEconomyAdverts, v -> config.enableEconomyAdverts = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.auto-advertisements.survival-enable")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.survival-enable-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.auto-advertisements.survival-enable-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.survival-enable-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.auto-advertisements.survival-enable-desc")) + *///?} .binding(defaults.enableSurvivalAdverts, () -> config.enableSurvivalAdverts, v -> config.enableSurvivalAdverts = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.auto-advertisements.economy-advertisement")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.economy-advertisement-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.auto-advertisements.economy-advertisement-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.economy-advertisement-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.auto-advertisements.economy-advertisement-desc")) + *///?} .binding(defaults.economyAdMessage, () -> config.economyAdMessage, v -> config.economyAdMessage = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.auto-advertisements.survival-advertisement")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.survival-advertisement-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.auto-advertisements.survival-advertisement-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.survival-advertisement-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.auto-advertisements.survival-advertisement-desc")) + *///?} .binding(defaults.survivalAdMessage, () -> config.survivalAdMessage, v -> config.survivalAdMessage = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .option(Option.createBuilder(int.class) .name(Text.translatable("skyplusplus.config.auto-advertisements.economy-interval")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.economy-interval-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.auto-advertisements.economy-interval-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.economy-interval-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.auto-advertisements.economy-interval-desc")) + *///?} .binding(defaults.economyAdInterval, () -> config.economyAdInterval, v -> config.economyAdInterval = v) //? if >1.19.2 { - /*.controller(opt -> IntegerSliderControllerBuilder.create(opt).range(TimeConsts.MINIMUM_ECONOMY / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second).step(TimeConsts.Minute / TimeConsts.Second)) - *///?} else { - .controller(opt -> new IntegerSliderController(opt, TimeConsts.MINIMUM_ECONOMY / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second, TimeConsts.Minute / TimeConsts.Second)) - //?} + .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(TimeConsts.MINIMUM_ECONOMY / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second).step(TimeConsts.Minute / TimeConsts.Second)) + //?} else { + /*.controller(opt -> new IntegerSliderController(opt, TimeConsts.MINIMUM_ECONOMY / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second, TimeConsts.Minute / TimeConsts.Second)) + *///?} .build()) .option(Option.createBuilder(int.class) .name(Text.translatable("skyplusplus.config.auto-advertisements.survival-interval")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.survival-interval-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.auto-advertisements.survival-interval-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.auto-advertisements.survival-interval-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.auto-advertisements.survival-interval-desc")) + *///?} .binding(defaults.survivalAdInterval, () -> config.survivalAdInterval, v -> config.survivalAdInterval = v) //? if >1.19.2 { - /*.controller(opt -> IntegerSliderControllerBuilder.create(opt).range(TimeConsts.MINIMUM_SKYBLOCK / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second).step(TimeConsts.Minute / TimeConsts.Second)) - *///?} else { - .controller(opt -> new IntegerSliderController(opt, TimeConsts.MINIMUM_SKYBLOCK / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second, TimeConsts.Minute / TimeConsts.Second)) - //?} + .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(TimeConsts.MINIMUM_SKYBLOCK / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second).step(TimeConsts.Minute / TimeConsts.Second)) + //?} else { + /*.controller(opt -> new IntegerSliderController(opt, TimeConsts.MINIMUM_SKYBLOCK / TimeConsts.Second, TimeConsts.Day / TimeConsts.Second, TimeConsts.Minute / TimeConsts.Second)) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -808,30 +808,30 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.tool-saver.enable")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tool-saver.enable-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tool-saver.enable-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tool-saver.enable-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tool-saver.enable-desc")) + *///?} .binding(defaults.enableToolSaver, () -> config.enableToolSaver, v -> config.enableToolSaver = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .option(Option.createBuilder(int.class) .name(Text.translatable("skyplusplus.config.tool-saver.durability-limit")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.tool-saver.durability-limit-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.tool-saver.durability-limit-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.tool-saver.durability-limit-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.tool-saver.durability-limit-desc")) + *///?} .binding(defaults.toolSaverDurabilityLimit, () -> config.toolSaverDurabilityLimit, v -> config.toolSaverDurabilityLimit = v) //? if >1.19.2 { - /*.controller(opt -> IntegerSliderControllerBuilder.create(opt).range(0, 200).step(1)) - *///?} else { - .controller(opt -> new IntegerSliderController(opt, 0, 200, 1)) - //?} + .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(0, 200).step(1)) + //?} else { + /*.controller(opt -> new IntegerSliderController(opt, 0, 200, 1)) + *///?} .build()) .build()) .category(ConfigCategory.createBuilder() @@ -839,30 +839,30 @@ public static Screen getConfigScreen(Screen parentScreen) { .option(Option.createBuilder(String.class) .name(Text.translatable("skyplusplus.config.share.api-base-url")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.share.api-base-url-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.share.api-base-url-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.share.api-base-url-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.share.api-base-url-desc")) + *///?} .binding(defaults.shareApiBaseUrl , () -> config.shareApiBaseUrl , v -> config.shareApiBaseUrl = v) //? if >1.19.2 { - /*.controller(StringControllerBuilder::create) - *///?} else { - .controller(StringController::new) - //?} + .controller(StringControllerBuilder::create) + //?} else { + /*.controller(StringController::new) + *///?} .build()) .option(Option.createBuilder(boolean.class) .name(Text.translatable("skyplusplus.config.share.button")) //? if >1.19.2 { - /*.description(OptionDescription.of(Text.translatable("skyplusplus.config.share.button-desc"))) - *///?} else { - .tooltip(Text.translatable("skyplusplus.config.share.button-desc")) - //?} + .description(OptionDescription.of(Text.translatable("skyplusplus.config.share.button-desc"))) + //?} else { + /*.tooltip(Text.translatable("skyplusplus.config.share.button-desc")) + *///?} .binding(defaults.enableShareButton , () -> config.enableShareButton , v -> config.enableShareButton = v) //? if >1.19.2 { - /*.controller(TickBoxControllerBuilder::create) - *///?} else { - .controller(TickBoxController::new) - //?} + .controller(TickBoxControllerBuilder::create) + //?} else { + /*.controller(TickBoxController::new) + *///?} .build()) .build()) )).generateScreen(parentScreen); diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/AutoAdvertisement.java b/src/main/java/com/anotherpillow/skyplusplus/features/AutoAdvertisement.java index 226a5cf..05cd953 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/AutoAdvertisement.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/AutoAdvertisement.java @@ -36,12 +36,12 @@ public static void startTask(long interval, TimeUnit timeUnit) { Server.Mode mode = Server.getSkyblockMode(); //? if >1.19.2 { - /*if (mode == Server.Mode.ECONOMY) networkHandler.sendChatMessage(SkyPlusPlusClient.config.economyAdMessage + MARKER_STRING); + if (mode == Server.Mode.ECONOMY) networkHandler.sendChatMessage(SkyPlusPlusClient.config.economyAdMessage + MARKER_STRING); if (mode == Server.Mode.SURVIVAL) networkHandler.sendChatMessage(SkyPlusPlusClient.config.survivalAdMessage + MARKER_STRING); - *///?} else { - if (mode == Server.Mode.ECONOMY) player.sendChatMessage(SkyPlusPlusClient.config.economyAdMessage + MARKER_STRING, Text.empty()); + //?} else { + /*if (mode == Server.Mode.ECONOMY) player.sendChatMessage(SkyPlusPlusClient.config.economyAdMessage + MARKER_STRING, Text.empty()); if (mode == Server.Mode.SURVIVAL) player.sendChatMessage(SkyPlusPlusClient.config.survivalAdMessage + MARKER_STRING, Text.empty()); - //?} + *///?} }; scheduledFuture = scheduler.scheduleAtFixedRate(task, 0, interval, timeUnit); diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/AutoResponder.java b/src/main/java/com/anotherpillow/skyplusplus/features/AutoResponder.java index c8c971d..e58b039 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/AutoResponder.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/AutoResponder.java @@ -2,6 +2,7 @@ import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; +import com.anotherpillow.skyplusplus.util.Chat; import net.minecraft.client.MinecraftClient; import net.minecraft.client.network.ClientPlayNetworkHandler; import net.minecraft.client.network.ClientPlayerEntity; @@ -10,16 +11,7 @@ public class AutoResponder { public static void respond() { - MinecraftClient client = MinecraftClient.getInstance(); - //? if >1.19.2 { - /*ClientPlayNetworkHandler handler = client.getNetworkHandler(); - if (handler == null) return; - handler.sendCommand("r " + SkyPlusPlusClient.config.autoResponderMessage); - *///?} else { - ClientPlayerEntity player = client.player; - if (player == null) return; - player.sendCommand("r " + SkyPlusPlusClient.config.autoResponderMessage, Text.empty()); - //?} + Chat.sendCommandToServer("r " + SkyPlusPlusClient.config.autoResponderMessage); } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/BetterChangeBiome.java b/src/main/java/com/anotherpillow/skyplusplus/features/BetterChangeBiome.java index d5ff9fe..58f7723 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/BetterChangeBiome.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/BetterChangeBiome.java @@ -3,7 +3,9 @@ import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.item.ModelPredicateProviderRegistry; +//? if <1.21 { +/*import net.minecraft.client.item.ModelPredicateProviderRegistry; + *///?} import net.minecraft.client.world.ClientWorld; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.player.PlayerEntity; @@ -11,6 +13,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.item.Items; import net.minecraft.nbt.NbtCompound; +import net.minecraft.nbt.NbtSizeTracker; import net.minecraft.resource.ResourceManager; import net.minecraft.text.Text; import net.minecraft.util.Identifier; @@ -20,7 +23,12 @@ public class BetterChangeBiome { public static void generatePredicateProvider(Item item) { SkyPlusPlusConfig config = SkyPlusPlusClient.config; - ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:betterchangebiome"), (itemStack, clientWorld, livingEntity, randomSeed) -> { + + // Identifier.of("skyplusplus:betterchangebiome"), + //? if <1.21 { + /*ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:betterchangebiome"), (itemStack, clientWorld, livingEntity, randomSeed) -> { + + if (!config.betterChangeBiomeEnabled) return 0.0f; NbtCompound nbtCompound = itemStack.getNbt(); @@ -39,7 +47,8 @@ public static void generatePredicateProvider(Item item) { //System.out.println(nbtCompound); return 0.6f; - }); + *///?} + } public static void register() { generatePredicateProvider(Items.ALLIUM); diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/BetterCrateKeys.java b/src/main/java/com/anotherpillow/skyplusplus/features/BetterCrateKeys.java index bbeedaf..8ca0c94 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/BetterCrateKeys.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/BetterCrateKeys.java @@ -5,7 +5,9 @@ import com.google.gson.JsonParser; import com.mojang.serialization.JsonOps; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.item.ModelPredicateProviderRegistry; +//? if <1.21 { +/*import net.minecraft.client.item.ModelPredicateProviderRegistry; + *///?} import net.minecraft.client.world.ClientWorld; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.player.PlayerEntity; @@ -25,7 +27,9 @@ public class BetterCrateKeys { public static void generatePredicateProvider(Item item) { SkyPlusPlusConfig config = SkyPlusPlusClient.config; - ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:bettercratekeys"), (itemStack, clientWorld, livingEntity, randomSeed) -> { + //? if <1.21 { + /*ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:bettercratekeys"), (itemStack, clientWorld, livingEntity, randomSeed) -> { + if (!config.betterCrateKeysEnabled) return 0.0f; NbtCompound nbtCompound = itemStack.getNbt(); @@ -34,20 +38,22 @@ public static void generatePredicateProvider(Item item) { if (nbtCompound == null) return 0.0f; // client.inGameHud.getChatHud().addMessage(Text.of(nbtCompound.toString())); - NbtList loreList = nbtCompound .getCompound("display").getList("Lore", NbtElement.STRING_TYPE); + NbtList loreList = nbtCompound.getCompound("display").getList("Lore", NbtElement.STRING_TYPE); if (loreList.isEmpty()) return 0.0f; String loreText = loreList.getString(0); if (loreText == null) return 0.0f; - - //? if >=1.20.4 { + *///?} + //? if 1.20.4 { /*String lore = TextCodecs.CODEC.parse(JsonOps.INSTANCE, JsonParser.parseString(loreText)).get().orThrow().getString(); - *///?} else { - String lore = Text.Serializer.fromJson(loreText).getString(); - //?} + *///?} else if <=1.20.1 { + /*String lore = Text.Serializer.fromJson(loreText).getString(); + *///?} + //? if <1.21 { + - // client.inGameHud.getChatHud().addMessage(Text.of(lore)); + /*// client.inGameHud.getChatHud().addMessage(Text.of(lore)); return switch (lore) { @@ -59,6 +65,7 @@ public static void generatePredicateProvider(Item item) { default -> 0.0f; }; }); + *///?} } public static void register() { generatePredicateProvider(Items.TRIPWIRE_HOOK); diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/CleanGuiBackgrounds.java b/src/main/java/com/anotherpillow/skyplusplus/features/CleanGuiBackgrounds.java index 50f07e7..597fda3 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/CleanGuiBackgrounds.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/CleanGuiBackgrounds.java @@ -5,7 +5,9 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.screen.ChatScreen; import net.minecraft.client.gui.screen.ingame.HandledScreen; -import net.minecraft.client.item.ModelPredicateProviderRegistry; +//? if <1.21 { +/*import net.minecraft.client.item.ModelPredicateProviderRegistry; + *///?} import net.minecraft.item.Item; import net.minecraft.item.Items; import net.minecraft.util.Identifier; @@ -18,7 +20,8 @@ public static void generatePredicateProvider(Item item) { SkyPlusPlusConfig config = SkyPlusPlusClient.config; MinecraftClient client = SkyPlusPlusClient.client; - ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:cleanadgui"), (itemStack, clientWorld, livingEntity, randomSeed) -> { + //? if <1.21 { + /*ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:cleanadgui"), (itemStack, clientWorld, livingEntity, randomSeed) -> { if (client.currentScreen instanceof ChatScreen) return 0.0f; try { HandledScreen screen = ((HandledScreen)client.currentScreen); @@ -40,6 +43,7 @@ public static void generatePredicateProvider(Item item) { // Chat.send("running predicate for clean ai gui, title: " + title); }); + *///?} } public static void register() { generatePredicateProvider(Items.WHITE_STAINED_GLASS_PANE); diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/DiscordRPC.java b/src/main/java/com/anotherpillow/skyplusplus/features/DiscordRPC.java index a2a0d29..fe344e4 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/DiscordRPC.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/DiscordRPC.java @@ -4,18 +4,18 @@ import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; import com.anotherpillow.skyplusplus.util.Server; //? if >1.19.2 { -/*import dev.isxander.yacl3.gui.YACLScreen; -*///?} else { -import dev.isxander.yacl.gui.YACLScreen; - //?} +import dev.isxander.yacl3.gui.YACLScreen; +//?} else { +/*import dev.isxander.yacl.gui.YACLScreen; + *///?} import meteordevelopment.discordipc.DiscordIPC; import meteordevelopment.discordipc.RichPresence; import net.minecraft.client.MinecraftClient; //? if >=1.20.4 { -/*import net.minecraft.client.gui.screen.world.LevelLoadingScreen; -*///?} else { -import net.minecraft.client.gui.screen.LevelLoadingScreen; - //?} +import net.minecraft.client.gui.screen.world.LevelLoadingScreen; +//?} else { +/*import net.minecraft.client.gui.screen.LevelLoadingScreen; + *///?} import net.minecraft.client.gui.screen.TitleScreen; diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/JoinCommands.java b/src/main/java/com/anotherpillow/skyplusplus/features/JoinCommands.java index 06f398c..d53ca8a 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/JoinCommands.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/JoinCommands.java @@ -4,6 +4,7 @@ import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import com.anotherpillow.skyplusplus.util.Chat; import com.anotherpillow.skyplusplus.util.Server; +import net.minecraft.client.network.ClientPlayNetworkHandler; import net.minecraft.text.Text; import org.apache.logging.log4j.Level; @@ -27,18 +28,20 @@ public static void onServerJoin() { if (command.trim().startsWith("/")) { SkyPlusPlus.log(Level.INFO, "Sending command: " + command.trim()); //? if >1.19.2 { + SkyPlusPlusClient.client.getNetworkHandler().sendChatCommand(command.trim().substring(1)); + //?} else if >1.19.2 && <1.21 { /*SkyPlusPlusClient.client.getNetworkHandler().sendCommand(command.trim().substring(1)); *///?} else { - SkyPlusPlusClient.client.player.sendCommand(command.trim().substring(1)); - //?} + /*SkyPlusPlusClient.client.player.sendCommand(command.trim().substring(1)); + *///?} } else { SkyPlusPlus.log(Level.INFO, "Sending chat: " + command); //? if >1.19.2 { - /*SkyPlusPlusClient.client.getNetworkHandler().sendChatMessage(command); - *///?} else { - SkyPlusPlusClient.client.player.sendChatMessage(command, Text.of("")); - //?} + SkyPlusPlusClient.client.getNetworkHandler().sendChatMessage(command); + //?} else { + /*SkyPlusPlusClient.client.player.sendChatMessage(command, Text.of("")); + *///?} } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/RemoveChatRanks.java b/src/main/java/com/anotherpillow/skyplusplus/features/RemoveChatRanks.java index a9ea620..e38c261 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/RemoveChatRanks.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/RemoveChatRanks.java @@ -5,8 +5,8 @@ import com.mojang.serialization.JsonOps; import net.minecraft.text.Text; //? if >=1.20.4 { -/*import net.minecraft.text.TextCodecs; -*///?} else { +import net.minecraft.text.TextCodecs; +//?} else { //?} import org.apache.logging.log4j.Level; @@ -14,10 +14,10 @@ public class RemoveChatRanks { public static Text process(Text original) { //? if >=1.20.4 { - /*String json = TextCodecs.CODEC.encodeStart(JsonOps.INSTANCE, original).result().toString(); - *///?} else { - String json = Text.Serializer.toJson(original); - //?} + String json = TextCodecs.CODEC.encodeStart(JsonOps.INSTANCE, original).result().toString(); + //?} else { + /*String json = Text.Serializer.toJson(original); + *///?} JsonElement jsonElement = JsonParser.parseString(json); @@ -36,12 +36,14 @@ public static Text process(Text original) { Gson gson = new Gson(); - //? if >=1.20.4 { + //? if >=1.21 { + return TextCodecs.CODEC.parse(JsonOps.INSTANCE, jsonElement).getOrThrow(); + //?} else if >=1.20.4 { /*return TextCodecs.CODEC.parse(JsonOps.INSTANCE, jsonElement).get().orThrow(); *///?} else { - String newJson = gson.toJson(jsonElement); + /*String newJson = gson.toJson(jsonElement); return Text.Serializer.fromJson(newJson); - //?} + *///?} } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/ShowEmptyShops.java b/src/main/java/com/anotherpillow/skyplusplus/features/ShowEmptyShops.java index 003240e..1c580d5 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/ShowEmptyShops.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/ShowEmptyShops.java @@ -2,7 +2,9 @@ import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.item.ModelPredicateProviderRegistry; +//? if <1.21 { +/*import net.minecraft.client.item.ModelPredicateProviderRegistry; + *///?} import net.minecraft.client.world.ClientWorld; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.player.PlayerEntity; @@ -20,7 +22,8 @@ public class ShowEmptyShops { public static void generatePredicateProvider(Item item) { SkyPlusPlusConfig config = SkyPlusPlusConfig.configInstance.getConfig(); MinecraftClient client = MinecraftClient.getInstance(); - ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:empty_shop"), (itemStack, clientWorld, livingEntity, randomSeed) -> { + //? if <1.21 { + /*ModelPredicateProviderRegistry.register(item, new Identifier("skyplusplus:empty_shop"), (itemStack, clientWorld, livingEntity, randomSeed) -> { if (!config.showEmptyShopsEnabled) return 0.0f; NbtCompound nbtCompound = itemStack.getNbt(); @@ -30,6 +33,7 @@ public static void generatePredicateProvider(Item item) { return 0.0f; }); + *///?} } public static void register() { generatePredicateProvider(Items.CHEST); diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/SmartTP.java b/src/main/java/com/anotherpillow/skyplusplus/features/SmartTP.java index f5ccb4b..df26926 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/SmartTP.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/SmartTP.java @@ -31,10 +31,10 @@ public void run() { //? if >1.19.2 { - /*Chat.sendCommandToServer("lock"); - *///?} else { Chat.sendCommandToServer("lock"); - //?} + //?} else { + /*Chat.sendCommandToServer("lock"); + *///?} } }; @@ -45,12 +45,12 @@ public void run() { public static void lock() { MinecraftClient client = MinecraftClient.getInstance(); //? if >1.19.2 { - /*ClientPlayNetworkHandler handler = client.getNetworkHandler(); + ClientPlayNetworkHandler handler = client.getNetworkHandler(); if (handler == null) return; - *///?} else { - ClientPlayerEntity player = client.player; + //?} else { + /*ClientPlayerEntity player = client.player; if (player == null) return; - //?} + *///?} if (locktask != null) { locktask.cancel(); @@ -64,10 +64,10 @@ public void run() { awaitingLock = false; //? if >1.19.2 { - /*Chat.sendCommandToServer("lock"); - *///?} else { Chat.sendCommandToServer("lock"); - //?} + //?} else { + /*Chat.sendCommandToServer("lock"); + *///?} } }; diff --git a/src/main/java/com/anotherpillow/skyplusplus/features/UpdateChecker.java b/src/main/java/com/anotherpillow/skyplusplus/features/UpdateChecker.java index b256811..f339d61 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/features/UpdateChecker.java +++ b/src/main/java/com/anotherpillow/skyplusplus/features/UpdateChecker.java @@ -15,7 +15,7 @@ import java.util.Arrays; public class UpdateChecker { - public static URI API_URL = URI.create("https://api.modrinth.com/v2/project/sky++/version?game_version=" + SharedConstants.getGameVersion()); + public static URI API_URL = URI.create("https://api.modrinth.com/v2/project/sky++/version?game_version=" + SharedConstants.getGameVersion().name()); public static String latest = null; public static String getLatestVersion() { diff --git a/src/main/java/com/anotherpillow/skyplusplus/keybinds/HoverNBTCopy.java b/src/main/java/com/anotherpillow/skyplusplus/keybinds/HoverNBTCopy.java index 2abdac8..6aab86f 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/keybinds/HoverNBTCopy.java +++ b/src/main/java/com/anotherpillow/skyplusplus/keybinds/HoverNBTCopy.java @@ -1,6 +1,7 @@ package com.anotherpillow.skyplusplus.keybinds; import com.anotherpillow.skyplusplus.SkyPlusPlus; +import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import com.anotherpillow.skyplusplus.util.Chat; import com.mojang.brigadier.exceptions.CommandSyntaxException; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; @@ -9,13 +10,21 @@ import net.minecraft.client.gui.screen.ingame.InventoryScreen; import net.minecraft.client.option.KeyBinding; import net.minecraft.client.util.InputUtil; +//? if >=1.21 { +import net.minecraft.command.DataCommandObject; +import net.minecraft.command.EntityDataObject; +import net.minecraft.command.argument.NbtPathArgumentType; +//?} import net.minecraft.item.ItemStack; import net.minecraft.nbt.NbtCompound; +import net.minecraft.nbt.NbtElement; import net.minecraft.nbt.NbtHelper; import net.minecraft.text.MutableText; import net.minecraft.text.Text; import org.lwjgl.glfw.GLFW; +import java.util.List; + public class HoverNBTCopy { public static KeyBinding binding; @@ -37,9 +46,21 @@ public static void logic(MinecraftClient client) { MutableText text = Chat.addLogo(Text.empty()); - var nbt = hoveredItem.getNbt(); + //? if >=1.21 { + try { + DataCommandObject dataCommandObject = new EntityDataObject(SkyPlusPlusClient.client.player); + NbtPathArgumentType.NbtPath handPath = NbtPathArgumentType.NbtPath.parse("SelectedItem"); + List nbtElement = handPath.get(dataCommandObject.getNbt()); + if (nbtElement.get(0) != null) text.append(NbtHelper.toPrettyPrintedText(nbtElement.get(0))); + else text.append("{}"); + } catch (Exception e) { + text.append("{}"); + } + //?} else { + /*var nbt = hoveredItem.getNbt(); if (nbt != null) text.append(NbtHelper.toPrettyPrintedText(nbt)); else text.append("{}"); + *///?} Chat.send(text); } diff --git a/src/main/java/com/anotherpillow/skyplusplus/keybinds/ShopsTradingBind.java b/src/main/java/com/anotherpillow/skyplusplus/keybinds/ShopsTradingBind.java index e6951dd..be15ffb 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/keybinds/ShopsTradingBind.java +++ b/src/main/java/com/anotherpillow/skyplusplus/keybinds/ShopsTradingBind.java @@ -50,7 +50,11 @@ public static void logic(MinecraftClient client, boolean isBuying) { client.interactionManager.clickSlot( handler.syncId, hoveredSlot.id, - client.player.getInventory().selectedSlot, + //? if >=1.21 { + client.player.getInventory().getSelectedSlot(), + //?} else { + /*client.player.getInventory().selectedSlot, + *///?} SlotActionType.SWAP, client.player ); @@ -58,7 +62,11 @@ public static void logic(MinecraftClient client, boolean isBuying) { client.interactionManager.clickSlot( handler.syncId, hoveredSlot.id, - client.player.getInventory().selectedSlot, + //? if >=1.21 { + client.player.getInventory().getSelectedSlot(), + //?} else { + /*client.player.getInventory().selectedSlot, + *///?} SlotActionType.SWAP, client.player ); } diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/AbstractSignBlockMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/AbstractSignBlockMixin.java index c63d648..a2c9232 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/AbstractSignBlockMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/AbstractSignBlockMixin.java @@ -29,11 +29,15 @@ public abstract class AbstractSignBlockMixin { @Shadow public abstract BlockEntity createBlockEntity(BlockPos pos, BlockState state); @Inject( - method = "onUse(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;Lnet/minecraft/util/hit/BlockHitResult;)Lnet/minecraft/util/ActionResult;", + method = "onUse", at=@At("HEAD") ) - private void onUse(BlockState state, World world, BlockPos pos, + //? if <1.21 { + /*private void onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit, CallbackInfoReturnable cir) { + *///?} else { + private void onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, BlockHitResult hit, CallbackInfoReturnable cir) { + //?} if (!world.isClient) return; if (!SkyPlusPlusClient.config.reEditPrivateSigns) return; @@ -42,11 +46,16 @@ private void onUse(BlockState state, World world, BlockPos pos, return; } - String firstLine = signBE.getTextOnRow(0, false).getString(); + + //? if >=1.21 { + String firstLine = signBE.getText(true).getMessage(0, false).getString(); + //?} else { + /*String firstLine = signBE.getTextOnRow(0, false).getString(); + *///?} // /blocklocker:blocklocker only works for locked signs :( if (Objects.equals(firstLine, "[Private]") || Objects.equals(firstLine, "[More Users]") || Objects.equals(firstLine, "[Everyone]")) { - SignEditScreen ns = new SignEditScreen(signBE, /*? >=1.20.1 {*//*true, *//*?}*/false); + SignEditScreen ns = new SignEditScreen(signBE, /*? >=1.20.1 {*/true, /*?}*/false); SkyPlusPlusClient.client.setScreen(ns); } diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatMixin.java index efee5b3..69df7fa 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatMixin.java @@ -32,15 +32,25 @@ @Mixin(ChatHud.class) public abstract class ChatMixin { - @Shadow protected abstract void addMessage(Text message, @Nullable MessageSignatureData signature, int ticks, @Nullable MessageIndicator indicator, boolean refresh); private static MinecraftClient mc = MinecraftClient.getInstance(); // Why did I need to rename this? I genuinely have no idea. Apparently there's a non-static client field in the original class but that wasn't always an issue, so I have no idea. private static final String username = mc.getSession().getUsername().toLowerCase(); + //? if <1.21 { + /*@Shadow protected abstract void addMessage(Text message, @Nullable MessageSignatureData signature, int ticks, @Nullable MessageIndicator indicator, boolean refresh); @Inject( method = "addMessage(Lnet/minecraft/text/Text;Lnet/minecraft/network/message/MessageSignatureData;ILnet/minecraft/client/gui/hud/MessageIndicator;Z)V", + + *///?} else { + @Shadow protected abstract void addMessage(Text message, @Nullable MessageSignatureData signatureData, @Nullable MessageIndicator indicator); + @Inject( + method = "addMessage(Lnet/minecraft/text/Text;Lnet/minecraft/network/message/MessageSignatureData;Lnet/minecraft/client/gui/hud/MessageIndicator;)V", + //?} at = @At("HEAD"), cancellable = true ) - private void skyplusplus$onChatReceived(Text text_message, MessageSignatureData signature, int ticks, MessageIndicator indicator, boolean refresh, CallbackInfo callback) throws IOException { + //? if <1.21 + /*private void skyplusplus$onChatReceived(Text text_message, MessageSignatureData signature, int ticks, MessageIndicator indicator, boolean refresh, CallbackInfo callback) throws IOException {*/ + //? if >=1.21 + private void skyplusplus$onChatReceived(Text text_message, MessageSignatureData signature, MessageIndicator indicator, CallbackInfo callback) throws IOException { SkyPlusPlusConfig config = SkyPlusPlusConfig.configInstance.getConfig(); // System.out.println(Text.Serializer.toJson(text_message)); String message = text_message.getString(); @@ -132,7 +142,8 @@ public abstract class ChatMixin { public void addMessageMixin(Text message, @Nullable MessageSignatureData signature, @Nullable MessageIndicator indicator, CallbackInfo ci) { MinecraftClient client = MinecraftClient.getInstance(); - if (SkyPlusPlusClient.config.removeChatRanks) { + //? if <1.21 { + /*if (SkyPlusPlusClient.config.removeChatRanks) { addMessage(RemoveChatRanks.process(message), signature, client.inGameHud.getTicks(), indicator, false); ci.cancel(); } @@ -141,6 +152,16 @@ public void addMessageMixin(Text message, @Nullable MessageSignatureData signatu addMessage(TextStringifier.prefixButton(message), signature, client.inGameHud.getTicks(), indicator, false); ci.cancel(); } + *///?} else { + if (SkyPlusPlusClient.config.removeChatRanks) { + addMessage(RemoveChatRanks.process(message), signature, indicator); + ci.cancel(); + } + if (SkyPlusPlusClient.config.copyChatMessageButtonEnabled) { + addMessage(TextStringifier.prefixButton(message), signature, indicator); + ci.cancel(); + } + //?} } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatScreenMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatScreenMixin.java index cf1a1b7..8e2c09e 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatScreenMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/ChatScreenMixin.java @@ -9,8 +9,18 @@ @Mixin(ChatScreen.class) public class ChatScreenMixin { - @ModifyArg(method={"keyPressed"}, - at=@At(value="INVOKE", target="Lnet/minecraft/client/gui/screen/ChatScreen;sendMessage(Ljava/lang/String;Z)Z"), index=0) + @ModifyArg( + method="keyPressed", + at=@At( + value="INVOKE", + //? if >= 1.21 { + target="Lnet/minecraft/client/gui/screen/ChatScreen;sendMessage(Ljava/lang/String;Z)V" + //?} else { + /*target="Lnet/minecraft/client/gui/screen/ChatScreen;sendMessage(Ljava/lang/String;Z)Z" + *///?} + ), + index=0 + ) private String result(String text) { SkyPlusPlusConfig config = SkyPlusPlusConfig.configInstance.getConfig(); if (text.startsWith("/") && config.lowerCommandsEnabled) { diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayNetworkHandlerMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayNetworkHandlerMixin.java index 154c56f..9719b80 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayNetworkHandlerMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayNetworkHandlerMixin.java @@ -9,7 +9,7 @@ @Mixin(ClientPlayNetworkHandler.class) public class ClientPlayNetworkHandlerMixin { //? if >=1.19.4 { - /*@ModifyVariable( + @ModifyVariable( method="sendChatCommand(Ljava/lang/String;)V", at=@At("HEAD"), ordinal = 0 @@ -19,7 +19,11 @@ private String sendChatCommand(String command) { } // idk what the difference is @ModifyVariable( - method= "sendCommand(Ljava/lang/String;)Z", + //? if >= 1.21 { + method="sendChatCommand", + //?} else { + /*method= "sendCommand(Ljava/lang/String;)Z", + *///?} at=@At("HEAD"), ordinal = 0 ) @@ -36,5 +40,5 @@ private String sendChatMessage(String message) { return MixinCommon.genericChatMixinMethod(message); } - *///?} + //?} } diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayerEntityMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayerEntityMixin.java index 3acb676..af8a5a3 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayerEntityMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/ClientPlayerEntityMixin.java @@ -10,10 +10,10 @@ import net.minecraft.item.ItemStack; // was yarn 1.20.2-pre3 i think //? if >=1.20.2 { -/*import net.minecraft.item.PlayerHeadItem; -*///?} else { -import net.minecraft.item.SkullItem; - //?} +import net.minecraft.item.PlayerHeadItem; +//?} else { +/*import net.minecraft.item.SkullItem; + *///?} import net.minecraft.text.Text; import org.spongepowered.asm.mixin.Mixin; @@ -40,7 +40,11 @@ private void stopDropSelectedItem(boolean entireStack, CallbackInfoReturnable=1.21 { + int hotbarSlot = self.getInventory().getSelectedSlot(); + //?} else { + /*int hotbarSlot = self.getInventory().selectedSlot; + *///?} int inventorySlotId = 27 + hotbarSlot; IntArrayList list = SlotLocker.lockedSlots.get(Server.getSkyblockMode()); @@ -53,10 +57,10 @@ private void stopDropSelectedItem(boolean entireStack, CallbackInfoReturnable=1.20.2 { - /*if (itemStack.getItem() instanceof PlayerHeadItem) { - *///?} else { - if (itemStack.getItem() instanceof SkullItem) { - //?} + if (itemStack.getItem() instanceof PlayerHeadItem) { + //?} else { + /*if (itemStack.getItem() instanceof SkullItem) { + *///?} if (config.preventHeadDropping) { client.inGameHud.getChatHud().addMessage(Text.of(String.valueOf(Chat.addLogo(Text.translatable("skyplusplus.preventheaddropping.prevented-drop", name))))); cb.setReturnValue(false); @@ -70,7 +74,7 @@ private void stopDropSelectedItem(boolean entireStack, CallbackInfoReturnable=1.20.1 { //?} else { -import org.spongepowered.asm.mixin.injection.Redirect; +/*import org.spongepowered.asm.mixin.injection.Redirect; import com.mojang.blaze3d.systems.RenderSystem; -//?} +*///?} @Mixin(GenericContainerScreen.class) public abstract class GenericContainerScreenMixin { @Unique - private static final Identifier skyplusplus$OLD_TEXTURE = new Identifier("textures/gui/container/generic_54.png"); + //? if >=1.21 { + private static final Identifier skyplusplus$OLD_TEXTURE = Identifier.of("minecraft", "textures/gui/container/generic_54.png"); + //?} else { + /*private static final Identifier skyplusplus$OLD_TEXTURE = new Identifier("textures/gui/container/generic_54.png"); + *///?} - //? if >=1.20.1 { + //? if >=1.20.1 && <1.21 { /*@ModifyArg( method = "Lnet/minecraft/client/gui/screen/ingame/GenericContainerScreen;drawBackground(Lnet/minecraft/client/gui/DrawContext;FII)V", at = @At( @@ -48,10 +52,10 @@ private Identifier modifyDrawBackground(Identifier texture) { return texture; } } - *///?} else { + *///?} else if <1.20.1 { - @Redirect( + /*@Redirect( method = "drawBackground(Lnet/minecraft/client/util/math/MatrixStack;FII)V", at = @At( @@ -78,5 +82,5 @@ private void replaceSetShaderTexture(int sampler, Identifier texture) { RenderSystem.setShaderTexture(sampler, skyplusplus$OLD_TEXTURE); } - }//?} + }*///?} } diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/HandledScreenMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/HandledScreenMixin.java index ee568e3..b93ce92 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/HandledScreenMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/HandledScreenMixin.java @@ -19,10 +19,11 @@ import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; import net.minecraft.client.MinecraftClient; //? if >=1.20.1 { -/*import net.minecraft.client.gui.DrawContext; -*///?} else { -import net.minecraft.client.gui.DrawableHelper; -//?} +import net.minecraft.client.gl.RenderPipelines; +import net.minecraft.client.gui.DrawContext; +//?} else { +/*import net.minecraft.client.gui.DrawableHelper; +*///?} import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.gui.screen.ingame.HandledScreen; import net.minecraft.client.gui.screen.ingame.InventoryScreen; @@ -47,10 +48,10 @@ import net.minecraft.text.Text; import net.minecraft.util.Identifier; //? if >1.19.2 { -/*import net.minecraft.registry.Registries; -*///?} else { -import net.minecraft.util.registry.Registry; - //?} +import net.minecraft.registry.Registries; +//?} else { +/*import net.minecraft.util.registry.Registry; + *///?} import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.gen.Accessor; @@ -94,12 +95,12 @@ protected HandledScreenMixin(Text title) { protected abstract boolean invokeIsPointOverSlot(Slot slot, double pointX, double pointY); //? if >=1.20.1 { - /*@Inject(method = "drawSlot(Lnet/minecraft/client/gui/DrawContext;Lnet/minecraft/screen/slot/Slot;)V", at = @At("HEAD")) + @Inject(method = "drawSlot(Lnet/minecraft/client/gui/DrawContext;Lnet/minecraft/screen/slot/Slot;)V", at = @At("HEAD")) public void drawSlot(DrawContext context, Slot slot, CallbackInfo ci) { - *///?} else { - @Inject(method = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;drawSlot(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/screen/slot/Slot;)V", at = @At("HEAD")) + //?} else { + /*@Inject(method = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;drawSlot(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/screen/slot/Slot;)V", at = @At("HEAD")) public void drawSlot(MatrixStack matrices, Slot slot, CallbackInfo ci) { - //?} + *///?} HandledScreen screen = (HandledScreen) (Object) this; ScreenHandler handler = screen.getScreenHandler(); @@ -113,7 +114,9 @@ public void drawSlot(MatrixStack matrices, Slot slot, CallbackInfo ci) { IntArrayList lockedSlots = SlotLocker.lockedSlots.get(Server.getSkyblockMode()); if (lockedSlots != null && lockedSlots.contains(indexInInventory)) { //? if >=1.20.1 { - /*context.drawTexture( + context.drawTexture( + //? if >=1.21 + RenderPipelines.GUI_TEXTURED, SkyPlusPlusClient.lockId, slot.x, slot.y, @@ -124,8 +127,8 @@ public void drawSlot(MatrixStack matrices, Slot slot, CallbackInfo ci) { 16, 16 ); - *///?} else { - RenderSystem.setShaderTexture(0, SkyPlusPlusClient.lockId); + //?} else { + /*RenderSystem.setShaderTexture(0, SkyPlusPlusClient.lockId); DrawableHelper.drawTexture( matrices, slot.x, @@ -137,7 +140,7 @@ public void drawSlot(MatrixStack matrices, Slot slot, CallbackInfo ci) { 16, 16 ); - //?} + *///?} } @@ -147,12 +150,12 @@ public void drawSlot(MatrixStack matrices, Slot slot, CallbackInfo ci) { } //? if >=1.20.1 { - /*@Inject(method = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;render(Lnet/minecraft/client/gui/DrawContext;IIF)V", at = @At("HEAD")) + @Inject(method = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;render(Lnet/minecraft/client/gui/DrawContext;IIF)V", at = @At("HEAD")) public void render(DrawContext context, int mouseX, int mouseY, float delta, CallbackInfo ci) { - *///?} else { - @Inject(method = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;render(Lnet/minecraft/client/util/math/MatrixStack;IIF)V", at = @At("HEAD")) + //?} else { + /*@Inject(method = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;render(Lnet/minecraft/client/util/math/MatrixStack;IIF)V", at = @At("HEAD")) public void render(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo ci) { - //?} + *///?} // https://www.reddit.com/r/fabricmc/comments/15drn3l/comment/ju95aqn for(int k = 0; k < this.handler.slots.size(); k++) { var slot = this.handler.slots.get(k); @@ -210,11 +213,14 @@ private void init(CallbackInfo info) { if (ShareButton.isApplicable(handler) && config.enableShareButton) { addDrawableChild( //? if >1.19.2 { - /*new ButtonWidget.Builder(Text.of("Share"), (ButtonWidget widget) -> { - *///?} else { - new ButtonWidget(midX + 90, midY - 60, 60, 20, Text.of("Share"), (ButtonWidget widget) -> { - //?} - CompletableFuture.runAsync(() -> { + new ButtonWidget.Builder(Text.of("Share"), (ButtonWidget widget) -> { + //?} else { + /*new ButtonWidget(midX + 90, midY - 60, 60, 20, Text.of("Share"), (ButtonWidget widget) -> { + *///?} + //? if >=1.21 + Runnable placeholder = () -> { + //? if <1.21 + /*CompletableFuture.runAsync(() -> {*/ // handler.slots.forEach(slot -> { int slotCount = ShareButton.getInnerSlots(handler); if (slotCount <= 0) { @@ -239,10 +245,10 @@ private void init(CallbackInfo info) { ItemStack stack = slot.getStack(); //? if >1.19.2 { - /*String itemId = Registries.ITEM.getKey(stack.getItem()).get().getValue().toString(); - *///?} else { - String itemId = Registry.ITEM.getKey(stack.getItem()).get().getValue().toString(); - //?} + String itemId = Registries.ITEM.getKey(stack.getItem()).get().getValue().toString(); + //?} else { + /*String itemId = Registry.ITEM.getKey(stack.getItem()).get().getValue().toString(); + *///?} // id: MinecraftID, // Slot: number, @@ -255,13 +261,15 @@ private void init(CallbackInfo info) { String jsonNBT = "{}"; - if (stack.hasNbt()) { + //? if <1.21 { + /*if (stack.hasNbt()) { NbtCompound nbt = stack.getNbt(); jsonNBT = NbtOps.INSTANCE.convertTo(JsonOps.INSTANCE, nbt).toString(); } JsonObject nbtObject = gson.fromJson(jsonNBT, JsonObject.class); slotJson.add("tag", nbtObject); + *///?} jsonSlots.add(slotJson); } @@ -300,7 +308,11 @@ private void init(CallbackInfo info) { String url = bodyJson.get("message").getAsString(); MutableText urlText = Text.literal(url) .setStyle(Style.EMPTY.withClickEvent( - new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + //? if >=1.21 { + new ClickEvent.OpenUrl(URI.create(url))) + //?} else { + /*new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + *///?} .withUnderline(true)); MutableText finalMessage = Text.literal("Shared URL: ").append(urlText); Chat.send(Chat.addLogo(finalMessage)); @@ -308,11 +320,14 @@ private void init(CallbackInfo info) { Chat.send(Chat.addLogo("Failed to share (status: " + status + ", body: " + body + ")")); } - }); + } + //? if <1.21 + /*)*/ + ; }) //? if >1.19.2 { - /*.position(midX + 90, midY - 60).size(60, 20).build() - *///?} else { + .position(midX + 90, midY - 60).size(60, 20).build() + //?} else { //?} ); diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/InGameHudMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/InGameHudMixin.java index b4656b2..d3c910b 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/InGameHudMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/InGameHudMixin.java @@ -10,11 +10,13 @@ import com.mojang.blaze3d.systems.RenderSystem; import it.unimi.dsi.fastutil.ints.IntArrayList; //? if >=1.20.1 { -/*import net.minecraft.client.gui.DrawContext; -*///?} else { -import net.minecraft.client.gui.DrawableHelper; - //?} +import net.minecraft.client.gl.RenderPipelines; +import net.minecraft.client.gui.DrawContext; +//?} else { +/*import net.minecraft.client.gui.DrawableHelper; + *///?} import net.minecraft.client.gui.hud.InGameHud; +import net.minecraft.client.render.RenderTickCounter; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemStack; @@ -36,12 +38,15 @@ public class InGameHudMixin { //? if >=1.20.4 { //?} else { - @Shadow + /*@Shadow private static final Identifier WIDGETS_TEXTURE = new Identifier("textures/gui/widgets.png"); - //?} + *///?} - @Shadow + //? if <1.21 { + /*@Shadow private int scaledHeight; + *///?} + @Inject( at=@At("HEAD"), @@ -54,16 +59,29 @@ private void setTitle(Text title, CallbackInfo ci) { } // inject between drawing the hotbar and drawing the selected overlay - //? if >=1.20.1 { + //? if >=1.21 { + @Inject( + method = "Lnet/minecraft/client/gui/hud/InGameHud;renderHotbar(Lnet/minecraft/client/gui/DrawContext;Lnet/minecraft/client/render/RenderTickCounter;)V", + at = @At( + value = "INVOKE", + target="Lnet/minecraft/client/gui/DrawContext;drawGuiTexture(Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/util/Identifier;IIII)V", + + shift = At.Shift.AFTER + ), + locals = LocalCapture.CAPTURE_FAILHARD + ) + private void renderHotbar(DrawContext context, RenderTickCounter tickCounter, + CallbackInfo ci, PlayerEntity playerEntity, ItemStack itemStack, Arm arm, int i, int j, int k) { + //?} else if >=1.20.1 { /*@Inject( - method = "Lnet/minecraft/client/gui/hud/InGameHud;renderHotbar(FLnet/minecraft/client/gui/DrawContext;)V", + method = "renderHotbar", at = @At( value = "INVOKE", //? if >=1.20.4 { - /^target="Lnet/minecraft/client/gui/DrawContext;drawGuiTexture(Lnet/minecraft/util/Identifier;IIII)V", - ^///?} else { - target="Lnet/minecraft/client/gui/DrawContext;drawTexture(Lnet/minecraft/util/Identifier;IIIIII)V", - //?} + target="Lnet/minecraft/client/gui/DrawContext;drawGuiTexture(Lnet/minecraft/util/Identifier;IIII)V", + //?} else { + /^target="Lnet/minecraft/client/gui/DrawContext;drawTexture(Lnet/minecraft/util/Identifier;IIIIII)V", + ^///?} shift = At.Shift.AFTER ), @@ -71,7 +89,7 @@ private void setTitle(Text title, CallbackInfo ci) { ) private void renderHotbar(float tickDelta, DrawContext context, CallbackInfo ci, PlayerEntity playerEntity, ItemStack itemStack, Arm arm, int i, int j, int k) { *///?} else { - @Inject( + /*@Inject( method = "renderHotbar(FLnet/minecraft/client/util/math/MatrixStack;)V", at = @At( value = "INVOKE", @@ -81,7 +99,7 @@ private void renderHotbar(float tickDelta, DrawContext context, CallbackInfo ci, locals = LocalCapture.CAPTURE_FAILHARD ) private void renderHotbar(float tickDelta, MatrixStack matrices, CallbackInfo ci, PlayerEntity playerEntity, ItemStack itemStack, Arm arm, int i, int j) { - //?} + *///?} IntArrayList lockedSlots = SlotLocker.lockedSlots.get(Server.getSkyblockMode()); // Chat.send("lockSlots: " + lockedSlots); @@ -90,17 +108,23 @@ private void renderHotbar(float tickDelta, MatrixStack matrices, CallbackInfo ci //? if >=1.20.1 { //?} else { - RenderSystem.setShaderTexture(0, SkyPlusPlusClient.lockId); - //?} + /*RenderSystem.setShaderTexture(0, SkyPlusPlusClient.lockId); + *///?} for (int slotOffset = 0; slotOffset < 9; slotOffset++) { if (!lockedSlots.contains(27 + slotOffset)) continue; int _x = (i - 88) + (slotOffset * 20); - int _y = this.scaledHeight - 19; + //? if >=1.21 { + int _y = context.getScaledWindowHeight() - 19; + //?} else { + /*int _y = this.scaledHeight - 19; + *///?} //? if >=1.20.1 { - /*context.drawTexture( + context.drawTexture( + //? if >=1.21 + RenderPipelines.GUI_TEXTURED, SkyPlusPlusClient.lockId, _x, _y, @@ -111,8 +135,8 @@ private void renderHotbar(float tickDelta, MatrixStack matrices, CallbackInfo ci 16, 16 ); - *///?} else { - DrawableHelper.drawTexture( + //?} else { + /*DrawableHelper.drawTexture( matrices, _x, _y, @@ -123,15 +147,15 @@ private void renderHotbar(float tickDelta, MatrixStack matrices, CallbackInfo ci 16, 16 ); - //?} + *///?} }; // revert to old texture //? if >=1.20.4 { //?} else { - RenderSystem.setShaderTexture(0, WIDGETS_TEXTURE); - //?} + /*RenderSystem.setShaderTexture(0, WIDGETS_TEXTURE); + *///?} } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/NbtTagSizeTrackerMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/NbtTagSizeTrackerMixin.java index 66d1df3..6de1a82 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/NbtTagSizeTrackerMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/NbtTagSizeTrackerMixin.java @@ -3,10 +3,10 @@ import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; //? if >=1.20.4 { -/*import net.minecraft.nbt.NbtSizeTracker; -*///?} else { -import net.minecraft.nbt.NbtTagSizeTracker; - //?} +import net.minecraft.nbt.NbtSizeTracker; +//?} else { +/*import net.minecraft.nbt.NbtTagSizeTracker; + *///?} import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -14,10 +14,10 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; //? if >=1.20.4 { -/*@Mixin(NbtSizeTracker.class) -*///?} else { -@Mixin(NbtTagSizeTracker.class) - //?} +@Mixin(NbtSizeTracker.class) +//?} else { +/*@Mixin(NbtTagSizeTracker.class) + *///?} public class NbtTagSizeTrackerMixin { @Shadow private long allocatedBytes; diff --git a/src/main/java/com/anotherpillow/skyplusplus/mixin/SignEditScreenMixin.java b/src/main/java/com/anotherpillow/skyplusplus/mixin/SignEditScreenMixin.java index d4b3244..497edba 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/mixin/SignEditScreenMixin.java +++ b/src/main/java/com/anotherpillow/skyplusplus/mixin/SignEditScreenMixin.java @@ -3,6 +3,7 @@ import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; import com.anotherpillow.skyplusplus.util.Chat; +import net.minecraft.client.gui.screen.ingame.AbstractSignEditScreen; import net.minecraft.client.gui.screen.ingame.SignEditScreen; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -12,35 +13,56 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import java.lang.reflect.Field; import java.util.Objects; @Mixin(SignEditScreen.class) public class SignEditScreenMixin { - @Shadow @Final private String[] text; + //? if <1.21 { + /*@Shadow @Final private String[] text; + *///?} @Unique private String[] initialText; @Inject( - method="Lnet/minecraft/client/gui/screen/ingame/SignEditScreen;init()V", + method="init()V", at=@At("TAIL") ) private void init(CallbackInfo ci) { - this.initialText = this.text.clone(); + + //? if >=1.21 { + try { + // should really fix the AW but reflection is fun ig + Field field = ((AbstractSignEditScreen)(Object)(this)).getClass().getDeclaredField("text"); + field.setAccessible(true); + + this.initialText = ((String[])field.get(((AbstractSignEditScreen)(Object)(this)))).clone(); + } catch (Exception e) { + this.initialText = new String[]{}; + } + + //?} else { + /*this.initialText = this.text.clone(); + *///?} } - @Inject( - method="Lnet/minecraft/client/gui/screen/ingame/SignEditScreen;finishEditing()V", + //? if <1.21 { + /*@Inject( + method="finishEditing()V", at=@At("TAIL") ) private void finishEditing(CallbackInfo ci) { if (!SkyPlusPlusClient.config.reEditPrivateSigns) return; String[] endText = this.text; + for (int i = 1; i < 4; i++) { // can't modify top line if (!Objects.equals(initialText[i], endText[i])) { Chat.sendCommandToServer(String.format("blocklocker:blocklocker %d %s", i + 1, - endText[i].replaceAll(" ", "-")) ); // can't have spaces in it :( + endText[i].replaceAll(" ", "-")) ); // can't have spaces in it :( } } + } + *///?} } diff --git a/src/main/java/com/anotherpillow/skyplusplus/screen/TraderImage.java b/src/main/java/com/anotherpillow/skyplusplus/screen/TraderImage.java index 259869f..b91a7e3 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/screen/TraderImage.java +++ b/src/main/java/com/anotherpillow/skyplusplus/screen/TraderImage.java @@ -2,48 +2,91 @@ import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import com.mojang.blaze3d.systems.RenderSystem; +import net.minecraft.client.gui.DrawContext; import net.minecraft.client.render.BufferBuilder; import net.minecraft.client.render.Tessellator; -import net.minecraft.client.render.VertexFormat; +//? if >=1.21 { +import com.mojang.blaze3d.vertex.VertexFormat; +import org.joml.Matrix3x2f; +//?} else { +/*import net.minecraft.client.render.VertexFormat; + *///?} import net.minecraft.client.render.VertexFormats; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.util.Identifier; //? if >1.19.2 { -/*import org.joml.Matrix4f; -*///?} else { -import net.minecraft.util.math.Matrix4f; - //?} +import org.joml.Matrix4f; +//?} else { +/*import net.minecraft.util.math.Matrix4f; + *///?} import net.minecraft.client.render.GameRenderer; import com.anotherpillow.skyplusplus.config.SkyPlusPlusConfig; public class TraderImage { - public static void draw(MatrixStack matrixStack) { + + public static void draw(/*? >=1.21 {*/ Matrix3x2f matrixStack /*?} else {*/ /*MatrixStack matrixStack *//*?}*/) { // not draw in f1 if (SkyPlusPlusClient.client.options.hudHidden) return; - Matrix4f positionMatrix = matrixStack.peek().getPositionMatrix(); + + //? if >=1.21 { + Matrix4f positionMatrix = new Matrix4f(); +// float[] points = {}; +// positionMatrix.set(matrixStack.get(points)); + boolean b = true; + if (b) return; + //?} else { + /*Matrix4f positionMatrix = matrixStack.peek().getPositionMatrix(); + *///?} + + + Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder buffer = tessellator.getBuffer(); + + + //? <1.21 + /*BufferBuilder buffer = tessellator.getBuffer();*/ + + //? >=1.21 + BufferBuilder buffer = tessellator.begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_TEXTURE_COLOR); SkyPlusPlusConfig config = SkyPlusPlusConfig.configInstance.getConfig(); - buffer.begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_COLOR_TEXTURE); + //? if >=1.21 { + buffer.vertex(positionMatrix, config.traderX, config.traderY, 0).color(1f, 1f, 1f, 1f).texture(0f, 0f); + buffer.vertex(positionMatrix, config.traderX, config.traderY + 32, 0).color(1f, 1f, 1f, 1f).texture(0f, 1f); + buffer.vertex(positionMatrix, config.traderX + 32, config.traderY + 32, 0).color(1f, 1f, 1f, 1f).texture(1f, 1f); + buffer.vertex(positionMatrix, config.traderX + 32, config.traderY, 0).color(1f, 1f, 1f, 1f).texture(1f, 0f); + //?} else { + /*buffer.begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_COLOR_TEXTURE); buffer.vertex(positionMatrix, config.traderX, config.traderY, 0).color(1f, 1f, 1f, 1f).texture(0f, 0f).next(); buffer.vertex(positionMatrix, config.traderX, config.traderY + 32, 0).color(1f, 1f, 1f, 1f).texture(0f, 1f).next(); buffer.vertex(positionMatrix, config.traderX + 32, config.traderY + 32, 0).color(1f, 1f, 1f, 1f).texture(1f, 1f).next(); buffer.vertex(positionMatrix, config.traderX + 32, config.traderY, 0).color(1f, 1f, 1f, 1f).texture(1f, 0f).next(); + *///?} + + + //? if >1.19.2 { + + //?} else { + /*RenderSystem.setShader(GameRenderer::getPositionColorTexShader); + *///?} //? if >1.19.2 { //?} else { - RenderSystem.setShader(GameRenderer::getPositionColorTexShader); - //?} + /*RenderSystem.setShaderTexture(0, new Identifier("skyplusplus", "traderhead.png")); + *///?} + //? <1.21 + /*RenderSystem.setShaderColor(1f, 1f, 1f, 1f);*/ + //? if >=1.21 { + buffer.end(); + //?} else { + /*tessellator.draw(); + *///?} - RenderSystem.setShaderTexture(0, new Identifier("skyplusplus", "traderhead.png")); - RenderSystem.setShaderColor(1f, 1f, 1f, 1f); - tessellator.draw(); } } \ No newline at end of file diff --git a/src/main/java/com/anotherpillow/skyplusplus/util/Chat.java b/src/main/java/com/anotherpillow/skyplusplus/util/Chat.java index b79c7ae..e12bfef 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/util/Chat.java +++ b/src/main/java/com/anotherpillow/skyplusplus/util/Chat.java @@ -1,16 +1,17 @@ package com.anotherpillow.skyplusplus.util; +import com.anotherpillow.skyplusplus.client.SkyPlusPlusClient; import net.minecraft.client.MinecraftClient; //? if >1.19.2 { -/*import net.minecraft.client.network.ClientPlayNetworkHandler; -*///?} else { +import net.minecraft.client.network.ClientPlayNetworkHandler; +//?} else { //?} import net.minecraft.client.network.ClientPlayerEntity; import net.minecraft.text.MutableText; import net.minecraft.text.Text; //? if >1.19.2 { -/*import net.minecraft.client.network.ClientPlayNetworkHandler; -*///?} else { +import net.minecraft.client.network.ClientPlayNetworkHandler; +//?} else { //?} @@ -48,15 +49,19 @@ public static void _sendTitle(Text text, int fadein, int stay, int fadeout) { // e.g. sendCommandToServer("tpahere Noobcrew") public static void sendCommandToServer(String noSlashCommandWithAllArguments) { - //? if >1.19.2 { + //? if >=1.21 { + ClientPlayNetworkHandler handler = client.getNetworkHandler(); + if (handler == null) return; + handler.sendChatCommand(noSlashCommandWithAllArguments); + //?} else if >1.19.2 && <1.21 { /*ClientPlayNetworkHandler handler = client.getNetworkHandler(); if (handler == null) return; handler.sendCommand(noSlashCommandWithAllArguments); *///?} else { - ClientPlayerEntity player = client.player; + /*ClientPlayerEntity player = client.player; if (player == null) return; player.sendCommand(noSlashCommandWithAllArguments, Text.empty()); - //?} + *///?} } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/util/StringChecker.java b/src/main/java/com/anotherpillow/skyplusplus/util/StringChecker.java index af23457..b9f93fb 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/util/StringChecker.java +++ b/src/main/java/com/anotherpillow/skyplusplus/util/StringChecker.java @@ -58,10 +58,10 @@ public static boolean autoResponderCheck(String input) { if (client.player == null) return false; //? if >=1.20.4 { - /*if (input.startsWith("[" + client.player.getName().getString() + " -> me]")) return false; - *///?} else { - if (input.startsWith("[" + client.player.getEntityName() + " -> me]")) return false; - //?} + if (input.startsWith("[" + client.player.getName().getString() + " -> me]")) return false; + //?} else { + /*if (input.startsWith("[" + client.player.getEntityName() + " -> me]")) return false; + *///?} return autoResponderPattern.matcher(input).find(); } diff --git a/src/main/java/com/anotherpillow/skyplusplus/util/TextStringifier.java b/src/main/java/com/anotherpillow/skyplusplus/util/TextStringifier.java index 29b1de7..eb4c381 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/util/TextStringifier.java +++ b/src/main/java/com/anotherpillow/skyplusplus/util/TextStringifier.java @@ -12,7 +12,15 @@ public static Text prefixButton(Text main) { Text prefixedWithStringifier = Text.empty().append(Text.literal("").setStyle( Style.EMPTY .withColor(Formatting.GRAY) + //? if >=1.21 { .withHoverEvent( + new HoverEvent.ShowText(Text.literal(stringified)) + ) + .withClickEvent( + new ClickEvent.CopyToClipboard(stringified) + ) + //?} else { + /*.withHoverEvent( new HoverEvent( HoverEvent.Action.SHOW_TEXT, Text.literal(stringified) @@ -24,6 +32,7 @@ public static Text prefixButton(Text main) { stringified ) ) + *///?} )).append(main); return prefixedWithStringifier; diff --git a/src/main/java/com/anotherpillow/skyplusplus/util/TraderCountdown.java b/src/main/java/com/anotherpillow/skyplusplus/util/TraderCountdown.java index 2fac8ad..0534b0a 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/util/TraderCountdown.java +++ b/src/main/java/com/anotherpillow/skyplusplus/util/TraderCountdown.java @@ -4,10 +4,10 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.font.TextRenderer; //? if >=1.20.1 { -/*import net.minecraft.client.gui.DrawContext; -*///?} else { -import net.minecraft.client.gui.DrawableHelper; - //?} +import net.minecraft.client.gui.DrawContext; +//?} else { +/*import net.minecraft.client.gui.DrawableHelper; + *///?} import net.minecraft.client.render.VertexConsumerProvider; import net.minecraft.client.util.Window; import net.minecraft.client.util.math.MatrixStack; @@ -20,19 +20,19 @@ public class TraderCountdown { - public static void draw(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} else {*/ MatrixStack matrixStack /*?}*/, String txt, int textOffset) { + public static void draw(/*? >=1.20.1 {*/ DrawContext ctx /*?} else {*/ /*MatrixStack matrixStack *//*?}*/, String txt, int textOffset) { SkyPlusPlusConfig config = SkyPlusPlusConfig.configInstance.getConfig(); // not draw in f1 if (SkyPlusPlusClient.client.options.hudHidden) return; TextRenderer textRenderer = MinecraftClient.getInstance().textRenderer; //? if >=1.20.1 { - /*ctx.drawCenteredTextWithShadow(textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); - *///?} else if >1.19.2 { + ctx.drawCenteredTextWithShadow(textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); + //?} else if >1.19.2 { /*DrawableHelper.drawCenteredTextWithShadow(matrixStack, textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); *///?} else { - DrawableHelper.drawCenteredText(matrixStack, textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); - //?} + /*DrawableHelper.drawCenteredText(matrixStack, textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); + *///?} } @@ -66,10 +66,10 @@ public static String countdown() { return "0:" + minutesString; } - public static void DrawCountdown(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} else {*/ MatrixStack matrixStack /*?}*/) { + public static void DrawCountdown(/*? >=1.20.1 {*/ DrawContext ctx /*?} else {*/ /*MatrixStack matrixStack *//*?}*/) { String txt = Text.translatable("skyplusplus.trader.countdown.timer").getString() + countdown(); int textWidth = MinecraftClient.getInstance().textRenderer.getWidth(txt); int textOffset = textWidth / 2; - draw(/*? >=1.20.1 {*/ /*ctx *//*?} else {*/ matrixStack /*?}*/, txt, textOffset); + draw(/*? >=1.20.1 {*/ ctx /*?} else {*/ /*matrixStack *//*?}*/, txt, textOffset); } } diff --git a/src/main/java/com/anotherpillow/skyplusplus/util/TraderFinder.java b/src/main/java/com/anotherpillow/skyplusplus/util/TraderFinder.java index a45b7f0..daed8cb 100644 --- a/src/main/java/com/anotherpillow/skyplusplus/util/TraderFinder.java +++ b/src/main/java/com/anotherpillow/skyplusplus/util/TraderFinder.java @@ -11,10 +11,10 @@ import net.minecraft.client.util.math.MatrixStack; import net.minecraft.entity.passive.WanderingTraderEntity; //? if >=1.20.1 { -/*import net.minecraft.client.gui.DrawContext; -*///?} else { -import net.minecraft.client.gui.DrawableHelper; - //?} +import net.minecraft.client.gui.DrawContext; +//?} else { +/*import net.minecraft.client.gui.DrawableHelper; + *///?} import net.minecraft.nbt.NbtCompound; import net.minecraft.item.ItemStack; import net.minecraft.text.Text; @@ -60,7 +60,7 @@ public static String convertXYZToLocationName(int x, int y, int z) { return traderLocation.getString(); } - public static void showTraderString(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} else {*/ MatrixStack matrixStack /*?}*/) { + public static void showTraderString(/*? >=1.20.1 {*/ DrawContext ctx /*?} else {*/ /*MatrixStack matrixStack *//*?}*/) { SkyPlusPlusConfig config = SkyPlusPlusConfig.configInstance.getConfig(); @@ -76,16 +76,16 @@ public static void showTraderString(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} el int textOffset = textWidth / 2; //? if >=1.20.1 { - /*ctx.drawCenteredTextWithShadow(textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); - *///?} else if >1.19.2 { + ctx.drawCenteredTextWithShadow(textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); + //?} else if >1.19.2 { /*DrawableHelper.drawCenteredTextWithShadow(matrixStack, textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); *///?} else { - DrawableHelper.drawCenteredText(matrixStack, textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); - //?} + /*DrawableHelper.drawCenteredText(matrixStack, textRenderer, txt, config.traderX + 32 + textOffset,config.traderY + 16, 0xFFFFFF); + *///?} } - public static void loopTraders(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} else {*/ MatrixStack matrixStack /*?}*/) { + public static void loopTraders(/*? >=1.20.1 {*/ DrawContext ctx /*?} else {*/ /*MatrixStack matrixStack *//*?}*/) { MinecraftClient client = MinecraftClient.getInstance(); Camera camera = MinecraftClient.getInstance().gameRenderer.getCamera(); @@ -98,19 +98,19 @@ public static void loopTraders(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} else {* int traderZ = (int) entity.getZ(); setTraderXYZString(traderX, traderY, traderZ); - showTraderString(/*? >=1.20.1 {*/ /*ctx *//*?} else {*/ matrixStack /*?}*/); + showTraderString(/*? >=1.20.1 {*/ ctx /*?} else {*/ /*matrixStack *//*?}*/); } } } - public static void findTrader(/*? >=1.20.1 {*/ /*DrawContext ctx *//*?} else {*/ MatrixStack matrixStack /*?}*/) { + public static void findTrader(/*? >=1.20.1 {*/ DrawContext ctx /*?} else {*/ /*MatrixStack matrixStack *//*?}*/) { MinecraftClient mc = MinecraftClient.getInstance(); Entity player = mc.player; if (player == null || mc.world == null) return; BlockPos playerPos = player.getBlockPos(); - loopTraders(/*? >=1.20.1 {*/ /*ctx *//*?} else {*/ matrixStack /*?}*/); + loopTraders(/*? >=1.20.1 {*/ ctx /*?} else {*/ /*matrixStack *//*?}*/); } } diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 4e92eaa..9fc7d8c 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -25,6 +25,7 @@ "mixins": [ "skyplusplus.mixins.json" ], + "accessWidener" : "skyplusplus.accesswidener", "depends": { "fabricloader": ">=${loader_version}", "fabric": "*", diff --git a/src/main/resources/skyplusplus.accesswidener b/src/main/resources/skyplusplus.accesswidener new file mode 100644 index 0000000..7f174b3 --- /dev/null +++ b/src/main/resources/skyplusplus.accesswidener @@ -0,0 +1,2 @@ +accessWidener v2 named +accessible field net/minecraft/client/gui/screen/ingame/AbstractSignEditScreen text Lnet/minecraft/block/entity/SignText; \ No newline at end of file diff --git a/stonecutter.gradle b/stonecutter.gradle index 0130a69..615e2b1 100644 --- a/stonecutter.gradle +++ b/stonecutter.gradle @@ -1,4 +1,4 @@ plugins { id "dev.kikugie.stonecutter" } -stonecutter.active "1.19.2" \ No newline at end of file +stonecutter.active "1.21.8" \ No newline at end of file diff --git a/versions/1.21.8/gradle.properties b/versions/1.21.8/gradle.properties index 5bdc0e8..af83eef 100644 --- a/versions/1.21.8/gradle.properties +++ b/versions/1.21.8/gradle.properties @@ -1,5 +1,5 @@ yarn_mappings=1.21.8+build.1 fabric_version=0.131.0+1.21.8 -yacl=3.6.2+1.21.4-fabric +yacl=3.7.0+1.21.6-fabric loader_version=0.17.2 yacl_pkg=dev.isxander:yet-another-config-lib \ No newline at end of file