Compare commits
6 commits
Author | SHA1 | Date | |
---|---|---|---|
fc0d35c609 | |||
863e75482b | |||
81c60b7a2a | |||
24d176ec53 | |||
3c1b0999c4 | |||
b7985070ff |
|
@ -1 +1 @@
|
|||
Subproject commit 7a5a15f0f24536e57f7577ddbb45f9b3a3fc23ea
|
||||
Subproject commit 57ccb75151e4133e18e64fe42f07e1a4a676026b
|
2
.gitmodules
vendored
|
@ -1,4 +1,4 @@
|
|||
[submodule ".dragonruby"]
|
||||
path = .dragonruby
|
||||
url = https://gitea.death.id.au/death.au/dragonruby-base.git
|
||||
url = ssh://git@forge.death.id.au:2222/death.au/dragonruby-base.git
|
||||
tag = 5.1
|
||||
|
|
Before ![]() (image error) Size: 209 KiB After ![]() (image error) Size: 209 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.8 KiB After ![]() (image error) Size: 1.8 KiB ![]() ![]() |
Before ![]() (image error) Size: 3.1 KiB After ![]() (image error) Size: 3.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 2.9 KiB After ![]() (image error) Size: 2.9 KiB ![]() ![]() |
Before ![]() (image error) Size: 5.3 KiB After ![]() (image error) Size: 5.3 KiB ![]() ![]() |
Before ![]() (image error) Size: 4.4 KiB After ![]() (image error) Size: 4.4 KiB ![]() ![]() |
Before ![]() (image error) Size: 8.1 KiB After ![]() (image error) Size: 8.1 KiB ![]() ![]() |
Before ![]() (image error) Size: 4.7 KiB After ![]() (image error) Size: 4.7 KiB ![]() ![]() |
Before ![]() (image error) Size: 8.8 KiB After ![]() (image error) Size: 8.8 KiB ![]() ![]() |
Before ![]() (image error) Size: 8.8 KiB After ![]() (image error) Size: 8.8 KiB ![]() ![]() |
Before ![]() (image error) Size: 17 KiB After ![]() (image error) Size: 17 KiB ![]() ![]() |
Before ![]() (image error) Size: 9.8 KiB After ![]() (image error) Size: 9.8 KiB ![]() ![]() |
Before ![]() (image error) Size: 20 KiB After ![]() (image error) Size: 20 KiB ![]() ![]() |
Before ![]() (image error) Size: 11 KiB After ![]() (image error) Size: 11 KiB ![]() ![]() |
Before ![]() (image error) Size: 13 KiB After ![]() (image error) Size: 13 KiB ![]() ![]() |
Before ![]() (image error) Size: 15 KiB After ![]() (image error) Size: 15 KiB ![]() ![]() |
|
@ -1,112 +1,112 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "icon-20pt@2x.png",
|
||||
"filename" : "AppIcon20x20@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "20x20"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-20pt@3x.png",
|
||||
"filename" : "AppIcon20x20@3x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "3x",
|
||||
"size" : "20x20"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-29pt@2x.png",
|
||||
"filename" : "AppIcon29x29@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "29x29"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-29pt@3x.png",
|
||||
"filename" : "AppIcon29x29@3x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "3x",
|
||||
"size" : "29x29"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-38pt@2x.png",
|
||||
"filename" : "AppIcon38x38@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "38x38"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-38pt@3x.png",
|
||||
"filename" : "AppIcon38x38@3x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "3x",
|
||||
"size" : "38x38"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-40pt@2x.png",
|
||||
"filename" : "AppIcon40x40@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "40x40"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-40pt@3x.png",
|
||||
"filename" : "AppIcon40x40@3x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "3x",
|
||||
"size" : "40x40"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-60pt@2x.png",
|
||||
"filename" : "AppIcon60x60@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "60x60"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-60pt@3x.png",
|
||||
"filename" : "AppIcon60x60@3x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "3x",
|
||||
"size" : "60x60"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-64pt@2x.png",
|
||||
"filename" : "AppIcon64x64@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "64x64"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-64pt@3x.png",
|
||||
"filename" : "AppIcon64x64@3x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "3x",
|
||||
"size" : "64x64"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-68pt@2x.png",
|
||||
"filename" : "AppIcon68x68@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "68x68"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-76pt@2x.png",
|
||||
"filename" : "AppIcon76x76@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "76x76"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-83.5pt@2x.png",
|
||||
"filename" : "AppIcon83.5x83.5@2x.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"scale" : "2x",
|
||||
"size" : "83.5x83.5"
|
||||
},
|
||||
{
|
||||
"filename" : "icon-1024pt.png",
|
||||
"filename" : "AppIcon1024x1024.png",
|
||||
"idiom" : "universal",
|
||||
"platform" : "ios",
|
||||
"size" : "1024x1024"
|
||||
|
|
4
package
Normal file → Executable file
|
@ -2,4 +2,6 @@
|
|||
cd "`dirname "$0"`"/.dragonruby
|
||||
cp -R ../marketing-assets/AppIcon.appiconset ./dragonruby-ios.app/Assets.xcassets/
|
||||
cp -R ../marketing-assets/AppIcon.appiconset ./dragonruby-ios-simulator.app/Assets.xcassets/
|
||||
exec ./dragonruby-publish --only-package ../🕹️cube-tube
|
||||
cp -R ../🕹️cube-tube ./cube-tube
|
||||
exec ./dragonruby-publish --only-package cube-tube
|
||||
rmdir -R ./cube-tube
|
73
package.bat
|
@ -1,72 +1 @@
|
|||
@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 --only-package %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
|
||||
call publish.bat --only-package
|
72
publish.bat
Normal file
|
@ -0,0 +1,72 @@
|
|||
@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
|
|
@ -39,7 +39,9 @@ class MenuScene < SceneInstance
|
|||
text(option[:key])
|
||||
end
|
||||
|
||||
if (args.state.tick_count - @first_render) < 60 * (1.5 + i) * 0.2
|
||||
scramble = (args.state.tick_count - @first_render) < 60 * (1.5 + i) * 0.2
|
||||
|
||||
if scramble
|
||||
if args.state.tick_count % 4 == 0
|
||||
@rand_strings[i] = (0...(rand(text.length >= 3 ? text.length : 3) + 3)).map { ('A'..'Z').to_a[rand(26)] }.join
|
||||
end
|
||||
|
@ -73,7 +75,7 @@ class MenuScene < SceneInstance
|
|||
|
||||
button_border = { w: 340, h: 80, x: l.x - 170, y: l.y - 55 }.merge(WHITE)
|
||||
# (args.outputs.borders << button_border) if mobile?
|
||||
if args.inputs.mouse.up && args.inputs.mouse.inside_rect?(button_border)
|
||||
if args.inputs.mouse.up && args.inputs.mouse.inside_rect?(button_border) && !scramble
|
||||
o = @menu_options.find { |o| o[:key] == l[:key] }
|
||||
Sound.play(args, :menu)
|
||||
o[:on_select].call(args) if o
|
||||
|
|
|
@ -53,7 +53,7 @@ def debug_tick(args)
|
|||
|
||||
debug_label(
|
||||
args, 24.from_right, 24.from_top,
|
||||
"v#{version} | DR v#{$gtk.version} (#{$gtk.platform}) | Ticks: #{args.state.tick_count} | FPS: #{args.gtk.current_framerate.round}",
|
||||
"v#{version} | DR v#{$gtk.version} (#{$gtk.platform}) | Ticks: #{args.state.tick_count} | FPS: #{args.gtk.current_framerate.round} | Win: #{args.grid.window_width}x#{args.grid.window_height}",
|
||||
ALIGN_RIGHT)
|
||||
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@ devid=deathau
|
|||
devtitle=death.au
|
||||
gameid=cube-tube
|
||||
gametitle=Cube Tube
|
||||
version=0.2.0
|
||||
version=0.2.1
|
||||
icon=metadata/icon.png
|
||||
|
||||
# === Flags available at all licensing tiers ===
|
||||
|
|