From c2e708ba38db9ed86b3c6df7b5b10e330073f657 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sat, 22 Jun 2024 19:18:36 -0500 Subject: [PATCH 1/7] added the handSitting toggle that enables sitting using the hand --- src/main/java/one/oth3r/sit/Events.java | 1 + src/main/java/one/oth3r/sit/ModMenu.java | 6 ++++++ src/main/java/one/oth3r/sit/file/Config.java | 7 +++++++ 3 files changed, 14 insertions(+) diff --git a/src/main/java/one/oth3r/sit/Events.java b/src/main/java/one/oth3r/sit/Events.java index fa5d50c..a604bab 100644 --- a/src/main/java/one/oth3r/sit/Events.java +++ b/src/main/java/one/oth3r/sit/Events.java @@ -211,6 +211,7 @@ public class Events { Sit.server = s; Sit.commandManager = s.getCommandManager(); UseBlockCallback.EVENT.register((pl, world, hand, hitResult) -> { + if (!Config.handSitting) return ActionResult.PASS; ServerPlayerEntity player = Sit.server.getPlayerManager().getPlayer(pl.getUuid()); if (player == null) return ActionResult.PASS; if (hand == net.minecraft.util.Hand.MAIN_HAND && hitResult.getType() == HitResult.Type.BLOCK) { diff --git a/src/main/java/one/oth3r/sit/ModMenu.java b/src/main/java/one/oth3r/sit/ModMenu.java index 189c77f..74d2480 100644 --- a/src/main/java/one/oth3r/sit/ModMenu.java +++ b/src/main/java/one/oth3r/sit/ModMenu.java @@ -40,6 +40,12 @@ public class ModMenu implements ModMenuApi { .binding(Config.defaults.sitWhileSeated, () -> Config.sitWhileSeated, n -> Config.sitWhileSeated = n) .controller(opt -> BooleanControllerBuilder.create(opt).trueFalseFormatter()) .build()) + .option(Option.createBuilder() + .name(Text.of("Sitting with Hand")) + .description(OptionDescription.of(Text.of("Toggles the player's ability to sit with their hand."))) + .binding(Config.defaults.handSitting,()-> Config.handSitting, n -> Config.handSitting = n) + .controller(opt -> BooleanControllerBuilder.create(opt).trueFalseFormatter()) + .build()) .group(OptionGroup.createBuilder() .name(lang("general.sittable")) .description(OptionDescription.of(lang("general.sittable.description"))) diff --git a/src/main/java/one/oth3r/sit/file/Config.java b/src/main/java/one/oth3r/sit/file/Config.java index 5c5c802..994d89c 100644 --- a/src/main/java/one/oth3r/sit/file/Config.java +++ b/src/main/java/one/oth3r/sit/file/Config.java @@ -42,6 +42,7 @@ public class Config { } } } + public static boolean handSitting = defaults.handSitting; public static HandRequirement mainReq = defaults.mainReq; public static boolean mainBlock = defaults.mainBlock; public static boolean mainFood = defaults.mainFood; @@ -113,6 +114,8 @@ public class Config { customBlocks = validateCustomBlocks(new Gson().fromJson((String) properties.computeIfAbsent("custom-blocks", a -> gson.toJson(defaults.customBlocks)), listType)); } catch (JsonSyntaxException ignore) {} + + handSitting = Boolean.parseBoolean((String) properties.computeIfAbsent("hand.sitting", a -> String.valueOf(defaults.handSitting))); mainReq = HandRequirement.get((String) properties.computeIfAbsent("hand.main.requirement", a -> String.valueOf(defaults.mainReq))); mainBlock = Boolean.parseBoolean((String) properties.computeIfAbsent("hand.main.block", a -> String.valueOf(defaults.mainBlock))); mainFood = Boolean.parseBoolean((String) properties.computeIfAbsent("hand.main.food", a -> String.valueOf(defaults.mainFood))); @@ -164,9 +167,11 @@ public class Config { e.printStackTrace(); } } + public static String lang(String key, Object... args) { return LangReader.of("config.sit."+key, args).getTxT().getString(); } + public static void save() { try (var file = Files.newBufferedWriter(configFile().toPath(), StandardCharsets.UTF_8)) { Gson gson = new GsonBuilder().disableHtmlEscaping().create(); @@ -195,6 +200,7 @@ public class Config { .append("\n# ").append(lang("general.sittable_blocks.description_8")).getString()); file.write("\ncustom-blocks="+gson.toJson(customBlocks)); file.write("\n\n# "+lang("hand")); + file.write("\nhand.sitting=" + handSitting); file.write("\n# "+Sit.lang("config.sit."+ "hand.requirements.description") .append("\n# ").append(lang("hand.requirements.description_2")) @@ -229,6 +235,7 @@ public class Config { public static boolean fullBlocksOn = false; public static boolean customOn = false; public static List customBlocks = List.of("minecraft:campfire|.46|1|lit=false","minecraft:soul_campfire|.46|1|lit=false,waterlogged=false"); + public static boolean handSitting = true; public static HandRequirement mainReq = HandRequirement.empty; public static boolean mainBlock = false; public static boolean mainFood = false; From 817a6333cf9de269b4b65ede1be118f2e18187b8 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sat, 22 Jun 2024 19:19:03 -0500 Subject: [PATCH 2/7] v1.1.7 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 9063459..637ece1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,7 +9,7 @@ yarn_mappings=1.21+build.1 loader_version=0.15.11 # Mod Properties -mod_version=1.1.6+1.21 +mod_version=1.1.7+1.21 maven_group=one.oth3r archives_base_name=sit! From 5fff3687c7a5f1f8602d12f44caf55a4a738f1a6 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 22 Jul 2024 10:25:58 -0500 Subject: [PATCH 3/7] fix modmenu data entry not removing bad data --- src/main/java/one/oth3r/sit/ModMenu.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/one/oth3r/sit/ModMenu.java b/src/main/java/one/oth3r/sit/ModMenu.java index 74d2480..be74779 100644 --- a/src/main/java/one/oth3r/sit/ModMenu.java +++ b/src/main/java/one/oth3r/sit/ModMenu.java @@ -13,17 +13,24 @@ import net.minecraft.util.Formatting; import one.oth3r.sit.file.Config; public class ModMenu implements ModMenuApi { + private static MutableText lang(String key) { return Text.translatable("config.sit."+key); } + private static MutableText lang(String key, Object... args) { return Text.translatable("config.sit."+key,args); } + @Override public ConfigScreenFactory getModConfigScreenFactory() { // return null if YACL isn't installed to not throw an error if (!yaclCheck()) return screen -> null; - return parent -> YetAnotherConfigLib.createBuilder().save(Config::save) + return parent -> YetAnotherConfigLib.createBuilder().save(() -> { + // save and load to get rid of bad data + Config.save(); + Config.load(); + }) .title(Text.of("Sit!")) .category(ConfigCategory.createBuilder() .name(lang("category.general")) From d86ac4b6e16acae903d0d8959dee16411c186516 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 22 Jul 2024 10:31:01 -0500 Subject: [PATCH 4/7] v1.1.8+1.21 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 637ece1..294ae81 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,7 +9,7 @@ yarn_mappings=1.21+build.1 loader_version=0.15.11 # Mod Properties -mod_version=1.1.7+1.21 +mod_version=1.1.8+1.21 maven_group=one.oth3r archives_base_name=sit! From a7b70323e48c6a94ad1303d1de6d44b7b1ff7423 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 22 Jul 2024 10:34:21 -0500 Subject: [PATCH 5/7] Revert "1.21 changes" This reverts commit ca86597498f4b1c128b0bacb4dce8bf36474ef36. --- src/main/java/one/oth3r/sit/Events.java | 2 +- src/main/java/one/oth3r/sit/packet/CustomPayloads.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/one/oth3r/sit/Events.java b/src/main/java/one/oth3r/sit/Events.java index a604bab..7371e3b 100644 --- a/src/main/java/one/oth3r/sit/Events.java +++ b/src/main/java/one/oth3r/sit/Events.java @@ -248,7 +248,7 @@ public class Events { BlockState blockState = player.getWorld().getBlockState(pos); // check if said block is still there if (blockState.isAir()) { - player.teleport(player.getX(),player.getBlockY()+1,player.getZ(),false); + player.teleport(player.getX(),player.getBlockY()+1,player.getZ()); entity.setRemoved(Entity.RemovalReason.DISCARDED); entityLoop.remove(); } diff --git a/src/main/java/one/oth3r/sit/packet/CustomPayloads.java b/src/main/java/one/oth3r/sit/packet/CustomPayloads.java index 7d1fea9..9d6a57d 100644 --- a/src/main/java/one/oth3r/sit/packet/CustomPayloads.java +++ b/src/main/java/one/oth3r/sit/packet/CustomPayloads.java @@ -10,7 +10,7 @@ import one.oth3r.sit.Sit; public class CustomPayloads { public record SettingsPayload(String value) implements CustomPayload { - public static final Id ID = new Id<>(Identifier.of(Sit.MOD_ID,"settings_v1.1")); + public static final Id ID = new Id<>(new Identifier(Sit.MOD_ID,"settings_v1.1")); public static final PacketCodec CODEC = PacketCodecs.STRING.xmap(SettingsPayload::new, SettingsPayload::value).cast(); From ada03ba40e3c2a0e511bea1cbf1c0b03159fbe56 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 22 Jul 2024 10:39:47 -0500 Subject: [PATCH 6/7] v1.1.8+1.20.6 --- gradle.properties | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gradle.properties b/gradle.properties index 294ae81..832f796 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,16 +4,16 @@ org.gradle.parallel=true # Fabric Properties # check these on https://fabricmc.net/develop -minecraft_version=1.21 -yarn_mappings=1.21+build.1 +minecraft_version=1.20.6 +yarn_mappings=1.20.6+build.3 loader_version=0.15.11 # Mod Properties -mod_version=1.1.8+1.21 +mod_version=1.1.8+1.20.6 maven_group=one.oth3r archives_base_name=sit! # Dependencies -fabric_version=0.100.1+1.21 -modmenu_version=11.0.0-beta.1 -yacl_version=3.5.0+1.21-fabric +fabric_version=0.100.4+1.20.6 +modmenu_version=10.0.0-beta.1 +yacl_version=3.5.0+1.20.6-fabric From 1368650a49d6ba7dc39d7ccebaa3fb30fb841d24 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 22 Jul 2024 10:45:37 -0500 Subject: [PATCH 7/7] v1.1.8+1.20.4 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 03cd4be..445061d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,7 +9,7 @@ yarn_mappings=1.20.4+build.3 loader_version=0.15.11 # Mod Properties -mod_version=1.1.6+1.20.4 +mod_version=1.1.8+1.20.4 maven_group=one.oth3r archives_base_name=sit!