From c8142136f407746ded76f0bcba2c8a32a213c35d Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sun, 26 Nov 2023 10:16:36 -0600 Subject: [PATCH 01/15] 1.20-1.20.1 fix --- .../java/one/oth3r/sit/PacketBuilder.java | 2 +- src/main/java/one/oth3r/sit/Sit.java | 19 +++++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/main/java/one/oth3r/sit/PacketBuilder.java b/src/main/java/one/oth3r/sit/PacketBuilder.java index 55bb0c1..538609d 100644 --- a/src/main/java/one/oth3r/sit/PacketBuilder.java +++ b/src/main/java/one/oth3r/sit/PacketBuilder.java @@ -14,7 +14,7 @@ public class PacketBuilder { private PacketByteBuf packetByteBuf = PacketByteBufs.create(); public PacketBuilder(PacketByteBuf buf) { // Read any data sent in the packet - message = StandardCharsets.UTF_8.decode(ByteBuffer.wrap(buf.array())).toString().trim(); + message = buf.toString(StandardCharsets.UTF_8); packetByteBuf = buf; } public PacketBuilder(String message) { diff --git a/src/main/java/one/oth3r/sit/Sit.java b/src/main/java/one/oth3r/sit/Sit.java index d89f49d..09bb4e3 100644 --- a/src/main/java/one/oth3r/sit/Sit.java +++ b/src/main/java/one/oth3r/sit/Sit.java @@ -3,6 +3,8 @@ package one.oth3r.sit; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; +import io.netty.buffer.ByteBuf; +import io.netty.util.ReferenceCountUtil; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; @@ -15,6 +17,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.lang.reflect.Type; +import java.nio.charset.StandardCharsets; +import java.util.Arrays; import java.util.HashMap; public class Sit implements ModInitializer { @@ -35,12 +39,15 @@ public class Sit implements ModInitializer { Events.register(); //PACKETS ServerPlayNetworking.registerGlobalReceiver(PacketBuilder.getIdentifier(), - (server, player, handler, buf, responseSender) -> server.execute(() -> { - PacketBuilder packet = new PacketBuilder(buf); - Type hashMapToken = new TypeToken>() {}.getType(); - Gson gson = new GsonBuilder().disableHtmlEscaping().create(); - playerSettings.put(player,gson.fromJson(packet.getMessage(),hashMapToken)); - })); + (server, player, handler, buf, responseSender) -> { + buf.retain(); + server.execute(() -> { + PacketBuilder packet = new PacketBuilder(buf); + Type hashMapToken = new TypeToken>() {}.getType(); + Gson gson = new GsonBuilder().disableHtmlEscaping().create(); + playerSettings.put(player,gson.fromJson(packet.getMessage(),hashMapToken)); + }); + }); } public static MutableText lang(String key, Object... args) { if (isClient) return Text.translatable(key, args); From d0872ef8f142bed03b58c036edad88610ba584e2 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sun, 26 Nov 2023 10:19:34 -0600 Subject: [PATCH 02/15] make sure the buf is released --- src/main/java/one/oth3r/sit/Sit.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/one/oth3r/sit/Sit.java b/src/main/java/one/oth3r/sit/Sit.java index 09bb4e3..420a028 100644 --- a/src/main/java/one/oth3r/sit/Sit.java +++ b/src/main/java/one/oth3r/sit/Sit.java @@ -47,6 +47,7 @@ public class Sit implements ModInitializer { Gson gson = new GsonBuilder().disableHtmlEscaping().create(); playerSettings.put(player,gson.fromJson(packet.getMessage(),hashMapToken)); }); + buf.release(); }); } public static MutableText lang(String key, Object... args) { From 2c420aa55542d30eb7c8095d397c0119787ed785 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sun, 26 Nov 2023 10:35:49 -0600 Subject: [PATCH 03/15] the REAL 1.20-1.20.1 fix this time --- src/main/java/one/oth3r/sit/PacketBuilder.java | 7 ++++--- src/main/java/one/oth3r/sit/Sit.java | 6 +++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/main/java/one/oth3r/sit/PacketBuilder.java b/src/main/java/one/oth3r/sit/PacketBuilder.java index 538609d..ac4bb96 100644 --- a/src/main/java/one/oth3r/sit/PacketBuilder.java +++ b/src/main/java/one/oth3r/sit/PacketBuilder.java @@ -1,5 +1,6 @@ package one.oth3r.sit; +import io.netty.buffer.ByteBuf; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.minecraft.network.PacketByteBuf; @@ -12,10 +13,10 @@ public class PacketBuilder { public static final String SETTINGS = "settings_v1.0"; private final String message; private PacketByteBuf packetByteBuf = PacketByteBufs.create(); - public PacketBuilder(PacketByteBuf buf) { + public PacketBuilder(ByteBuf buf) { // Read any data sent in the packet - message = buf.toString(StandardCharsets.UTF_8); - packetByteBuf = buf; + packetByteBuf.writeBytes(buf); + message = packetByteBuf.toString(StandardCharsets.UTF_8); } public PacketBuilder(String message) { this.message = message; diff --git a/src/main/java/one/oth3r/sit/Sit.java b/src/main/java/one/oth3r/sit/Sit.java index 420a028..cf985eb 100644 --- a/src/main/java/one/oth3r/sit/Sit.java +++ b/src/main/java/one/oth3r/sit/Sit.java @@ -8,6 +8,7 @@ import io.netty.util.ReferenceCountUtil; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.network.PacketByteBuf; import net.minecraft.server.MinecraftServer; import net.minecraft.server.command.CommandManager; import net.minecraft.server.network.ServerPlayerEntity; @@ -40,14 +41,13 @@ public class Sit implements ModInitializer { //PACKETS ServerPlayNetworking.registerGlobalReceiver(PacketBuilder.getIdentifier(), (server, player, handler, buf, responseSender) -> { - buf.retain(); + ByteBuf byteBuf = buf.copy(); server.execute(() -> { - PacketBuilder packet = new PacketBuilder(buf); + PacketBuilder packet = new PacketBuilder(byteBuf); Type hashMapToken = new TypeToken>() {}.getType(); Gson gson = new GsonBuilder().disableHtmlEscaping().create(); playerSettings.put(player,gson.fromJson(packet.getMessage(),hashMapToken)); }); - buf.release(); }); } public static MutableText lang(String key, Object... args) { From 9e7a0283bc1f7379ad1176569fc2429a5c587079 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Thu, 30 Nov 2023 17:58:16 -0600 Subject: [PATCH 04/15] fix? --- src/main/java/one/oth3r/sit/PacketBuilder.java | 7 +++---- src/main/java/one/oth3r/sit/Sit.java | 3 +-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/one/oth3r/sit/PacketBuilder.java b/src/main/java/one/oth3r/sit/PacketBuilder.java index ac4bb96..538609d 100644 --- a/src/main/java/one/oth3r/sit/PacketBuilder.java +++ b/src/main/java/one/oth3r/sit/PacketBuilder.java @@ -1,6 +1,5 @@ package one.oth3r.sit; -import io.netty.buffer.ByteBuf; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.minecraft.network.PacketByteBuf; @@ -13,10 +12,10 @@ public class PacketBuilder { public static final String SETTINGS = "settings_v1.0"; private final String message; private PacketByteBuf packetByteBuf = PacketByteBufs.create(); - public PacketBuilder(ByteBuf buf) { + public PacketBuilder(PacketByteBuf buf) { // Read any data sent in the packet - packetByteBuf.writeBytes(buf); - message = packetByteBuf.toString(StandardCharsets.UTF_8); + message = buf.toString(StandardCharsets.UTF_8); + packetByteBuf = buf; } public PacketBuilder(String message) { this.message = message; diff --git a/src/main/java/one/oth3r/sit/Sit.java b/src/main/java/one/oth3r/sit/Sit.java index cf985eb..d621a73 100644 --- a/src/main/java/one/oth3r/sit/Sit.java +++ b/src/main/java/one/oth3r/sit/Sit.java @@ -41,9 +41,8 @@ public class Sit implements ModInitializer { //PACKETS ServerPlayNetworking.registerGlobalReceiver(PacketBuilder.getIdentifier(), (server, player, handler, buf, responseSender) -> { - ByteBuf byteBuf = buf.copy(); + PacketBuilder packet = new PacketBuilder(buf); server.execute(() -> { - PacketBuilder packet = new PacketBuilder(byteBuf); Type hashMapToken = new TypeToken>() {}.getType(); Gson gson = new GsonBuilder().disableHtmlEscaping().create(); playerSettings.put(player,gson.fromJson(packet.getMessage(),hashMapToken)); From bcf1a7159b816eb4d3d29f7eaf7dfc25d9f49a20 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Fri, 1 Dec 2023 16:39:48 -0600 Subject: [PATCH 05/15] update README.md --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index ce74066..2dc0f0a 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ Sit on **stairs**, **slabs**, **carpets** by default, and sit on everything else using the config! You can also customize hand restrictions to stop accidentally sitting down! The mod also has full Geyser support! Enjoy sitting with everyone, weather they are on Bedrock or Java! +### Where to install? +**Sit!** works on the server (singleplayer included), with support for clients that join in to use their own settings to sit. ## Help localize Sit! on [Crowdin](https://crowdin.com/project/oth3r-sit)! ![overview](https://github.com/Oth3r/Sit/blob/master/media/overview.gif?raw=true) ## Check out my other Projects! @@ -16,8 +18,10 @@ The mod also has full Geyser support! Enjoy sitting with everyone, weather they # Features ### Hand Restrictions Don't want to accidentally sit down? Set custom restrictions for each hand in the config! +* Per player hand restrictions when connecting to a `Sit!` server on a `Sit!` Client! ![hand restrictions](https://github.com/Oth3r/Sit/blob/master/media/hand-restrictions.gif?raw=true) + ### Custom Blocks Want to sit on _**EVERY**_ block? With the config you can add more options to sit on! Custom block states are also supported. From fe3a812569c10c3eb6e0eca7f55bf0a0fe2cf2f6 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Tue, 5 Dec 2023 13:56:56 -0600 Subject: [PATCH 06/15] fix fix --- src/main/java/one/oth3r/sit/PacketBuilder.java | 7 ++++--- src/main/java/one/oth3r/sit/Sit.java | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/one/oth3r/sit/PacketBuilder.java b/src/main/java/one/oth3r/sit/PacketBuilder.java index 538609d..6afb6cf 100644 --- a/src/main/java/one/oth3r/sit/PacketBuilder.java +++ b/src/main/java/one/oth3r/sit/PacketBuilder.java @@ -1,5 +1,6 @@ package one.oth3r.sit; +import io.netty.buffer.ByteBuf; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.networking.v1.PacketByteBufs; import net.minecraft.network.PacketByteBuf; @@ -11,11 +12,11 @@ import java.nio.charset.StandardCharsets; public class PacketBuilder { public static final String SETTINGS = "settings_v1.0"; private final String message; - private PacketByteBuf packetByteBuf = PacketByteBufs.create(); - public PacketBuilder(PacketByteBuf buf) { + private final PacketByteBuf packetByteBuf = PacketByteBufs.create(); + public PacketBuilder(ByteBuf buf) { // Read any data sent in the packet message = buf.toString(StandardCharsets.UTF_8); - packetByteBuf = buf; + packetByteBuf.writeBytes(buf); } public PacketBuilder(String message) { this.message = message; diff --git a/src/main/java/one/oth3r/sit/Sit.java b/src/main/java/one/oth3r/sit/Sit.java index d621a73..08abcc9 100644 --- a/src/main/java/one/oth3r/sit/Sit.java +++ b/src/main/java/one/oth3r/sit/Sit.java @@ -41,7 +41,8 @@ public class Sit implements ModInitializer { //PACKETS ServerPlayNetworking.registerGlobalReceiver(PacketBuilder.getIdentifier(), (server, player, handler, buf, responseSender) -> { - PacketBuilder packet = new PacketBuilder(buf); + // copy to not throw errors + PacketBuilder packet = new PacketBuilder(buf.copy()); server.execute(() -> { Type hashMapToken = new TypeToken>() {}.getType(); Gson gson = new GsonBuilder().disableHtmlEscaping().create(); From 5cfa1069664d0f9ea6b07012a51c63cc336f5ed8 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Tue, 5 Dec 2023 14:21:01 -0600 Subject: [PATCH 07/15] fix config not commenting correctly --- src/main/java/one/oth3r/sit/config.java | 62 ++++++++++++------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/src/main/java/one/oth3r/sit/config.java b/src/main/java/one/oth3r/sit/config.java index 2f67973..70410bb 100644 --- a/src/main/java/one/oth3r/sit/config.java +++ b/src/main/java/one/oth3r/sit/config.java @@ -134,20 +134,20 @@ public class config { try (var file = Files.newBufferedWriter(configFile().toPath(), StandardCharsets.UTF_8)) { Gson gson = new GsonBuilder().disableHtmlEscaping().create(); file.write("# Sit! Config\n"); - file.write(("\nversion="+defaults.version)); - file.write(("\n# all available languages: en_us, ru_ru")); - file.write(("\nlang=" + lang)); - file.write(("\n\n# "+lang("general.keep_active.description"))); - file.write(("\nkeep-active=" + keepActive)); - file.write(("\n# "+lang("general.sit_while_seated.description"))); - file.write(("\nsit-while-seated=" + sitWhileSeated)); - file.write(("\n# "+lang("general.sittable.description"))); - file.write(("\nstairs=" + stairsOn)); - file.write(("\nslabs=" + slabsOn)); - file.write(("\ncarpets=" + carpetsOn)); - file.write(("\nfull-blocks=" + fullBlocksOn)); - file.write(("\ncustom=" + customOn)); - file.write(("\n# "+Sit.lang("config.sit."+ + file.write("\nversion="+defaults.version); + file.write("\n# all available languages: en_us, ru_ru"); + file.write("\nlang=" + lang); + file.write("\n\n# "+lang("general.keep_active.description")); + file.write("\nkeep-active=" + keepActive); + file.write("\n# "+lang("general.sit_while_seated.description")); + file.write("\nsit-while-seated=" + sitWhileSeated); + file.write("\n# "+lang("general.sittable.description")); + file.write("\nstairs=" + stairsOn); + file.write("\nslabs=" + slabsOn); + file.write("\ncarpets=" + carpetsOn); + file.write("\nfull-blocks=" + fullBlocksOn); + file.write("\ncustom=" + customOn); + file.write("\n# "+Sit.lang("config.sit."+ "general.sittable_blocks.description") .append("\n# ").append(lang("general.sittable_blocks.description_2")) .append(lang("general.sittable_blocks.description_3", @@ -159,26 +159,26 @@ public class config { .append("\n# ").append(lang("general.sittable_blocks.description_5")) .append("\n# ").append(lang("general.sittable_blocks.description_6")) .append("\n# ").append(lang("general.sittable_blocks.description_7")) - .append("\n# ").append(lang("general.sittable_blocks.description_8")))); - file.write(("\ncustom-blocks="+gson.toJson(customBlocks))); - file.write(("\n\n# "+lang("hand"))); - file.write(("\n# "+Sit.lang("config.sit."+ + .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("\n# "+Sit.lang("config.sit."+ "hand.requirements.description") .append("\n# ").append(lang("hand.requirements.description_2")) .append("\n# ").append(lang("hand.requirements.description_3")) - .append("\n# ").append(lang("hand.requirements.description_4")))); - file.write(("\nhand.main.requirement=" + mainReq)); - file.write(("\nhand.main.block=" + mainBlock)); - file.write(("\nhand.main.food=" + mainFood)); - file.write(("\nhand.main.usable=" + mainUsable)); - file.write(("\nhand.main.whitelist="+gson.toJson(mainWhitelist))); - file.write(("\nhand.main.blacklist="+gson.toJson(mainBlacklist))); - file.write(("\nhand.off.requirement=" + offReq)); - file.write(("\nhand.off.block=" + offBlock)); - file.write(("\nhand.off.food=" + offFood)); - file.write(("\nhand.off.usable=" + offUsable)); - file.write(("\nhand.off.whitelist="+gson.toJson(offWhitelist))); - file.write(("\nhand.off.blacklist="+gson.toJson(offBlacklist))); + .append("\n# ").append(lang("hand.requirements.description_4")).getString()); + file.write("\nhand.main.requirement=" + mainReq); + file.write("\nhand.main.block=" + mainBlock); + file.write("\nhand.main.food=" + mainFood); + file.write("\nhand.main.usable=" + mainUsable); + file.write("\nhand.main.whitelist="+gson.toJson(mainWhitelist)); + file.write("\nhand.main.blacklist="+gson.toJson(mainBlacklist)); + file.write("\nhand.off.requirement=" + offReq); + file.write("\nhand.off.block=" + offBlock); + file.write("\nhand.off.food=" + offFood); + file.write("\nhand.off.usable=" + offUsable); + file.write("\nhand.off.whitelist="+gson.toJson(offWhitelist)); + file.write("\nhand.off.blacklist="+gson.toJson(offBlacklist)); // send packets to update the settings on the server if (SitClient.inGame) SitClient.sendPackets(); } catch (Exception e) { From 074a4f11922f6629a04e6e9176395a3d0cbcf4b5 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Tue, 5 Dec 2023 14:21:22 -0600 Subject: [PATCH 08/15] v1.1.1+1.20.2-1.20.3 --- gradle.properties | 10 +++++----- src/main/resources/fabric.mod.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/gradle.properties b/gradle.properties index 65f084f..e766262 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.20.2 -yarn_mappings=1.20.2+build.1 -loader_version=0.14.22 +minecraft_version=1.20.3 +yarn_mappings=1.20.3+build.1 +loader_version=0.15.0 # Mod Properties -mod_version=1.1.0+1.20.2 +mod_version=1.1.1+1.20.2-1.20.3 maven_group=one.oth3r archives_base_name=sit! # Dependencies -fabric_version=0.89.0+1.20.2 +fabric_version=0.91.1+1.20.3 modmenu_version=8.0.0 yacl_version=3.2.1+1.20.2 diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 963a042..84fc3de 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -27,7 +27,7 @@ }, "depends": { "fabricloader": ">=0.14.21", - "minecraft": "=1.20.2", + "minecraft": ">=1.20.2 <=1.20.3", "java": ">=17", "fabric-api": "*" }, From ac9dc8943cb97d6728534bec0d067ebf5776acec Mon Sep 17 00:00:00 2001 From: Oth3r Date: Thu, 7 Dec 2023 12:23:10 -0600 Subject: [PATCH 09/15] v1.1.1+1.20.2-1.20.4 --- gradle.properties | 8 ++++---- src/main/resources/fabric.mod.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/gradle.properties b/gradle.properties index e766262..e53a56f 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.20.3 -yarn_mappings=1.20.3+build.1 +minecraft_version=1.20.4 +yarn_mappings=1.20.4+build.1 loader_version=0.15.0 # Mod Properties -mod_version=1.1.1+1.20.2-1.20.3 +mod_version=1.1.1+1.20.2-1.20.4 maven_group=one.oth3r archives_base_name=sit! # Dependencies -fabric_version=0.91.1+1.20.3 +fabric_version=0.91.1+1.20.4 modmenu_version=8.0.0 yacl_version=3.2.1+1.20.2 diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 84fc3de..773137f 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -27,7 +27,7 @@ }, "depends": { "fabricloader": ">=0.14.21", - "minecraft": ">=1.20.2 <=1.20.3", + "minecraft": ">=1.20.2 <=1.20.4", "java": ">=17", "fabric-api": "*" }, From 9b51b1c0ec46bfbca9a671f9f82f12751938a154 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sat, 9 Dec 2023 13:05:51 -0600 Subject: [PATCH 10/15] fixed sitting height update for 1.20.2+ --- src/main/java/one/oth3r/sit/Events.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/one/oth3r/sit/Events.java b/src/main/java/one/oth3r/sit/Events.java index 444e023..9fd9ef8 100644 --- a/src/main/java/one/oth3r/sit/Events.java +++ b/src/main/java/one/oth3r/sit/Events.java @@ -159,10 +159,12 @@ public class Events { } } } - entity.updatePositionAndAngles(entity.getX(),entity.getY(),entity.getZ(),0,0); + //1.20.2 mounting pos change (shifts everything down by .25) + double oneTwentyTwo = .25; + entity.updatePositionAndAngles(entity.getX(),entity.getY()+oneTwentyTwo,entity.getZ(),0,0); entity.setBoundingBox(Box.of(Vec3d.of(pos),1.5,hitBoxY,1.5)); //change pitch based on if player is sitting below block height or not - if (entity.getY() <= pos.getY()+.35) entity.setPitch(90); // below + if (entity.getY() <= pos.getY()+.35+oneTwentyTwo) entity.setPitch(90); // below else entity.setPitch(-90); // above } public static void register() { From 21b567697ac3d9fe103180678ad2992b76da600f Mon Sep 17 00:00:00 2001 From: Oth3r Date: Sat, 9 Dec 2023 13:06:09 -0600 Subject: [PATCH 11/15] v1.1.2+1.20.2-1.20.4 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index e53a56f..1a55442 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,7 +9,7 @@ yarn_mappings=1.20.4+build.1 loader_version=0.15.0 # Mod Properties -mod_version=1.1.1+1.20.2-1.20.4 +mod_version=1.1.2+1.20.2-1.20.4 maven_group=one.oth3r archives_base_name=sit! From 885929294e60e524d7150fad9511c254e0bd246d Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 8 Jan 2024 11:42:33 -0600 Subject: [PATCH 12/15] optimized lang file --- src/main/java/one/oth3r/sit/ModMenu.java | 16 ++++++++++------ src/main/java/one/oth3r/sit/config.java | 8 ++------ src/main/resources/assets/sit/lang/en_us.json | 7 +------ 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/src/main/java/one/oth3r/sit/ModMenu.java b/src/main/java/one/oth3r/sit/ModMenu.java index 401e672..7283b17 100644 --- a/src/main/java/one/oth3r/sit/ModMenu.java +++ b/src/main/java/one/oth3r/sit/ModMenu.java @@ -71,12 +71,16 @@ public class ModMenu implements ModMenuApi { .name(lang("general.sittable_blocks")) .description(OptionDescription.of( lang("general.sittable_blocks.description") - .append("\n\n").append(lang("general.sittable_blocks.description_2")) - .append(lang("general.sittable_blocks.description_3", - lang("general.sittable_blocks.description_3_2").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.AQUA))), - lang("general.sittable_blocks.description_3_3").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.RED))), - lang("general.sittable_blocks.description_3_4").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.GREEN))), - lang("general.sittable_blocks.description_3_5").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.GOLD)))).styled(style -> style.withItalic(true).withColor(TextColor.fromFormatting(Formatting.GRAY)))) + .append("\n\n").append(lang("general.sittable_blocks.description_2", + Text.literal("\"") + .append(Text.literal("minecraft:campfire").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.AQUA)))) + .append("|") + .append(Text.literal("0.255").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.RED)))) + .append("|") + .append(Text.literal("1").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.GREEN)))) + .append("|") + .append(Text.literal("lit=false").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.GOLD)))) + .append("\"").styled(style -> style.withItalic(true).withColor(TextColor.fromFormatting(Formatting.GRAY))))) .append("\n\n").append(lang("general.sittable_blocks.description_4").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.AQUA)))) .append("\n").append(lang("general.sittable_blocks.description_5").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.RED)))) .append("\n").append(lang("general.sittable_blocks.description_6").styled(style -> style.withColor(TextColor.fromFormatting(Formatting.GREEN)))) diff --git a/src/main/java/one/oth3r/sit/config.java b/src/main/java/one/oth3r/sit/config.java index 70410bb..18e55b2 100644 --- a/src/main/java/one/oth3r/sit/config.java +++ b/src/main/java/one/oth3r/sit/config.java @@ -149,12 +149,8 @@ public class config { file.write("\ncustom=" + customOn); file.write("\n# "+Sit.lang("config.sit."+ "general.sittable_blocks.description") - .append("\n# ").append(lang("general.sittable_blocks.description_2")) - .append(lang("general.sittable_blocks.description_3", - lang("general.sittable_blocks.description_3_2"), - lang("general.sittable_blocks.description_3_3"), - lang("general.sittable_blocks.description_3_4"), - lang("general.sittable_blocks.description_3_5"))) + .append("\n# ").append(lang("general.sittable_blocks.description_2", + "\"minecraft:campfire|0.255|1|lit=false\"")) .append("\n# ").append(lang("general.sittable_blocks.description_4")) .append("\n# ").append(lang("general.sittable_blocks.description_5")) .append("\n# ").append(lang("general.sittable_blocks.description_6")) diff --git a/src/main/resources/assets/sit/lang/en_us.json b/src/main/resources/assets/sit/lang/en_us.json index 471d3be..fe8916c 100644 --- a/src/main/resources/assets/sit/lang/en_us.json +++ b/src/main/resources/assets/sit/lang/en_us.json @@ -22,12 +22,7 @@ "config.sit.general.sittable.custom.description": "Enables adding custom blocks to sit on.", "config.sit.general.sittable_blocks": "Custom Sittable Blocks", "config.sit.general.sittable_blocks.description": "Add custom sittable blocks!", - "config.sit.general.sittable_blocks.description_2": "Example: ", - "config.sit.general.sittable_blocks.description_3": "\"%s|%s|%s|%s\"", - "config.sit.general.sittable_blocks.description_3_2": "minecraft:campfire", - "config.sit.general.sittable_blocks.description_3_3": ".255", - "config.sit.general.sittable_blocks.description_3_4": "1", - "config.sit.general.sittable_blocks.description_3_5": "lit=false", + "config.sit.general.sittable_blocks.description_2": "Example: %s", "config.sit.general.sittable_blocks.description_4": "First entry: custom block", "config.sit.general.sittable_blocks.description_5": "Second entry: sitting height (number from 0-1 eg 0.52)", "config.sit.general.sittable_blocks.description_6": "Third entry: hitbox size (where the player spawns above the entity when dismounting)", From 9304c2e0871629c226446ee3796fc5ae8badc003 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 8 Jan 2024 11:43:12 -0600 Subject: [PATCH 13/15] added missing config entry --- src/main/resources/assets/sit/lang/ru_ru.json | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/resources/assets/sit/lang/ru_ru.json b/src/main/resources/assets/sit/lang/ru_ru.json index d458dc1..08afb4b 100644 --- a/src/main/resources/assets/sit/lang/ru_ru.json +++ b/src/main/resources/assets/sit/lang/ru_ru.json @@ -22,17 +22,13 @@ "config.sit.general.sittable.custom.description": "Позволяет добавить собственные блоки, на которые можно сесть.", "config.sit.general.sittable_blocks": "Собственные блоки для сидения", "config.sit.general.sittable_blocks.description": "Добавь свой блок для сидения!", - "config.sit.general.sittable_blocks.description_2": "Пример: ", - "config.sit.general.sittable_blocks.description_3": "\"%s|%s|%s|%s\"", - "config.sit.general.sittable_blocks.description_3_2": "minecraft:campfire", - "config.sit.general.sittable_blocks.description_3_3": ".255", - "config.sit.general.sittable_blocks.description_3_4": "1", - "config.sit.general.sittable_blocks.description_3_5": "lit=false", + "config.sit.general.sittable_blocks.description_2": "Пример: %s", "config.sit.general.sittable_blocks.description_4": "Первый вход: собственный блок", "config.sit.general.sittable_blocks.description_5": "Второй вход: высота сидения (число от 0 до 1, например 0.52)", "config.sit.general.sittable_blocks.description_6": "Третий вход: размер хитбокса (место, где игрок появляется над объектом при спешивании)", "config.sit.general.sittable_blocks.description_7": "Четвертый вход (опционально): требуемое состояние блока для сидения (Вставьте \"!\" для исключения состояния блоков)", "config.sit.general.sittable_blocks.description_8": "Разделяйте разные входы знаком \"|\"!", + "config.sit.hand": "Настройки руки", "config.sit.hand.requirements": "Требования", "config.sit.hand.requirements.description": "Что нужно, чтобы сесть.", "config.sit.hand.requirements.description_2": "Пусто = рука должна быть пуста", From 112a19a1d3f913364c33e5e6d887d29c6491138e Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 8 Jan 2024 11:43:30 -0600 Subject: [PATCH 14/15] added es_es localizations by lacteada --- src/main/java/one/oth3r/sit/config.java | 2 +- src/main/resources/assets/sit/lang/es_es.json | 51 +++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 src/main/resources/assets/sit/lang/es_es.json diff --git a/src/main/java/one/oth3r/sit/config.java b/src/main/java/one/oth3r/sit/config.java index 18e55b2..7e52df9 100644 --- a/src/main/java/one/oth3r/sit/config.java +++ b/src/main/java/one/oth3r/sit/config.java @@ -135,7 +135,7 @@ public class config { Gson gson = new GsonBuilder().disableHtmlEscaping().create(); file.write("# Sit! Config\n"); file.write("\nversion="+defaults.version); - file.write("\n# all available languages: en_us, ru_ru"); + file.write("\n# all available languages: en_us, ru_ru, es_es"); file.write("\nlang=" + lang); file.write("\n\n# "+lang("general.keep_active.description")); file.write("\nkeep-active=" + keepActive); diff --git a/src/main/resources/assets/sit/lang/es_es.json b/src/main/resources/assets/sit/lang/es_es.json new file mode 100644 index 0000000..fa51f3d --- /dev/null +++ b/src/main/resources/assets/sit/lang/es_es.json @@ -0,0 +1,51 @@ +{ + "config.sit.empty": "Vacía", + "config.sit.restrictive": "Restrictiva", + "config.sit.none": "Ninguna", + "config.sit.category.general": "General", + "config.sit.category.general.tooltip": "Configuración general", + "config.sit.category.main_hand": "Mano principal", + "config.sit.category.main_hand.tooltip": "Ajustes de la mano principal", + "config.sit.category.off_hand": "Mano secundaria", + "config.sit.category.off_hand.tooltip": "Ajustes de la mano secundaria", + "config.sit.general.keep_active": "Mantener activo", + "config.sit.general.keep_active.description": "Mantener entidades activas incluso al cerrar sesión o al apagar el servidor", + "config.sit.general.sittable": "Bloques aptos para sentarse", + "config.sit.general.sittable.description": "Activa/Desactiva los tipos de bloques en los que se puede sentar.", + "config.sit.general.sit_while_seated": "Cambiar de asiento", + "config.sit.general.sit_while_seated.description": "Permite cambiar de asiento estando sentado.", + "config.sit.general.sittable.stairs": "Escaleras", + "config.sit.general.sittable.slabs": "Losas", + "config.sit.general.sittable.carpets": "Alfombras", + "config.sit.general.sittable.full_blocks": "Bloques Enteros", + "config.sit.general.sittable.custom": "Personalizados", + "config.sit.general.sittable.custom.description": "Permitir sentarse en los bloques personalizados.", + "config.sit.general.sittable_blocks": "Bloques Personalizados", + "config.sit.general.sittable_blocks.description": "¡Añadir bloques personalizados para sentarse!", + "config.sit.general.sittable_blocks.description_2": "Ejemplo: %s", + "config.sit.general.sittable_blocks.description_4": "Primera entrada: bloque personalizado", + "config.sit.general.sittable_blocks.description_5": "Segunda entrada: altura del asiento (número entre 0 y 1, por ejemplo, 0.52)", + "config.sit.general.sittable_blocks.description_6": "Tercera entrada: Altura del bloque (en que altura del bloque el jugador aparece al pararse)", + "config.sit.general.sittable_blocks.description_7": "Cuarta entrada (opcional): estado del bloque requerido para sentarse (Usa una exclamación (!) para excluir estados)", + "config.sit.general.sittable_blocks.description_8": "¡Separar diferentes entradas con \"|\"!", + "config.sit.hand": "Configuración de mano", + "config.sit.hand.requirements": "Requisitos", + "config.sit.hand.requirements.description": "Requisitos de la mano para sentarse.", + "config.sit.hand.requirements.description_2": "Vacía = la mano debe estar vacía", + "config.sit.hand.requirements.description_3": "Restrictiva = establecer restricciones para el estado de la mano", + "config.sit.hand.requirements.description_4": "Ninguna = sin restricciones ni requisitos", + "config.sit.hand.restrictions": "Restricciones", + "config.sit.hand.restrictions.description": "Activa/Desactiva las restricciones preestablecidas de la mano para sentarse.", + "config.sit.hand.restrictions.blocks": "Bloques", + "config.sit.hand.restrictions.food": "Comida", + "config.sit.hand.restrictions.usable": "Utilizable", + "config.sit.hand.restrictions.usable.description": "Ejemplos: arcos, tridentes, escudo", + "config.sit.hand.whitelist": "Lista blanca", + "config.sit.hand.whitelist.description": "Crea una lista blanca personalizada para objetos con los que el jugador puede sentarse.", + "config.sit.hand.blacklist": "Lista negra", + "config.sit.hand.blacklist.description": "Crea una lista negra personalizada para objetos con los que el jugador no puede sentarse.", + "config.sit.hand.list.description": "Ejemplo: ", + "config.sit.hand.list.description_2": "\"minecraft:torch\"", + "key.sit.command.reloaded": "¡Configuración recargada!", + "key.sit.command.purged": "¡Se purgaron a todas las entidades activas de sillas!" +} \ No newline at end of file From c2e3830d4f1bbe40056ae6c3f0951f72f439a09f Mon Sep 17 00:00:00 2001 From: Oth3r Date: Mon, 8 Jan 2024 11:58:35 -0600 Subject: [PATCH 15/15] v1.1.3+1.20.2-1.20.4 --- gradle.properties | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gradle.properties b/gradle.properties index 1a55442..0d0acaf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,11 +9,11 @@ yarn_mappings=1.20.4+build.1 loader_version=0.15.0 # Mod Properties -mod_version=1.1.2+1.20.2-1.20.4 +mod_version=1.1.3+1.20.2-1.20.4 maven_group=one.oth3r archives_base_name=sit! # Dependencies fabric_version=0.91.1+1.20.4 -modmenu_version=8.0.0 -yacl_version=3.2.1+1.20.2 +modmenu_version=9.0.0 +yacl_version=3.3.1+1.20.4