Fix join gamemode enforcement in Lobby Systems v1.5.2

This commit is contained in:
Darto KLoning
2026-09-06 23:31:07 +07:00
parent b24e031b05
commit abc1942ecd
6 changed files with 173 additions and 102 deletions
+27 -9
View File
@@ -16,6 +16,7 @@ set "LOCAL_GRADLE_DIR=%CD%\.gradle-local"
set "GRADLE_VERSION=9.5.1"
set "GRADLE_HOME=%LOCAL_GRADLE_DIR%\gradle-%GRADLE_VERSION%"
set "GRADLE_BIN=%GRADLE_HOME%\bin\gradle.bat"
set "GIT_ONLY=0"
set "MOD_VERSION="
set "MINECRAFT_VERSION="
@@ -36,6 +37,8 @@ if not defined MOD_VERSION set "MOD_VERSION=unknown"
if not defined MINECRAFT_VERSION set "MINECRAFT_VERSION=26.2"
if not defined MAVEN_GROUP set "MAVEN_GROUP=id.dartokloning"
set "JAR_PATH=%CD%\build\libs\lobby-systems-%MOD_VERSION%.jar"
echo ============================================
echo Lobby Systems - Fabric %MINECRAFT_VERSION% Build
echo Version: %MOD_VERSION%
@@ -43,6 +46,19 @@ echo Namespace: id.dartokloning.lobbysystems
echo Mod ID: dartokloning
echo ============================================
REM release.bat selalu melakukan build ulang melalui --build-only.
if "%BUILD_ONLY%"=="0" if exist "%JAR_PATH%" (
echo.
echo [INFO] JAR untuk v%MOD_VERSION% sudah pernah dibuild:
echo %JAR_PATH%
echo.
choice /C CG /N /M "[C] Compile ulang / [G] Git saja: "
if errorlevel 2 (
set "GIT_ONLY=1"
goto :git_integration
)
)
where java.exe >nul 2>&1
if errorlevel 1 (
echo [ERROR] Java tidak ditemukan di PATH.
@@ -127,7 +143,6 @@ echo ============================================
echo BUILD SUCCESS
echo ============================================
set "JAR_PATH=%CD%\build\libs\lobby-systems-%MOD_VERSION%.jar"
if exist "%JAR_PATH%" (
echo JAR:
echo %JAR_PATH%
@@ -136,7 +151,6 @@ if exist "%JAR_PATH%" (
echo %JAR_PATH%
)
REM release.bat memakai mode ini supaya prompt Git tidak muncul dua kali.
if "%BUILD_ONLY%"=="1" exit /b 0
echo.
@@ -149,12 +163,12 @@ echo.
echo ============================================
echo Git Integration
echo ============================================
if "%GIT_ONLY%"=="1" echo [INFO] Mode Git-only: build dilewati karena JAR v%MOD_VERSION% sudah tersedia.
where git.exe >nul 2>&1
if errorlevel 1 (
echo [ERROR] Git tidak ditemukan di PATH.
echo Build tetap berhasil, tetapi Git tidak dapat dijalankan.
goto :success
goto :git_failed
)
git rev-parse --is-inside-work-tree >nul 2>&1
@@ -166,7 +180,7 @@ if errorlevel 1 (
echo git branch -M main
echo git remote add origin ^<URL-GITEA^>
echo.
goto :success
goto :git_failed
)
echo [INFO] Memeriksa perubahan...
@@ -202,7 +216,7 @@ if defined HAS_CHANGES (
)
) else (
echo [INFO] Tidak ada perubahan source yang perlu di-commit.
echo [INFO] Akan mencoba push commit yang sudah ada.
echo [INFO] Akan mencoba push commit lokal yang belum terkirim, jika ada.
)
set "CURRENT_BRANCH="
@@ -238,7 +252,7 @@ for /f "delims=" %%F in ('git status --porcelain') do (
echo !LINE! | findstr /I /C:"compile.bat" /C:"compile.sh" /C:"release.bat" /C:"release.sh" >nul && set "HAS_SCRIPT_CHANGE=1"
echo !LINE! | findstr /I /C:"README.md" /C:"LICENSE" >nul && set "HAS_DOC_CHANGE=1"
)
if defined HAS_SRC_CHANGE set "SUGGESTED_COMMIT=Update Lobby Systems v%MOD_VERSION%"
if defined HAS_SRC_CHANGE set "SUGGESTED_COMMIT=Fix join gamemode enforcement in Lobby Systems v%MOD_VERSION%"
if not defined HAS_SRC_CHANGE if defined HAS_SCRIPT_CHANGE set "SUGGESTED_COMMIT=Improve build and Git workflow"
if not defined HAS_SRC_CHANGE if not defined HAS_SCRIPT_CHANGE if defined HAS_DOC_CHANGE set "SUGGESTED_COMMIT=Update Lobby Systems documentation"
exit /b 0
@@ -304,9 +318,13 @@ echo ============================================
echo GIT FAILED
echo ============================================
echo.
echo [INFO] Build Lobby Systems tetap berhasil.
if "%GIT_ONLY%"=="1" (
echo [INFO] Build tidak dijalankan; JAR v%MOD_VERSION% yang sudah ada tetap aman.
) else (
echo [INFO] Build Lobby Systems tetap berhasil.
)
echo [INFO] Commit lokal tetap tersimpan.
echo [INFO] Anda bisa menjalankan compile.bat lagi dan memilih Y; jika tidak ada perubahan, script langsung mencoba push commit yang tertunda.
echo [INFO] Jalankan compile.bat lagi; jika JAR versi sama terdeteksi, pilih G untuk Git-only.
echo.
pause
exit /b 2