From 61ff50a81d02d0604c98e498fea227a7abcc3d16 Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Fri, 6 Jun 2025 20:01:52 -0500
Subject: [PATCH 01/12] add OtterLib dependency message, fixes #23
---
README.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/README.md b/README.md
index b851d3a..2457022 100644
--- a/README.md
+++ b/README.md
@@ -10,6 +10,8 @@ The mod also has full Geyser support! Enjoy sitting with everyone, weather they
### Where to install?
**Sit!** works on the server (singleplayer included), also with support for clients that join in to use their own settings to sit.
+\
+[Farbric API](https://modrinth.com/mod/fabric-api) and [OtterLib](https://modrinth.com/mod/otterlib) is required to for the mod to load.
## Help localize Sit! on [Crowdin](https://crowdin.com/project/oth3r-sit)!

From bc23a3d2c258f2d4dd3f65888d259003b302c8f9 Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Fri, 6 Jun 2025 20:09:48 -0500
Subject: [PATCH 02/12] README refresh
---
README.md | 74 +++++++++++++++++++++++++++++++++++--------------------
1 file changed, 47 insertions(+), 27 deletions(-)
diff --git a/README.md b/README.md
index 2457022..47fbea2 100644
--- a/README.md
+++ b/README.md
@@ -1,48 +1,68 @@
-# Sit!
-[](https://github.com/Oth3r/Sit/releases) [](https://crowdin.com/project/oth3r-sit) [](https://www.oth3r.one/discord)
+
+
+[](https://github.com/Oth3r/Sit/releases) [](https://crowdin.com/project/oth3r-sit) [](https://www.oth3r.one/discord)
[](https://modrinth.com/mod/sit!) [](https://www.curseforge.com/minecraft/mc-mods/Sit1)
-**Sit!** is a minecraft mod that adds sitting in vanilla minecraft.
-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!
+
+### **Sit!** is a vanilla+ mod that adds sitting in minecraft.
+* Sit on **stairs**, **slabs**, **carpets** by default, and sit on everything else by tweaking the config!
+* You can also customize **hand restrictions** to stop accidentally sitting down!
+* The mod also has full **Geyser** support! Enjoy sitting with everyone, whether they are on Bedrock or Java!
+* If Sit! clients join a Sit! server they can use **their own hand settings** to sit.
### Where to install?
-**Sit!** works on the server (singleplayer included), also with support for clients that join in to use their own settings to sit.
+**Sit!** works on the server, without the players needing to install the mod *(singleplayer included!)*.
\
-[Farbric API](https://modrinth.com/mod/fabric-api) and [OtterLib](https://modrinth.com/mod/otterlib) is required to for the mod to load.
+[Fabric API](https://modrinth.com/mod/fabric-api) and [OtterLib](https://modrinth.com/mod/otterlib) is required to for the mod to load.
-## Help localize Sit! on [Crowdin](https://crowdin.com/project/oth3r-sit)!
-
+### Help localize Sit! on [Crowdin](https://crowdin.com/project/oth3r-sit)!
+Sit! is currently in English, Traditional Chinese, Italian, Brazilian Portuguese, and Turkish! Help expand this list via Crowdin so reach more people!
## Check out my other Projects!
-[](https://modrinth.com/mod/caligo)
-[](https://modrinth.com/mod/directionhud)
-[](https://modrinth.com/plugin/directionhud-plugin)
+
+
+
+
+
+
+
+
+
+
# Features
-### Hand Restrictions
+### 🤚 Hand Restrictions
Don't want to accidentally sit down? Set custom restrictions for each hand in the config!
+\
+Use **player unique** hand restrictions when connecting to a `Sit!` server on a `Sit!` Client!
-* Per player hand restrictions when connecting to a `Sit!` server on a `Sit!` Client!
+
-
+### 🟩 Custom Blocks
+Want to sit on _**EVERY**_ block? With the config you can add more sitting options!
+\
+With the new config system, block tags and custom blockstates can be used to mass select blocks at ease.
-### 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.
+
-
+### ⌨️ Keybinds
+Don't want to sit with the **just** the hand? Use a keybind or type a command to sit instead!
-### Customizable Config
-Configure to your hearts desire with the in-game config with **[ModMenu](https://modrinth.com/mod/modmenu)** & **[YetAnotherConfigLib](https://modrinth.com/mod/yacl)**, or use the provided config file for servers!
+
-
-
+### 📃 Customizable Config
+Don't like the default settings? Go wild in the config for yourself or your players!
+
## Future Goals
- * Forge Port (probably NeoForge 1.21)
- * Custom dismounting logic
- * better config (coming soon!)
- * keybindings (next update)
+ * NeoForge Port
+ * Full config via [OtterLib](https://modrinth.com/mod/otterlib)
From 6c02b090ac343ce3073271710a1225f0241f91ea Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 17:13:19 -0500
Subject: [PATCH 03/12] get the player's actual reach when checking sitting
---
src/main/java/one/oth3r/sit/utl/Logic.java | 3 ++-
src/main/java/one/oth3r/sit/utl/Utl.java | 10 ++++++++++
2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/src/main/java/one/oth3r/sit/utl/Logic.java b/src/main/java/one/oth3r/sit/utl/Logic.java
index f07f822..b128b94 100644
--- a/src/main/java/one/oth3r/sit/utl/Logic.java
+++ b/src/main/java/one/oth3r/sit/utl/Logic.java
@@ -77,7 +77,8 @@ public class Logic {
* @return true if sitting was successful
*/
public static boolean sitLooking(ServerPlayerEntity player) {
- return sit(player, Utl.getBlockPosPlayerIsLookingAt(player.getServerWorld(),player,5),null);
+ return sit(player, Utl.getBlockPosPlayerIsLookingAt(player.getServerWorld(),player,
+ Utl.getPlayerReach(player)),null);
}
/**
diff --git a/src/main/java/one/oth3r/sit/utl/Utl.java b/src/main/java/one/oth3r/sit/utl/Utl.java
index ec16687..ea2fc19 100644
--- a/src/main/java/one/oth3r/sit/utl/Utl.java
+++ b/src/main/java/one/oth3r/sit/utl/Utl.java
@@ -10,6 +10,7 @@ import net.minecraft.block.*;
import net.minecraft.block.enums.BlockHalf;
import net.minecraft.block.enums.SlabType;
import net.minecraft.entity.EntityType;
+import net.minecraft.entity.attribute.EntityAttributes;
import net.minecraft.entity.decoration.DisplayEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.BlockItem;
@@ -482,4 +483,13 @@ public class Utl {
return new BlockPos(player.getBlockPos());
}
+
+ public static double getPlayerReach(PlayerEntity player) {
+ // use the BLOCK_INTERACTION_RANGE attribute if available
+ if (player.getAttributeInstance(EntityAttributes.BLOCK_INTERACTION_RANGE) != null) {
+ return player.getAttributeValue(EntityAttributes.BLOCK_INTERACTION_RANGE);
+ }
+ // fallback to 5
+ return 5;
+ }
}
From e6eb46d7fa7ef5d9a26673b4cba75dd0bdc163e7 Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 17:41:08 -0500
Subject: [PATCH 04/12] lowercase locale
---
.../workflows/crowdin-download-workflow.yml | 114 ++++++++++++++++--
.github/workflows/crowdin-upload-workflow.yml | 2 +-
crowdin.yml | 2 +-
.../java/one/oth3r/sit/file/ServerConfig.java | 11 +-
.../sit-oth3r/lang/{en_US.json => en_us.json} | 0
5 files changed, 113 insertions(+), 16 deletions(-)
rename src/main/resources/assets/sit-oth3r/lang/{en_US.json => en_us.json} (100%)
diff --git a/.github/workflows/crowdin-download-workflow.yml b/.github/workflows/crowdin-download-workflow.yml
index ddaec73..d09141d 100644
--- a/.github/workflows/crowdin-download-workflow.yml
+++ b/.github/workflows/crowdin-download-workflow.yml
@@ -3,31 +3,123 @@ name: Crowdin Download Action
permissions:
contents: write
pull-requests: write
- actions: read
on:
workflow_dispatch:
+ inputs:
+ localization_branch_name:
+ description: 'The branch to create for the translations PR.'
+ required: true
+ default: 'crowdin/translations'
+ pull_request_base_branch:
+ description: 'The base branch for the pull request.'
+ required: true
+ default: 'dev'
jobs:
- crowdin:
+ download-translations:
runs-on: ubuntu-latest
steps:
- - name: Checkout
+ # Checkout the BASE branch first. The PR branch will be created later.
+ - name: Checkout Base Branch
uses: actions/checkout@v4
+ with:
+ ref: ${{ github.event.inputs.pull_request_base_branch }}
- - name: Synchronize with Crowdin
+ - name: Configure Git User
+ run: |
+ git config user.name "github-actions[bot]"
+ git config user.email "github-actions[bot]@users.noreply.github.com"
+
+ - name: Synchronize with Crowdin (Download Only)
uses: crowdin/github-action@v2
with:
upload_sources: false
upload_translations: false
download_translations: true
- localization_branch_name: crowdin_translations
-
- create_pull_request: true
- pull_request_title: 'Updated Crowdin translations'
- pull_request_body: 'New Crowdin pull request with translations'
- pull_request_base_branch_name: 'dev'
+ create_pull_request: false
+ localization_branch_name: ${{ github.event.inputs.localization_branch_name }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
- CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
\ No newline at end of file
+ CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
+
+ rename-files:
+ needs: download-translations
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout Localization Branch
+ uses: actions/checkout@v4
+ with:
+ ref: ${{ github.event.inputs.localization_branch_name }}
+
+ - name: Configure Git User
+ run: |
+ git config user.name "github-actions[bot]"
+ git config user.email "github-actions[bot]@users.noreply.github.com"
+
+ - name: Rename JSON Files to Lowercase
+ env:
+ TARGET_DIR: "common/src/main/resources/assets/directionhud/lang/"
+ run: |
+ echo "Starting renaming process for JSON files within $TARGET_DIR..."
+ if [ ! -d "$TARGET_DIR" ]; then
+ echo "Warning: Target directory '$TARGET_DIR' does not exist. Skipping rename."
+ exit 0
+ fi
+ find "$TARGET_DIR" -type f -name '*[A-Z]*.json' | while IFS= read -r file; do
+ original_path="$file"
+ dir_name=$(dirname "$original_path")
+ base_name=$(basename "$original_path")
+ new_base_name=$(echo "$base_name" | tr '[:upper:]' '[:lower:]')
+ new_path="$dir_name/$new_base_name"
+ if [ "$original_path" != "$new_path" ]; then
+ if [ -e "$new_path" ] && [ ! "$(readlink -f "$original_path")" = "$(readlink -f "$new_path")" ]; then
+ echo "::warning file=$original_path::Cannot rename '$original_path' to '$new_path' because it already exists. Skipping."
+ else
+ git mv "$original_path" "$new_path"
+ fi
+ fi
+ done
+ echo "JSON file renaming complete."
+
+ - name: Commit Renamed Files
+ run: |
+ echo "Committing renamed files..."
+ git add -A
+ git commit -m "Rename JSON translation files to lowercase for consistency"
+ echo "Renames committed."
+
+ - name: Push Changes to Localization Branch
+ run: |
+ echo "Pushing combined changes to ${{ github.event.inputs.localization_branch_name }}..."
+ git push origin ${{ github.event.inputs.localization_branch_name }}
+
+ create-pr:
+ needs: [ download-translations, rename-files ]
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout branch
+ uses: actions/checkout@v4
+ with:
+ ref: ${{ github.event.inputs.localization_branch_name }}
+
+ - name: Set up Git config
+ run: |
+ git config user.name "github-actions"
+ git config user.email "github-actions@github.com"
+
+ - name: Install GitHub CLI
+ run: sudo apt-get install gh -y
+
+ - name: Authenticate GitHub CLI
+ run: echo "${{ secrets.GITHUB_TOKEN }}" | gh auth login --with-token
+
+ - name: Create Pull Request
+ run: |
+ gh pr create \
+ --title "Update translations from Crowdin" \
+ --body "This PR includes:\n- New translations from Crowdin\n- Renamed translation files to lowercase" \
+ --head ${{ github.event.inputs.localization_branch_name }} \
+ --base ${{ github.event.inputs.pull_request_base_branch }} \
+ --label "localization"
\ No newline at end of file
diff --git a/.github/workflows/crowdin-upload-workflow.yml b/.github/workflows/crowdin-upload-workflow.yml
index fe9194b..5516194 100644
--- a/.github/workflows/crowdin-upload-workflow.yml
+++ b/.github/workflows/crowdin-upload-workflow.yml
@@ -2,7 +2,7 @@ name: Crowdin Upload Action
on:
push:
- paths: [ "src/main/resources/assets/sit-oth3r/lang/en_US.json"]
+ paths: [ "src/main/resources/assets/sit-oth3r/lang/en_us.json"]
branches: [ dev ]
workflow_dispatch:
diff --git a/crowdin.yml b/crowdin.yml
index 352acbc..bb81024 100644
--- a/crowdin.yml
+++ b/crowdin.yml
@@ -6,7 +6,7 @@
files: [
{
- "source": "src/main/resources/assets/sit-oth3r/lang/en_US.json",
+ "source": "src/main/resources/assets/sit-oth3r/lang/en_us.json",
"translation": "src/main/resources/assets/sit-oth3r/lang/%locale_with_underscore%.json",
}
]
\ No newline at end of file
diff --git a/src/main/java/one/oth3r/sit/file/ServerConfig.java b/src/main/java/one/oth3r/sit/file/ServerConfig.java
index e4bcccf..f4cd25e 100644
--- a/src/main/java/one/oth3r/sit/file/ServerConfig.java
+++ b/src/main/java/one/oth3r/sit/file/ServerConfig.java
@@ -27,12 +27,12 @@ import java.util.stream.Collectors;
public class ServerConfig implements CustomFile {
@SerializedName("version")
- private Double version = 2.2;
+ private Double version = 2.3;
@SerializedName("lang")
- private String lang = "en_US";
+ private String lang = "en_us";
@SerializedName("lang-options")
- private final String langOptions = "en_US, it_IT, pt_BR, tr_TR, zh_TW, zh_CH, de_DE";
+ private final String langOptions = "en_us, it_it, pt_br, tr_tr, zh_tw, zh_ch, de_de";
@SerializedName("keep-active")
private Boolean keepActive = true;
@@ -276,6 +276,11 @@ public class ServerConfig implements CustomFile {
if (version >= 2.0 && version <= 2.1) {
version = 2.2;
}
+ if (version == 2.2) {
+ // make sure that the lang is all lowercase
+ version = 2.3;
+ this.lang = this.lang.substring(0,3)+this.lang.substring(3).toLowerCase();
+ }
}
@Override
diff --git a/src/main/resources/assets/sit-oth3r/lang/en_US.json b/src/main/resources/assets/sit-oth3r/lang/en_us.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/en_US.json
rename to src/main/resources/assets/sit-oth3r/lang/en_us.json
From dea8b5af3ebf3a5eca4c03d485d92e288630010d Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 17:48:17 -0500
Subject: [PATCH 05/12] fix target directory
---
.github/workflows/crowdin-download-workflow.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/crowdin-download-workflow.yml b/.github/workflows/crowdin-download-workflow.yml
index d09141d..b769f5f 100644
--- a/.github/workflows/crowdin-download-workflow.yml
+++ b/.github/workflows/crowdin-download-workflow.yml
@@ -60,7 +60,7 @@ jobs:
- name: Rename JSON Files to Lowercase
env:
- TARGET_DIR: "common/src/main/resources/assets/directionhud/lang/"
+ TARGET_DIR: "src/main/resources/assets/sit-oth3r/lang/"
run: |
echo "Starting renaming process for JSON files within $TARGET_DIR..."
if [ ! -d "$TARGET_DIR" ]; then
From 235a0a61dbd5f6fd83dc8b92d1d63dfd33b82e7f Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Sat, 14 Jun 2025 22:49:21 +0000
Subject: [PATCH 06/12] New Crowdin translations by GitHub Action
---
src/main/resources/assets/sit-oth3r/lang/de_DE.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/es_ES.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/fr_FR.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/it_IT.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/pl_PL.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/pt_BR.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/pt_PT.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/ru_RU.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/tr_TR.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/zh_CN.json | 5 -----
src/main/resources/assets/sit-oth3r/lang/zh_TW.json | 5 -----
11 files changed, 55 deletions(-)
diff --git a/src/main/resources/assets/sit-oth3r/lang/de_DE.json b/src/main/resources/assets/sit-oth3r/lang/de_DE.json
index f0abba5..bc70ce4 100644
--- a/src/main/resources/assets/sit-oth3r/lang/de_DE.json
+++ b/src/main/resources/assets/sit-oth3r/lang/de_DE.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Sitzen",
"key.sit!.config": "Konfiguration öffnen",
"sit!.screen.config": "Sit! Konfiguration",
- "sit!.gui.button.file": "Datei öffnen",
- "sit!.gui.button.folder": "Ordner öffnen",
- "sit!.gui.button.reset": "Zurücksetzen",
"sit!.gui.button.issues": "Probleme",
"sit!.gui.button.donate": "Spenden",
- "sit!.gui.button.revert": "Änderungen rückgängig machen",
- "sit!.gui.button.save": "Speichern und schließen",
"sit!.gui.button.website": "Website",
"sit!.console.connected": "Verbunden mit Sit! Server: %s",
"sit!.console.player_settings": "Benutzerdefinierte Sitzungseinstellungen von %s erhalten!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/es_ES.json b/src/main/resources/assets/sit-oth3r/lang/es_ES.json
index 4717b63..5edca97 100644
--- a/src/main/resources/assets/sit-oth3r/lang/es_ES.json
+++ b/src/main/resources/assets/sit-oth3r/lang/es_ES.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Sentarse",
"key.sit!.config": "Abrir configuración",
"sit!.screen.config": "Configuracion de Sit!",
- "sit!.gui.button.file": "Abrir Archivo",
- "sit!.gui.button.folder": "Abrir Carpeta",
- "sit!.gui.button.reset": "Reiniciar",
"sit!.gui.button.issues": "Problemas",
"sit!.gui.button.donate": "Donar",
- "sit!.gui.button.revert": "Revertir cambios",
- "sit!.gui.button.save": "Guardar y salir",
"sit!.gui.button.website": "Sitio web ",
"sit!.console.player_settings": "¡Se recibió configuraciones personalizadas dé %s!",
"modmenu.descriptionTranslation.sit-oth3r": "¡Añade la capacidad de sentarse a Minecraft! Configuración extensa para restricciones de mano y bloques sentables.\n ¡Los jugadores pueden tener su propia configuración cuando usan Sit! del lado del cliente en un servidor!"
diff --git a/src/main/resources/assets/sit-oth3r/lang/fr_FR.json b/src/main/resources/assets/sit-oth3r/lang/fr_FR.json
index 4c0a8cb..58935b5 100644
--- a/src/main/resources/assets/sit-oth3r/lang/fr_FR.json
+++ b/src/main/resources/assets/sit-oth3r/lang/fr_FR.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "S'asseoir",
"key.sit!.config": "Ouvrir la configuration",
"sit!.screen.config": "Sit! Config",
- "sit!.gui.button.file": "Ouvrir le fichier",
- "sit!.gui.button.folder": "Ouvrir le dossier",
- "sit!.gui.button.reset": "Restaurer",
"sit!.gui.button.issues": "Problèmes",
"sit!.gui.button.donate": "Faire un don",
- "sit!.gui.button.revert": "Annuler les modifications",
- "sit!.gui.button.save": "Enregistrer et fermer",
"sit!.gui.button.website": "Site web",
"sit!.console.connected": "Connecté au serveur Sit! : %s",
"sit!.console.player_settings": "Reçu les paramètres de séance personnalisés de %s!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/it_IT.json b/src/main/resources/assets/sit-oth3r/lang/it_IT.json
index 68ef576..00af775 100644
--- a/src/main/resources/assets/sit-oth3r/lang/it_IT.json
+++ b/src/main/resources/assets/sit-oth3r/lang/it_IT.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Siediti",
"key.sit!.config": "Apri Impostazioni",
"sit!.screen.config": "Impostazioni Sit!",
- "sit!.gui.button.file": "Apri File",
- "sit!.gui.button.folder": "Apri Cartella",
- "sit!.gui.button.reset": "Resetta",
"sit!.gui.button.issues": "Problemi",
"sit!.gui.button.donate": "Dona",
- "sit!.gui.button.revert": "Annulla i Cambiamenti",
- "sit!.gui.button.save": "Salva ed Esci",
"sit!.gui.button.website": "Sito Web",
"sit!.console.connected": "Connesso al server Sit!: %s",
"sit!.console.player_settings": "Ricevute impostazioni custom da %s!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/pl_PL.json b/src/main/resources/assets/sit-oth3r/lang/pl_PL.json
index 4319acb..435432e 100644
--- a/src/main/resources/assets/sit-oth3r/lang/pl_PL.json
+++ b/src/main/resources/assets/sit-oth3r/lang/pl_PL.json
@@ -44,12 +44,7 @@
"key.sit!.toggle": "Przełącz możliwość siadania",
"key.sit!.config": "Otwórz ustawienia",
"sit!.screen.config": "Konfiguracja Sit!",
- "sit!.gui.button.file": "Otwórz plik",
- "sit!.gui.button.folder": "Otwórz folder",
- "sit!.gui.button.reset": "Reset",
"sit!.gui.button.donate": "Wesprzyj",
- "sit!.gui.button.revert": "Cofnij zmiany",
- "sit!.gui.button.save": "Zapisz i zamknij",
"sit!.gui.button.website": "Strona",
"sit!.console.connected": "Połączono z serwerem wspierającym Sit!: %s",
"sit!.console.player_settings": "Otrzymano niestandardowe ustawienia z: %s!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/pt_BR.json b/src/main/resources/assets/sit-oth3r/lang/pt_BR.json
index 986ada9..0977922 100644
--- a/src/main/resources/assets/sit-oth3r/lang/pt_BR.json
+++ b/src/main/resources/assets/sit-oth3r/lang/pt_BR.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Sentar",
"key.sit!.config": "Abrir Configuração",
"sit!.screen.config": "Configuração do Sit!",
- "sit!.gui.button.file": "Abrir Arquivo",
- "sit!.gui.button.folder": "Abrir Pasta",
- "sit!.gui.button.reset": "Reiniciar",
"sit!.gui.button.issues": "Problemas",
"sit!.gui.button.donate": "Doar",
- "sit!.gui.button.revert": "Reverter Alterações",
- "sit!.gui.button.save": "Salvar e Fechar",
"sit!.gui.button.website": "Website",
"sit!.console.connected": "Conectado ao servidor Sit!: %s",
"sit!.console.player_settings": "Recebidas configurações de sentar personalizadas de %s!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/pt_PT.json b/src/main/resources/assets/sit-oth3r/lang/pt_PT.json
index 2dac62c..4846cb2 100644
--- a/src/main/resources/assets/sit-oth3r/lang/pt_PT.json
+++ b/src/main/resources/assets/sit-oth3r/lang/pt_PT.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Sentar",
"key.sit!.config": "Abrir definições",
"sit!.screen.config": "Definições do Sit!",
- "sit!.gui.button.file": "Abrir ficheiro",
- "sit!.gui.button.folder": "Abrir pasta",
- "sit!.gui.button.reset": "Repor",
"sit!.gui.button.issues": "Problemas",
"sit!.gui.button.donate": "Doar",
- "sit!.gui.button.revert": "Reverter alterações",
- "sit!.gui.button.save": "Guardar e fechar",
"sit!.gui.button.website": "Website",
"sit!.console.connected": "Conectado ao servidor Sit!: %s",
"sit!.console.player_settings": "Recebidas definições de sentar personalizadas de %s!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/ru_RU.json b/src/main/resources/assets/sit-oth3r/lang/ru_RU.json
index 9179bbe..e8966ed 100644
--- a/src/main/resources/assets/sit-oth3r/lang/ru_RU.json
+++ b/src/main/resources/assets/sit-oth3r/lang/ru_RU.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Сесть",
"key.sit!.config": "Открыть Конфигурацию",
"sit!.screen.config": "Конфигурация Sit!",
- "sit!.gui.button.file": "Открыть Файл",
- "sit!.gui.button.folder": "Открыть Папку",
- "sit!.gui.button.reset": "Сбросить",
"sit!.gui.button.issues": "Баг‑трекер",
"sit!.gui.button.donate": "Пожертвовать",
- "sit!.gui.button.revert": "Отменить Изменения",
- "sit!.gui.button.save": "Сохранить и Закрыть",
"sit!.gui.button.website": "Веб-сайт",
"sit!.console.connected": "Подключено к серверу Sit!: %s",
"sit!.console.player_settings": "Получены пользовательские настройки сидения от %s!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/tr_TR.json b/src/main/resources/assets/sit-oth3r/lang/tr_TR.json
index cd040d7..71b066a 100644
--- a/src/main/resources/assets/sit-oth3r/lang/tr_TR.json
+++ b/src/main/resources/assets/sit-oth3r/lang/tr_TR.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "Otur",
"key.sit!.config": "Ayarlandırmaları aç",
"sit!.screen.config": "Sit! Ayarlandırmaları",
- "sit!.gui.button.file": "Dosya Aç",
- "sit!.gui.button.folder": "Klasörü Aç",
- "sit!.gui.button.reset": "Sıfırla",
"sit!.gui.button.issues": "Sorunlar",
"sit!.gui.button.donate": "Bağış yap",
- "sit!.gui.button.revert": "Değişiklikleri Geri Al",
- "sit!.gui.button.save": "Kaydet ve Kapat",
"sit!.gui.button.website": "İnternet Sitesi",
"sit!.console.connected": "Sit! sunucusuna bağlanıldı: %s",
"sit!.console.player_settings": "Özel oturma ayarları %s alındı!",
diff --git a/src/main/resources/assets/sit-oth3r/lang/zh_CN.json b/src/main/resources/assets/sit-oth3r/lang/zh_CN.json
index 195ed43..64c58e3 100644
--- a/src/main/resources/assets/sit-oth3r/lang/zh_CN.json
+++ b/src/main/resources/assets/sit-oth3r/lang/zh_CN.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "坐下",
"key.sit!.config": "打开配置",
"sit!.screen.config": "Sit! 配置",
- "sit!.gui.button.file": "打开文件",
- "sit!.gui.button.folder": "打开文件夹",
- "sit!.gui.button.reset": "重置",
"sit!.gui.button.issues": "问题反馈",
"sit!.gui.button.donate": "赞助",
- "sit!.gui.button.revert": "还原更改",
- "sit!.gui.button.save": "保存并关闭",
"sit!.gui.button.website": "网站",
"sit!.console.connected": "已连接到 Sit! 服务器: %s",
"sit!.console.player_settings": "已从 %s 获得自定义坐下设置。",
diff --git a/src/main/resources/assets/sit-oth3r/lang/zh_TW.json b/src/main/resources/assets/sit-oth3r/lang/zh_TW.json
index d114075..9b235e8 100644
--- a/src/main/resources/assets/sit-oth3r/lang/zh_TW.json
+++ b/src/main/resources/assets/sit-oth3r/lang/zh_TW.json
@@ -68,13 +68,8 @@
"key.sit!.sit": "坐下",
"key.sit!.config": "開啟設定",
"sit!.screen.config": "坐下! 設定",
- "sit!.gui.button.file": "開啟檔案",
- "sit!.gui.button.folder": "開啟資料夾",
- "sit!.gui.button.reset": "重置",
"sit!.gui.button.issues": "問題",
"sit!.gui.button.donate": "贊助",
- "sit!.gui.button.revert": "還原變更",
- "sit!.gui.button.save": "儲存並關閉",
"sit!.gui.button.website": "網站",
"sit!.console.connected": "已連線至 Sit! 伺服器: %s",
"sit!.console.player_settings": "已從 %s 收到自訂坐下設定!",
From cfcf68f463b0f08f9a4c4c0fbbb125ad07e266a1 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Sat, 14 Jun 2025 22:49:33 +0000
Subject: [PATCH 07/12] Rename JSON translation files to lowercase for
consistency
---
.../resources/assets/sit-oth3r/lang/{ar_SA.json => ar_sa.json} | 0
.../resources/assets/sit-oth3r/lang/{bg_BG.json => bg_bg.json} | 0
.../resources/assets/sit-oth3r/lang/{cs_CZ.json => cs_cz.json} | 0
.../resources/assets/sit-oth3r/lang/{da_DK.json => da_dk.json} | 0
.../resources/assets/sit-oth3r/lang/{de_DE.json => de_de.json} | 0
.../resources/assets/sit-oth3r/lang/{el_GR.json => el_gr.json} | 0
.../resources/assets/sit-oth3r/lang/{es_ES.json => es_es.json} | 0
.../resources/assets/sit-oth3r/lang/{es_MX.json => es_mx.json} | 0
.../resources/assets/sit-oth3r/lang/{fi_FI.json => fi_fi.json} | 0
.../resources/assets/sit-oth3r/lang/{fr_FR.json => fr_fr.json} | 0
.../resources/assets/sit-oth3r/lang/{ga_IE.json => ga_ie.json} | 0
.../resources/assets/sit-oth3r/lang/{he_IL.json => he_il.json} | 0
.../resources/assets/sit-oth3r/lang/{hu_HU.json => hu_hu.json} | 0
.../resources/assets/sit-oth3r/lang/{it_IT.json => it_it.json} | 0
.../resources/assets/sit-oth3r/lang/{ja_JP.json => ja_jp.json} | 0
.../resources/assets/sit-oth3r/lang/{ko_KR.json => ko_kr.json} | 0
.../resources/assets/sit-oth3r/lang/{nl_NL.json => nl_nl.json} | 0
.../resources/assets/sit-oth3r/lang/{pl_PL.json => pl_pl.json} | 0
.../resources/assets/sit-oth3r/lang/{pt_BR.json => pt_br.json} | 0
.../resources/assets/sit-oth3r/lang/{pt_PT.json => pt_pt.json} | 0
.../resources/assets/sit-oth3r/lang/{ro_RO.json => ro_ro.json} | 0
.../resources/assets/sit-oth3r/lang/{ru_RU.json => ru_ru.json} | 0
.../resources/assets/sit-oth3r/lang/{sr_SP.json => sr_sp.json} | 0
.../resources/assets/sit-oth3r/lang/{sv_SE.json => sv_se.json} | 0
.../resources/assets/sit-oth3r/lang/{tr_TR.json => tr_tr.json} | 0
.../resources/assets/sit-oth3r/lang/{uk_UA.json => uk_ua.json} | 0
.../resources/assets/sit-oth3r/lang/{vi_VN.json => vi_vn.json} | 0
.../resources/assets/sit-oth3r/lang/{zh_CN.json => zh_cn.json} | 0
.../resources/assets/sit-oth3r/lang/{zh_TW.json => zh_tw.json} | 0
29 files changed, 0 insertions(+), 0 deletions(-)
rename src/main/resources/assets/sit-oth3r/lang/{ar_SA.json => ar_sa.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{bg_BG.json => bg_bg.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{cs_CZ.json => cs_cz.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{da_DK.json => da_dk.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{de_DE.json => de_de.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{el_GR.json => el_gr.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{es_ES.json => es_es.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{es_MX.json => es_mx.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{fi_FI.json => fi_fi.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{fr_FR.json => fr_fr.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{ga_IE.json => ga_ie.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{he_IL.json => he_il.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{hu_HU.json => hu_hu.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{it_IT.json => it_it.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{ja_JP.json => ja_jp.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{ko_KR.json => ko_kr.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{nl_NL.json => nl_nl.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{pl_PL.json => pl_pl.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{pt_BR.json => pt_br.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{pt_PT.json => pt_pt.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{ro_RO.json => ro_ro.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{ru_RU.json => ru_ru.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{sr_SP.json => sr_sp.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{sv_SE.json => sv_se.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{tr_TR.json => tr_tr.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{uk_UA.json => uk_ua.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{vi_VN.json => vi_vn.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{zh_CN.json => zh_cn.json} (100%)
rename src/main/resources/assets/sit-oth3r/lang/{zh_TW.json => zh_tw.json} (100%)
diff --git a/src/main/resources/assets/sit-oth3r/lang/ar_SA.json b/src/main/resources/assets/sit-oth3r/lang/ar_sa.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/ar_SA.json
rename to src/main/resources/assets/sit-oth3r/lang/ar_sa.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/bg_BG.json b/src/main/resources/assets/sit-oth3r/lang/bg_bg.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/bg_BG.json
rename to src/main/resources/assets/sit-oth3r/lang/bg_bg.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/cs_CZ.json b/src/main/resources/assets/sit-oth3r/lang/cs_cz.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/cs_CZ.json
rename to src/main/resources/assets/sit-oth3r/lang/cs_cz.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/da_DK.json b/src/main/resources/assets/sit-oth3r/lang/da_dk.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/da_DK.json
rename to src/main/resources/assets/sit-oth3r/lang/da_dk.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/de_DE.json b/src/main/resources/assets/sit-oth3r/lang/de_de.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/de_DE.json
rename to src/main/resources/assets/sit-oth3r/lang/de_de.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/el_GR.json b/src/main/resources/assets/sit-oth3r/lang/el_gr.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/el_GR.json
rename to src/main/resources/assets/sit-oth3r/lang/el_gr.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/es_ES.json b/src/main/resources/assets/sit-oth3r/lang/es_es.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/es_ES.json
rename to src/main/resources/assets/sit-oth3r/lang/es_es.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/es_MX.json b/src/main/resources/assets/sit-oth3r/lang/es_mx.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/es_MX.json
rename to src/main/resources/assets/sit-oth3r/lang/es_mx.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/fi_FI.json b/src/main/resources/assets/sit-oth3r/lang/fi_fi.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/fi_FI.json
rename to src/main/resources/assets/sit-oth3r/lang/fi_fi.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/fr_FR.json b/src/main/resources/assets/sit-oth3r/lang/fr_fr.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/fr_FR.json
rename to src/main/resources/assets/sit-oth3r/lang/fr_fr.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/ga_IE.json b/src/main/resources/assets/sit-oth3r/lang/ga_ie.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/ga_IE.json
rename to src/main/resources/assets/sit-oth3r/lang/ga_ie.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/he_IL.json b/src/main/resources/assets/sit-oth3r/lang/he_il.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/he_IL.json
rename to src/main/resources/assets/sit-oth3r/lang/he_il.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/hu_HU.json b/src/main/resources/assets/sit-oth3r/lang/hu_hu.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/hu_HU.json
rename to src/main/resources/assets/sit-oth3r/lang/hu_hu.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/it_IT.json b/src/main/resources/assets/sit-oth3r/lang/it_it.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/it_IT.json
rename to src/main/resources/assets/sit-oth3r/lang/it_it.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/ja_JP.json b/src/main/resources/assets/sit-oth3r/lang/ja_jp.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/ja_JP.json
rename to src/main/resources/assets/sit-oth3r/lang/ja_jp.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/ko_KR.json b/src/main/resources/assets/sit-oth3r/lang/ko_kr.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/ko_KR.json
rename to src/main/resources/assets/sit-oth3r/lang/ko_kr.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/nl_NL.json b/src/main/resources/assets/sit-oth3r/lang/nl_nl.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/nl_NL.json
rename to src/main/resources/assets/sit-oth3r/lang/nl_nl.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/pl_PL.json b/src/main/resources/assets/sit-oth3r/lang/pl_pl.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/pl_PL.json
rename to src/main/resources/assets/sit-oth3r/lang/pl_pl.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/pt_BR.json b/src/main/resources/assets/sit-oth3r/lang/pt_br.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/pt_BR.json
rename to src/main/resources/assets/sit-oth3r/lang/pt_br.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/pt_PT.json b/src/main/resources/assets/sit-oth3r/lang/pt_pt.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/pt_PT.json
rename to src/main/resources/assets/sit-oth3r/lang/pt_pt.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/ro_RO.json b/src/main/resources/assets/sit-oth3r/lang/ro_ro.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/ro_RO.json
rename to src/main/resources/assets/sit-oth3r/lang/ro_ro.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/ru_RU.json b/src/main/resources/assets/sit-oth3r/lang/ru_ru.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/ru_RU.json
rename to src/main/resources/assets/sit-oth3r/lang/ru_ru.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/sr_SP.json b/src/main/resources/assets/sit-oth3r/lang/sr_sp.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/sr_SP.json
rename to src/main/resources/assets/sit-oth3r/lang/sr_sp.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/sv_SE.json b/src/main/resources/assets/sit-oth3r/lang/sv_se.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/sv_SE.json
rename to src/main/resources/assets/sit-oth3r/lang/sv_se.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/tr_TR.json b/src/main/resources/assets/sit-oth3r/lang/tr_tr.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/tr_TR.json
rename to src/main/resources/assets/sit-oth3r/lang/tr_tr.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/uk_UA.json b/src/main/resources/assets/sit-oth3r/lang/uk_ua.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/uk_UA.json
rename to src/main/resources/assets/sit-oth3r/lang/uk_ua.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/vi_VN.json b/src/main/resources/assets/sit-oth3r/lang/vi_vn.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/vi_VN.json
rename to src/main/resources/assets/sit-oth3r/lang/vi_vn.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/zh_CN.json b/src/main/resources/assets/sit-oth3r/lang/zh_cn.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/zh_CN.json
rename to src/main/resources/assets/sit-oth3r/lang/zh_cn.json
diff --git a/src/main/resources/assets/sit-oth3r/lang/zh_TW.json b/src/main/resources/assets/sit-oth3r/lang/zh_tw.json
similarity index 100%
rename from src/main/resources/assets/sit-oth3r/lang/zh_TW.json
rename to src/main/resources/assets/sit-oth3r/lang/zh_tw.json
From 2eb69521446ae3f867313417044b319bbabaa85e Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 18:47:51 -0500
Subject: [PATCH 08/12] fix not(!) tag check logic
---
.../java/one/oth3r/sit/file/CustomBlock.java | 24 ++++++++++++-------
.../java/one/oth3r/sit/file/CustomItem.java | 21 +++++++++-------
2 files changed, 29 insertions(+), 16 deletions(-)
diff --git a/src/main/java/one/oth3r/sit/file/CustomBlock.java b/src/main/java/one/oth3r/sit/file/CustomBlock.java
index 0f17147..4940f70 100644
--- a/src/main/java/one/oth3r/sit/file/CustomBlock.java
+++ b/src/main/java/one/oth3r/sit/file/CustomBlock.java
@@ -91,19 +91,27 @@ public class CustomBlock {
}
// a boolean to check if one of the blocks are in a filtered tag
- boolean tagCheck = false;
+ // & a switch for if there is only not(!) tags
+ boolean tagCheck = false, hasPositiveTags = false;
- // for all the entered tags
for (String tag : blockTags) {
// substring to remove # and if needed, !
- // if there is a math for the NOT(!) tag, return false
- if (tag.startsWith("!") && blockState.isIn(TagKey.of(Registries.BLOCK.getKey(), Identifier.of(tag.substring(2))))) return false;
- // if there is a match, return true
- if (blockState.isIn(TagKey.of(Registries.BLOCK.getKey(), Identifier.tryParse(tag.substring(1))))) tagCheck = true;
+ if (tag.startsWith("!")) {
+ // if there is a match for the NOT(!) tag, return false
+ Identifier id = Identifier.tryParse(tag.substring(2));
+ if (id != null && blockState.isIn(TagKey.of(Registries.BLOCK.getKey(), id))) return false;
+ } else {
+ // flip the hasPositiveTags boolean
+ hasPositiveTags = true;
+ // if there is a match, return true
+ Identifier id = Identifier.tryParse(tag.substring(1));
+ if (id != null && blockState.isIn(TagKey.of(Registries.BLOCK.getKey(), id))) tagCheck = true;
+ }
}
- // not returning true in the loop because there might be a (!) not tag that the block might fall into, after the block was already in another tag
- return tagCheck;
+ // if there were any required tags, return whether we matched one
+ // if there were only not(!) tags, and we didn't violate any, return true
+ return hasPositiveTags? tagCheck : true;
}
@Override
diff --git a/src/main/java/one/oth3r/sit/file/CustomItem.java b/src/main/java/one/oth3r/sit/file/CustomItem.java
index 325fe19..4e4680d 100644
--- a/src/main/java/one/oth3r/sit/file/CustomItem.java
+++ b/src/main/java/one/oth3r/sit/file/CustomItem.java
@@ -51,22 +51,27 @@ public class CustomItem {
}
// a boolean to check if one of the items are in a filtered tag
- boolean tagCheck = false;
+ // & a switch for if there is only not(!) tags
+ boolean tagCheck = false, hasPositiveTags = false;
- // check the custom item tags
for (String tag : itemTags) {
// substring to remove # and if needed, "!"
- // if a NOT tag
if (tag.startsWith("!")) {
// if there is a math for the NOT(!) tag, return false
- if (itemStack.isIn(TagKey.of(Registries.ITEM.getKey(), Identifier.of(tag.substring(2))))) return false;
+ Identifier id = Identifier.tryParse(tag.substring(2));
+ if (id != null && itemStack.isIn(TagKey.of(Registries.ITEM.getKey(), id))) return false;
+ } else {
+ // flip the hasPositiveTags boolean
+ hasPositiveTags = true;
+ // else (normal tag), if there is a match, set tagCheck to true
+ Identifier id = Identifier.tryParse(tag.substring(1));
+ if (id != null && itemStack.isIn(TagKey.of(Registries.ITEM.getKey(), id))) tagCheck = true;
}
- // else (normal tag), if there is a match, set tagCheck to true
- else if (itemStack.isIn(TagKey.of(Registries.ITEM.getKey(), Identifier.of(tag.substring(1))))) tagCheck = true;
}
- // not returning true in the loop because there might be a (!) not tag that the item might fall into, after the item was already in another tag
- return tagCheck;
+ // if there were any required tags, return whether we matched one
+ // if there were only not(!) tags, and we didn't violate any, return true
+ return hasPositiveTags? tagCheck : true;
}
@Override
From c675a24e94e5ccf8cdd7521e3f5dec6639b6043b Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 18:52:00 -0500
Subject: [PATCH 09/12] v1.2.4.2+1.21.5
---
changelog.md | 5 +++++
gradle.properties | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/changelog.md b/changelog.md
index f7e4244..1c47516 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,8 @@
+# v1.2.4.2
+* fixed language file not loading (reverted uppercase locales)
+* fixed block checking having a hardcoded player reach - now uses player reach
+* fixed block and item tag check logic for cases with only not(!) tags
+
# v1.2.4.1
* removed unused assets
* enabled file logging for easier debugging
diff --git a/gradle.properties b/gradle.properties
index 140b7fa..4fb1aeb 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -13,7 +13,7 @@ yarn_mappings=1.21.5+build.1
loader_version=0.16.14
# Mod Properties
-mod_version=1.2.4.1+1.21.5
+mod_version=1.2.4.2+1.21.5
maven_group=one.oth3r
file_name=sit!
From 02a7157a931b37dc3a1819371ec031e4e2ea980f Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 18:56:08 -0500
Subject: [PATCH 10/12] add otterlib max version as the beta changes a lot of
stuff
---
build.gradle | 1 +
gradle.properties | 1 +
src/main/resources/fabric.mod.json | 2 +-
3 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/build.gradle b/build.gradle
index 23b4044..bc9db2d 100644
--- a/build.gradle
+++ b/build.gradle
@@ -43,6 +43,7 @@ processResources {
min_minecraft_version : min_minecraft_version,
max_minecraft_version : max_minecraft_version,
otterlib_version : otterlib_version,
+ otterlib_max_version : otterlib_max_version,
loader_version : loader_version
]
diff --git a/gradle.properties b/gradle.properties
index 4fb1aeb..25bdb46 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -21,3 +21,4 @@ file_name=sit!
fabric_version=0.124.0+1.21.5
modmenu_version=14.0.0-rc.2
otterlib_version=0.1.2.1+1.21.5-fabric
+otterlib_max_version=0.2.0.0+1.21.5-fabric
diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json
index 2359a00..a7441d1 100644
--- a/src/main/resources/fabric.mod.json
+++ b/src/main/resources/fabric.mod.json
@@ -29,7 +29,7 @@
"fabricloader": ">=0.14.21",
"minecraft": ">=${min_minecraft_version} <=${max_minecraft_version}",
"fabric": "*",
- "otterlib": ">=${otterlib_version}"
+ "otterlib": ">=${otterlib_version} <${otterlib_max_version}"
},
"suggests": {
"modmenu": "*"
From 82c4b375d53d105ff79b80b6823aa9ce62954551 Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 18:57:37 -0500
Subject: [PATCH 11/12] v1.2.4.3
---
changelog.md | 3 +++
gradle.properties | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/changelog.md b/changelog.md
index 1c47516..2b7e70c 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,6 @@
+# v1.2.4.3
+* added a max OtterLib version as the beta will have breaking changes between major versions
+
# v1.2.4.2
* fixed language file not loading (reverted uppercase locales)
* fixed block checking having a hardcoded player reach - now uses player reach
diff --git a/gradle.properties b/gradle.properties
index 25bdb46..2c59928 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -13,7 +13,7 @@ yarn_mappings=1.21.5+build.1
loader_version=0.16.14
# Mod Properties
-mod_version=1.2.4.2+1.21.5
+mod_version=1.2.4.3+1.21.5
maven_group=one.oth3r
file_name=sit!
From 53dd704f801bd6bb25caf6829e1f1e11aee8e085 Mon Sep 17 00:00:00 2001
From: Oth3r <68134921+Oth3r@users.noreply.github.com>
Date: Sat, 14 Jun 2025 19:02:31 -0500
Subject: [PATCH 12/12] 1.21.1 changes
---
src/main/java/one/oth3r/sit/utl/Utl.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/main/java/one/oth3r/sit/utl/Utl.java b/src/main/java/one/oth3r/sit/utl/Utl.java
index 8a90f07..9993ff1 100644
--- a/src/main/java/one/oth3r/sit/utl/Utl.java
+++ b/src/main/java/one/oth3r/sit/utl/Utl.java
@@ -485,8 +485,8 @@ public class Utl {
public static double getPlayerReach(PlayerEntity player) {
// use the BLOCK_INTERACTION_RANGE attribute if available
- if (player.getAttributeInstance(EntityAttributes.BLOCK_INTERACTION_RANGE) != null) {
- return player.getAttributeValue(EntityAttributes.BLOCK_INTERACTION_RANGE);
+ if (player.getAttributeInstance(EntityAttributes.PLAYER_BLOCK_INTERACTION_RANGE) != null) {
+ return player.getAttributeValue(EntityAttributes.PLAYER_BLOCK_INTERACTION_RANGE);
}
// fallback to 5
return 5;