72 lines
2.8 KiB
Batchfile
72 lines
2.8 KiB
Batchfile
|
@echo off
|
|||
|
chcp 65001 >NUL
|
|||
|
cd /d %~dp0
|
|||
|
|
|||
|
set gamedir=🕹️cube-tube
|
|||
|
for /F %%a IN ('powershell -command "$([guid]::NewGuid().ToString().toUpper())"') DO (set newProductCode=%%a)
|
|||
|
for /F %%a IN ('powershell -command "$([guid]::NewGuid().ToString().toUpper())"') DO (set newPackageCode=%%a)
|
|||
|
|
|||
|
@setlocal ENABLEEXTENSIONS
|
|||
|
|
|||
|
@set version=0
|
|||
|
@for /F "tokens=*" %%A in (%gamedir%/metadata/game_metadata.txt) do @call :CheckForVersion "%%A"
|
|||
|
|
|||
|
cd .dragonruby
|
|||
|
|
|||
|
robocopy ../marketing-assets/AppIcon.appiconset ./dragonruby-ios.app/Assets.xcassets/AppIcon.appiconset /e
|
|||
|
robocopy ../marketing-assets/AppIcon.appiconset ./dragonruby-ios-simulator.app/Assets.xcassets/AppIcon.appiconset /e
|
|||
|
robocopy ../%gamedir% ./%gameid% /e
|
|||
|
|
|||
|
@echo on
|
|||
|
dragonruby-publish %* %gameid%
|
|||
|
@echo off
|
|||
|
rd /s /q %gameid%
|
|||
|
|
|||
|
cd builds
|
|||
|
|
|||
|
if exist ./%gameid%-windows-amd64.exe (
|
|||
|
if exist ../../installer/installer.vdproj (
|
|||
|
echo "Building windows installer..."
|
|||
|
for /F "tokens=* USEBACKQ" %%t IN (`findstr /c:"%version%" ..\..\installer\installer.vdproj`) do (SET OldVersion=%%t)
|
|||
|
if defined OldVersion (
|
|||
|
echo "version already the same"
|
|||
|
) else (
|
|||
|
echo "need to update version & product/package codes (%version%, %newProductCode%, %newPackageCode%)"
|
|||
|
powershell -Command "(Get-Content ../../installer/installer.vdproj) | Foreach-Object { $_ -replace '""""ProductCode"""" = """"8:\{.*\}""""$', '""""ProductCode"""" = """"8:{%newProductCode%}""""' -replace '""""PackageCode"""" = """"8:\{.*\}""""$', '""""PackageCode"""" = """"8:{%newPackageCode%}""""' -replace '""""ProductVersion"""" = """"8:.+""""$', '""""ProductVersion"""" = """"8:%version%""' } | Out-File -encoding UTF8 ../../installer/installer.vdproj"
|
|||
|
)
|
|||
|
call "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\devenv.exe" ..\..\installer\installer.sln /build Release
|
|||
|
) else (
|
|||
|
ECHO "no installer project?"
|
|||
|
ECHO ../../installer/installer.vdproj
|
|||
|
)
|
|||
|
) else (
|
|||
|
ECHO "no exe?"
|
|||
|
ECHO ./%gameid%-windows-amd64.exe
|
|||
|
)
|
|||
|
|
|||
|
if not exist ../../%gameid%.keystore (
|
|||
|
echo "no keystore, generating keys"
|
|||
|
keytool -genkey -v -keystore ../../%gameid%.keystore -alias %gameid% -keyalg RSA -keysize 2048 -validity 10000
|
|||
|
)
|
|||
|
if exist ./%gameid%-android.apk (
|
|||
|
echo "Signing apk..."
|
|||
|
call "C:\Program Files (x86)\Android\android-sdk\build-tools\32.0.0\apksigner.bat" sign -ks ../../%gameid%.keystore %gameid%-android.apk
|
|||
|
echo "Signing aab..."
|
|||
|
call jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore ../../%gameid%.keystore %gameid%-googleplay.aab %gameid%
|
|||
|
) else (
|
|||
|
ECHO "no apk?"
|
|||
|
ECHO ./%gameid%-android.apk
|
|||
|
)
|
|||
|
|
|||
|
ECHO "All done!"
|
|||
|
explorer.exe %cd%
|
|||
|
PAUSE
|
|||
|
@exit /b 0
|
|||
|
|
|||
|
:CheckForVersion
|
|||
|
@set _line=%~1
|
|||
|
@set _linePrefeix=%_line:~0,8%
|
|||
|
@if "%_linePrefeix%" equ "version=" (@set version="%_line:~8%")
|
|||
|
@set _linePrefeix=%_line:~0,7%
|
|||
|
@if "%_linePrefeix%" equ "gameid=" (@set gameid="%_line:~7%")
|
|||
|
@exit /b 0
|