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 1/9] 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 2/9] 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 3/9] 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 4/9] 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 5/9] 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 6/9] 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 7/9] 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 8/9] 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 9/9] 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!