From 43234a48220d1664845f2f39e982c4a6c6d99ed9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Garc=C3=ADa?= Date: Sat, 28 Oct 2023 12:13:20 +0200 Subject: [PATCH] Updated to Blade Engine v4.3.0 --- test-prj/assets/BladeEngine.properties | 6 +- test-prj/core/build.gradle | 28 ++- test-prj/desktop/build.gradle | 31 +++ .../bladecoder/engine/DesktopLauncher.java | 4 +- test-prj/gradle.properties | 16 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- test-spine/assets/BladeEngine.properties | 6 +- test-spine/assets/spine/john_back.skel | Bin 4955 -> 4003 bytes test-spine/assets/spine/john_front.skel | Bin 4541 -> 4459 bytes test-spine/assets/spine/john_left.skel | Bin 4208 -> 2589 bytes test-spine/core/build.gradle | 54 +++-- test-spine/desktop/build.gradle | 68 ++++--- .../advtestspine/desktop/DesktopLauncher.java | 159 --------------- .../bladecoder/engine/DesktopLauncher.java | 185 ++++++++++++++++++ test-spine/gradle.properties | 12 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- test-spine/images-raw/spine/john.spine | Bin 9701 -> 11865 bytes venus/assets/BladeEngine.properties | 4 +- venus/core/build.gradle | 34 ++-- venus/desktop/build.gradle | 7 + .../engine/desktop/DesktopLauncher.java | 4 +- venus/gradle.properties | 15 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- 23 files changed, 359 insertions(+), 280 deletions(-) delete mode 100644 test-spine/desktop/src/main/java/com/bladecoder/advtestspine/desktop/DesktopLauncher.java create mode 100644 test-spine/desktop/src/main/java/com/bladecoder/engine/DesktopLauncher.java diff --git a/test-prj/assets/BladeEngine.properties b/test-prj/assets/BladeEngine.properties index 01ad06b..103dc16 100644 --- a/test-prj/assets/BladeEngine.properties +++ b/test-prj/assets/BladeEngine.properties @@ -1,12 +1,12 @@ -bladeEngineVersion=4.1.1-SNAPSHOT +bladeEngineVersion=4.3.0 character_icon_atlas=char-icons debug=false fast_leave=true -gdxVersion=1.11.1-SNAPSHOT +gdxVersion=1.12.0 inventory_pos=down pie_mode.desktop=false resolutions=1 -roboVMVersion=2.3.18 +roboVMVersion=2.3.20 title=Blade Engine Adventure ui_mode=PIE version=19 diff --git a/test-prj/core/build.gradle b/test-prj/core/build.gradle index 5c933b6..1fa06d0 100644 --- a/test-prj/core/build.gradle +++ b/test-prj/core/build.gradle @@ -23,21 +23,19 @@ dependencies { task setVersion(type: WriteProperties) { - def props = new Properties() - def propFile = project.file("../assets/BladeEngine.properties"); - props.load(new FileReader(propFile)) + def props = new Properties() + def propFile = project.file("../assets/BladeEngine.properties"); + props.load(new FileReader(propFile)) props."version" = version - props."bladeEngineVersion" = bladeEngineVersion - props."gdxVersion" = gdxVersion - props."roboVMVersion" = roboVMVersion - - setProperties(props); - setOutputFile(propFile); - - doLast { - println "Set version info in versions.properties" - } -} + props."bladeEngineVersion" = bladeEngineVersion + props."gdxVersion" = gdxVersion + props."roboVMVersion" = roboVMVersion + + setProperties(props); + setOutputFile(propFile); -processResources.finalizedBy(setVersion) + doLast { + println "Set version info in versions.properties" + } +} diff --git a/test-prj/desktop/build.gradle b/test-prj/desktop/build.gradle index da0386e..f2044ce 100644 --- a/test-prj/desktop/build.gradle +++ b/test-prj/desktop/build.gradle @@ -16,6 +16,8 @@ dependencies { implementation "com.badlogicgames.gdx-controllers:gdx-controllers-desktop:$gdxControllersVersion" } +def os = System.properties['os.name'].toLowerCase() + run { standardInput = System.in ignoreExitValue = true @@ -23,6 +25,34 @@ run { if (project.hasProperty("appArgs")) { args Eval.me(appArgs) } + + if (os.contains('mac')) { + jvmArgs = ["-XstartOnFirstThread"] + } +} + +jar { +// sets the name of the .jar file this produces to the name of the game or app. + archiveBaseName.set(appName) +// using 'lib' instead of the default 'libs' appears to be needed by jpackageimage. + destinationDirectory = file("$project.buildDir/lib") +// the duplicatesStrategy matters starting in Gradle 7.0; this setting works. + duplicatesStrategy(DuplicatesStrategy.EXCLUDE) + dependsOn configurations.runtimeClasspath + from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } +// these "exclude" lines remove some unnecessary duplicate files in the output JAR. + exclude('META-INF/INDEX.LIST', 'META-INF/*.SF', 'META-INF/*.DSA', 'META-INF/*.RSA') + dependencies { + exclude('META-INF/INDEX.LIST', 'META-INF/maven/**') + } +// setting the manifest makes the JAR runnable. + manifest { + attributes 'Main-Class': project.mainClassName + } +// this last step may help on some OSes that need extra instruction to make runnable JARs. + doLast { + file(archiveFile).setExecutable(true, false) + } } @@ -40,3 +70,4 @@ task dist(type: Jar) { dist.dependsOn classes dist.dependsOn ':core:jar' +processResources.dependsOn ':core:setVersion' diff --git a/test-prj/desktop/src/main/java/com/bladecoder/engine/DesktopLauncher.java b/test-prj/desktop/src/main/java/com/bladecoder/engine/DesktopLauncher.java index 7ce9b35..7573974 100644 --- a/test-prj/desktop/src/main/java/com/bladecoder/engine/DesktopLauncher.java +++ b/test-prj/desktop/src/main/java/com/bladecoder/engine/DesktopLauncher.java @@ -172,8 +172,8 @@ private void hideCursor() { } public static void main(String[] args) { - if(System.getProperty("os.name").contains("Mac")) - Configuration.GLFW_LIBRARY_NAME.set("glfw_async"); + // if(System.getProperty("os.name").contains("Mac")) + // Configuration.GLFW_LIBRARY_NAME.set("glfw_async"); DesktopLauncher game = new DesktopLauncher(); game.parseParams(args); diff --git a/test-prj/gradle.properties b/test-prj/gradle.properties index db0f512..2540be4 100644 --- a/test-prj/gradle.properties +++ b/test-prj/gradle.properties @@ -1,13 +1,13 @@ +android.injected.testOnly=false +androidGradlePluginVersion=8.1.0 appName=test-prj -bladeEngineVersion=4.1.1-SNAPSHOT -gdxVersion=1.11.1-SNAPSHOT -roboVMVersion=2.3.18 -androidGradlePluginVersion=7.2.2 +bladeEngineVersion=4.3.0 bladeInkVersion=1.1.2 -spinePlugin=false -gdxControllersVersion=2.2.2 +gdxControllersVersion=2.2.3 +gdxVersion=1.12.0 +org.gradle.configureondemand=false org.gradle.daemon=true org.gradle.jvmargs=-Xms128m -Xmx1536m -org.gradle.configureondemand=false -android.injected.testOnly=false +roboVMVersion=2.3.20 +spinePlugin=false version=19 diff --git a/test-prj/gradle/wrapper/gradle-wrapper.properties b/test-prj/gradle/wrapper/gradle-wrapper.properties index 8049c68..e411586 100644 --- a/test-prj/gradle/wrapper/gradle-wrapper.properties +++ b/test-prj/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/test-spine/assets/BladeEngine.properties b/test-spine/assets/BladeEngine.properties index 812ada3..5b639b8 100644 --- a/test-spine/assets/BladeEngine.properties +++ b/test-spine/assets/BladeEngine.properties @@ -1,10 +1,10 @@ -bladeEngineVersion=4.1.0 +bladeEngineVersion=4.3.0 debug=true -gdxVersion=1.10.0 +gdxVersion=1.12.0 inventory_pos=down pie_mode.desktop=false resolutions=1 -roboVMVersion=2.3.12 +roboVMVersion=2.3.20 scene_screen=com.bladecoder.engine.ui.retro.RetroSceneScreen title=Spine Animation Test version=unspecified diff --git a/test-spine/assets/spine/john_back.skel b/test-spine/assets/spine/john_back.skel index 8ba2a6cd6681f063a19cef2a941c11261c437c02..0d140acc783bde07894ed0aff89b67878378d4c0 100644 GIT binary patch delta 2230 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 R(XWS7PBdz9%JW1a{|D`T=bQil diff --git a/test-spine/assets/spine/john_front.skel b/test-spine/assets/spine/john_front.skel index 2e64c52230b47f7b6345624e23615475bad4c2ea..06e76b41b307a98011625920a191093fe569eddf 100644 GIT binary patch literal 4459 zcmZuz3v^9a8s6vJ+&u10Br;5CXcbkD3KB|$Bv-&)*AKKJH)_lJD71uy8wxOc4Y`j5oWVdBog#G*+k89G?BB1Q*5Ob~=^j0% zQZ+@%{y6R_Uu`ymgcn3G-`j-hcRy@9gKM1 zyTcyynCDY%ea4*@idVW(JyYZC^T2*`o+PI`f^jb5aSR4qxk%i-(ghP;&};W!FxCZp zPD6U`0d_xQe}aA&O^)jFpw~rPN1*}ve$?rQco$7|8#=~CJj^|0k_-9WGAFr6)G7i# z7xX%LMGqyoXfm_Uwi_qf^-Xr;c$VPaZ|o;ll>r>x%3Av*5B)Pb4_~FfdwQY%;+PXw z$i5Ve9fa>=qVP--G&4E$xc=At?cuzYDeiXNM@y2tPx!N+mTE#LW3u->eh4*Ik-9l(1%}yo||-)2kz& zs1lE4!}jm6eGFu~y=|6lGcEdH(UuAY!#{dKzMN!u2>67F}hfX-6$zv~;|1 zLm*;x@s=Toks5YgOR}0o3ZoaUP&*_v@Pg;l5o?~Aa}aCoe(@+R-y4HPsQEYNU;*4Z zdqU2l7Xe^(1PHUAKebLqNd&N}a8#H87^_#tFj?VD0ss>LU;+xV>T`fjOadUq#3G$_ zw>4Ai+lP=+?eHn%xug4vnqdGnva0G&p=KZ3HtI^9+hRVtm3VLTwQC1a>0*F{I8&HWD1Z;%9^wdr5t?`v&GX&`x zkqE@*fFwGG2(ar~5*q}PN*e?a8wM4`uoLTch<=C1qBPd-YE76I0ObV$v;4LEgQ7G7 zAY%Z8u?^!DVG4lKOnH7--5DmJAgd{4{p9k_NC?2K*)!Ke+P|ARA*G%+n_Jyy)QAqz zXh58zBgeLiQ$-{Zzn1tNZ0H@F(4*i%oW%K83LTok6PZiemh0S`} z*=w@$!8akjXKWYca{5SpV0A8HE#+`$#M&omqM?x)mdJ9Sw%WzaZt5eK7XU=8C%pcV zh>4I$?Ii9Mst&^fwA^9Sgn0lkt8Uml8u>9GS``Db+G@~OT1;k*+G&IZK=O#QiB~*W zUHGFSjpr9ob5bC{LTaCaA}u<$P8A5lVix@o{SOlQT}--0`v{T~`z7ZhTq02TqKCNTbeEwI5(Sm94B_kkAuaDU2yRh76S!wTGhoLuf^#E z;C^hM&*b6xGd9Aye&=hhtr>hr^em?V1)D@5dRUN9Mk2t5zH8WuA;&_Lk{O3Aa>ueBx(gSt+)1FjILo zf1VXQnTZ%Gh{I!Q#4Qz3R^Fdo1ZCyR`rc4R3}wVn7K?C|RsZ`>V5a);tTj+Z3}wVn I#u#J&11mgJ4gdfE literal 4541 zcmbVO4^R}>9e#VqasPk=#!hNMheYF`CXj$6=;-d-T_D^P2u)%~OsZb^le0NFvJ!|f ze`Jy;Me z@UD$4e)ph!`2E_F_IWEorl;2LQ}UGhhP(zP*x2lD2nL%?!?cE=QtwmN(TT}#ZojXw zPG1o}toP|rSD^kWIv*RQ1%jAvEk7a|;N*he zG>S(rsgVt*>{HQlp8-d7Zu{@#Bi~aZ zKkF+sp%=rElsW9n2|Xy9;I2Lj(rNSt&l$N*fb zHozzS;~^+kf4GM2gZy*c&DVftJjYovO7^ICi@&ev4tsZ|Gn8})qu!z@3unhD>8QFw zs`M&h-|4vqY6gx^P?VLk5maB+P3gB%b$I47WS}sYTt!hyoQt4(-m8;7?EEis{sJ1P z$1rNUs^w*)sMG!m>Cb=p0)FG2oRCVdG${_1%y|gcx%;c7z9K&=-W^kX6?1v1qMgei zs8c5{$qSDRh_lL*48_A3HHV@c6xBB~NiO5coAohkc_ zamnR4Hb%2|X|76lRlg?w^5V!{_C^Iin>zvI?V_k@k}IyPt{5C!=WVfzfo%LDKKtoh7XsYl49v8lMuW zAE%FZhBl)mWqq^p1qB@7IPE^gYvUewt1s|0{WJoP%L+(W0$BQ|*DbtCVL}exe>~(5 z9qNJq{K#+N5e*2CHiobOPv8}r69D}q0^mJ2k%ix}>>OSOgxP=F!VeFh=LzijAQG-z zY_srPS3Ugp{htWAOSTAieKJ7E!w=-OK>O;7m24xkB~_0F|x0FQK_`^8po|_4Js{#R3NH^#0kbK+7OJD}CIQB&k<8 zPy@^pxZco<#W-J;q>tT!)FHApgo^eIJXQnIAD)bZ{9#-(ztCC7U=%YN6g{voc8w{kY;(Y=vG7 zDM;*G#hVHtW)KbCjE6r{;a6vK67I2>^#Tgzwsa-jV=;RVKp=`N{LyVU_<_6~LjJZJ z!jil;O<8<-Ow1a&YT+Y`z7%G5>=hRKzNK|NF@tGNZ-(PG4@QdKD7aXVumo6E*~F2I z$iPC}B7cH7PJdY8Y{*jWA}0gwF?mUrgfFassG$e?pHmV5) z25X*3OiosC8Znd6?i%*;HJWL+>7re4Jy_}*Gv|gq;y2cNU?(T7*pS-yzHkqSy5%RUqzk;qizep%x&`!S>NqX0y zUuWR#H_V7&P9V%n9VMMg)cMUVcp@5oN67Tf6_zetrnN2xiIpe+8cPY%e6^1PrlMsD zNiG1#yj=;2;riEA@xfhb3CZE%i$GjG=U_qsgLe9|oUE+n`Ow1uX#ZNRtl1CkhDzORgB-D2kkKZ1GK-|^7$~=i_5!0N0C-8lueXj{GM^d2!EUOL3 z0igpnrJ>OsA%NzT7%s(rujsIF_xHP|dV8Mq>$EGGQo@y5-!e`5`$DB2XgRYVDI8HS QUI=6C1t-Q{w2Hw00J5|!O#lD@ diff --git a/test-spine/assets/spine/john_left.skel b/test-spine/assets/spine/john_left.skel index 67764552c4dc175589bd2deb17749fa3d37c23b2..64bd5a450768b80cdc1a48eadfc2969f74a08879 100644 GIT binary patch delta 630 zcmeyMFjqu=p76AKW~Y?~>?V4KdPXLP4gUT+#NNQ+JfDHVrGH7uM&lmV$tT&=7#Svq zgUQS6Ahscxy%x-V$_f%`2eaRU#cRQ2BD428yewY5s9fuyyUh2{-9Wi-7*pQ!KL%6}(t-)+jFu9mbO`L&&fr-1gBrz{VFDEsv zgpq-fkC6pv@hL8udQJvTMn*2H4jjt3^?|`2s0^-&iID+f$RXylDj)+6iLAGPXwIl`0Bdw&F8Kr21X9Al3f52$ zH2|c;iMj0oSjQoL<0)Vrhq$i2Kv=^Jv%+cJssxaR{Z3mNz#1I3-gX3QaC9_N18V>& zVPJ!409gXk;Gk^f0oLI3wBG})q28hQYyrXwPDTb6xR*dW94}Q>fE6A*AI^bL$BnM; z5YIuNF~HDq-0>7>GEgVj7+@$fgBcDwq7ESQY}Z9FfTckK4D5_LX!adA;|~dCN6qU< IUWd2|0H7VW-2eap literal 4208 zcmb_ee@v8R9Dm;X!5#O5J8p$dZMESD%r4?W9Vxu;^I+iCMzxmx!5SzB*94DF6r{FJ zn@0W^W?Epa5EN30l%V`Ucz3jE&T9%&8ZN?`j%qtu%fDQ+=f^$oy?58_9rA2!@ALhB zzTfZX`TjZJcHSM#&a)EHdO<<4b!An`cT)_E#@ zPM^Elx$%uEx24+aZE*VNw~2leskPecb65K6s5tIo@>Fi9Vra#eyOPPwweFgzvsCg) zebss!*LthA(2L%O!&x?ZDyzJWRFJl*zTWNQq2g~gs*`Q)^csu6z&wndx>mln$PWPd zi$7K+9RS0p&q|Kzj$++{1BrNKYg++8ENU$!ETF|p=1a{#0%==Uags^XscitzEHJc& z1V_!miNf6>F$uk1oB@DUfWft)?)P#~OZb(b*}FXv4o}vNEBUaZ3FxW8kKl^=0f_#d zPBcO9L{3HdFtq;Mt>4SAw14>ZPJa^GJ)q}&7(6A^d3Pszf8NnR@BV^BIP4nx4S<9q z3Bk5sTnLpc32qO!BwC>I^9T3~NXglwjU&z{E~4VwxglN6wj`6heVcF)-jB>8HMq9K zf=WLb3i<|yk}Q@U?^gz4FENhf^n8m}W{A>}uPwYTsfDWBDb9(g-$!Iv)1JZ;t#VnTIcPUvM|x zK-CPT74U!qc=cX4Jo~*}yt7H}R5*%J9){8hWNo3W)0r^kT1&7oqn`UhCTzWvq4Yv3 z@pWwT5WMl7E--o3$WicZY`w!z*{2BU1l4{05qRU(T=CcJ!!jy@QEd!m5VR!X;(|}1 z_PMO!j#c|ON*U28;P3!`8L`7Flb*nd-U}S1jF>7oIO@+GO@Uoy^29(zM3Z30s8G+= z2>ki+3TfVCEcZE>$qDvGvtTAD{39Vw{~$^y|ByF6f*5s%v9}6Fg6a#7!Mf}h#eXuL zGOr1Y!o?>D|)DZ+3{Q@?*JI)X~N&bS0w&_Fv2v!{rsSFGYpytl9(NZa665 zOyo7lC`Gl?1q%>#U<4C5mpN{Ne`Ssb9<4tNM*t{p9ortd(SERa&jJ?!8uP{m^0Qv+ zu5JK!palYc4?TkXMXnlpvCiYA5wAK%b5Xv;94KD(OW$2-=mNSN)CXuom>H468G9wte$B9pR)JDPc70U;SGSbzG!{I!H zY_9z@O2~9=T7LiRqTuP2b09ODohv-RlrZc&RzcHp4i3CT35$c*B}!P5mS$1H1T(uR zc>LqjB4!qp(kSp|YblK)?g`gEU|R6<(D8!Nw@9PSP1HH+G3|Xo=Xm49J4c;0qbxtC zZsI54T9eqb%MV^t iconList = new ArrayList<>(); + + if (DesktopLauncher.class.getResource("/icons/icon128.png") != null) + iconList.add("icons/icon128.png"); + + if (DesktopLauncher.class.getResource("/icons/icon32.png") != null) + iconList.add("icons/icon32.png"); + + if (DesktopLauncher.class.getResource("/icons/icon16.png") != null) + iconList.add("icons/icon16.png"); + + cfg.setWindowIcon(FileType.Internal, iconList.toArray(new String[0])); + cfg.setOpenGLEmulation(Lwjgl3ApplicationConfiguration.GLEmulation.GL20, 0, 0); + + new Lwjgl3Application(this, cfg); + } + + public void parseParams(String[] args) { + for (int i = 0; i < args.length; i++) { + String s = args[i]; + if (s.equals("-t")) { + if (i + 1 < args.length) { + i++; + setTestMode(args[i]); + } + } else if (s.equals("-p")) { + if (i + 1 < args.length) { + i++; + setPlayMode(args[i]); + } + } else if (s.equals("-s")) { + if (i + 1 < args.length) { + i++; + speed = Float.parseFloat(args[i]); + } + } else if (s.equals("-chapter")) { + if (i + 1 < args.length) { + i++; + setChapter(args[i]); + } + } else if (s.equals("-f")) { + fullscreen = true; + } else if (s.equals("-d")) { + setDebugMode(); + } else if (s.equals("-r")) { + setRestart(); + } else if (s.equals("-res")) { + if (i + 1 < args.length) { + i++; + forceResolution(args[i]); + } + } else if (s.equals("-aspect")) { + if (i + 1 < args.length) { + i++; + String aspect = args[i]; + + if (aspect.equals("16:9")) { + cfg.setWindowedMode(WINDOW_WIDTH, WINDOW_WIDTH * 9 / 16); + } else if (aspect.equals("4:3")) { + cfg.setWindowedMode(WINDOW_WIDTH, WINDOW_WIDTH * 3 / 4); + } else if (aspect.equals("16:10") || aspect.equals("8:5")) { + cfg.setWindowedMode(WINDOW_WIDTH, WINDOW_WIDTH * 10 / 16); + } + } + } else if (s.equals("-w")) { + fullscreen = false; + } else if (s.equals("-l")) { + if (i + 1 < args.length) { + i++; + loadGameState(args[i]); + } + } else if (s.equals("-h")) { + usage(); + } else if (s.equals("-opengl")) { + cfg.setOpenGLEmulation(Lwjgl3ApplicationConfiguration.GLEmulation.GL20, 0, 0); + } else if (s.equals("-angle")) { + cfg.setOpenGLEmulation(Lwjgl3ApplicationConfiguration.GLEmulation.ANGLE_GLES20, 0, 0); + } else { + if (i == 0 && !s.startsWith("-")) + continue; // When embeded JRE the 0 parameter is the app name + System.out.println("Unrecognized parameter: " + s); + usage(); + } + } + + if (!fullscreen) + cfg.setWindowedMode(WINDOW_WIDTH, WINDOW_HEIGHT); + + } + + public void usage() { + System.out.println( + "Usage:\n" + + "-chapter chapter\tLoads the selected chapter\n" + + "-t scene_name\tStart test mode for the scene\n" + + "-p record_name\tPlay previusly recorded games\n" + + "-f\tSet fullscreen mode\n" + + "-w\tSet windowed mode\n" + + "-d\tShow debug messages\n" + + "-res width\tForce the resolution width\n" + + "-l game_state\tLoad the previusly saved game state\n" + + "-r\tRun the game from the begining\n" + + "-s speed\tSets the game speed\n" + + "-aspect aspect_ratio\tSets the specified screen aspect (16:9, 4:3, 16:10)\n"); + + System.exit(0); + } + + @Override + public void create() { + if (fullscreen) + Gdx.graphics.setFullscreenMode(Gdx.graphics.getDisplayMode()); + + hideCursor(); + + super.create(); + + if (getUI().getScreen(Screens.SCENE_SCREEN) instanceof SceneScreen) + ((SceneScreen) getUI().getScreen(Screens.SCENE_SCREEN)).setSpeed(speed); + } + + private void hideCursor() { + Lwjgl3Window window = ((Lwjgl3Graphics) Gdx.graphics).getWindow(); + GLFW.glfwSetInputMode(window.getWindowHandle(), GLFW.GLFW_CURSOR, GLFW.GLFW_CURSOR_HIDDEN); + } + + public static void main(String[] args) { +// if (SharedLibraryLoader.isMac && !"1".equals(System.getenv("JAVA_STARTED_ON_FIRST_THREAD_" + LibC.getpid()))) { +// System.out.println("MacOs detected. Running in async mode."); +// Configuration.GLFW_LIBRARY_NAME.set("glfw_async"); +// } + + DesktopLauncher game = new DesktopLauncher(); + game.parseParams(args); + game.run(); + } +} diff --git a/test-spine/gradle.properties b/test-spine/gradle.properties index 7c27a94..7a41eba 100644 --- a/test-spine/gradle.properties +++ b/test-spine/gradle.properties @@ -1,13 +1,13 @@ android.injected.testOnly=false -androidGradlePluginVersion=4.1.3 +androidGradlePluginVersion=8.1.0 appName=adventure-test-spine -bladeEngineVersion=4.1.0 -bladeInkVersion=1.0.0 -gdxControllersVersion=2.0.1 -gdxVersion=1.10.0 +bladeEngineVersion=4.3.0 +bladeInkVersion=1.1.2 +gdxControllersVersion=2.2.3 +gdxVersion=1.12.0 org.gradle.configureondemand=false org.gradle.daemon=true org.gradle.jvmargs=-Xms128m -Xmx1500m roboVMGradlePluginVersion=2.3.12 -roboVMVersion=2.3.12 +roboVMVersion=2.3.20 spinePlugin=true diff --git a/test-spine/gradle/wrapper/gradle-wrapper.properties b/test-spine/gradle/wrapper/gradle-wrapper.properties index 4d9ca16..e411586 100644 --- a/test-spine/gradle/wrapper/gradle-wrapper.properties +++ b/test-spine/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/test-spine/images-raw/spine/john.spine b/test-spine/images-raw/spine/john.spine index bc4904338ae43e47dd2372052abb2b740a5f2726..2cde3b2dfbd3bce728b5b81a99ef44507cacf655 100644 GIT binary patch literal 11865 zcmYj%by!qi)V0z>cXxMph_p0FNC?Q#CEXy>NH>ghcS*wlBGTP4Fn}~jIF$4^_

( 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 literal 9701 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 W$3~mM{e_>T+2Yw&bXj9JsQ&{caSA^G diff --git a/venus/assets/BladeEngine.properties b/venus/assets/BladeEngine.properties index 8c3e356..7ac61bd 100644 --- a/venus/assets/BladeEngine.properties +++ b/venus/assets/BladeEngine.properties @@ -1,6 +1,6 @@ INIT_SCREEN=org.bladecoder.venus.InitScreen MENU_SCREEN=org.bladecoder.venus.VenusMenuScreen -bladeEngineVersion=4.2.0 +bladeEngineVersion=4.3.0 bonasera_android_url=https\://play.google.com/store/apps/details?id\=com.bladecoder.lj bonasera_desktop_url=https\://bladecoder.itch.io/johnny-bonasera bonasera_ios_url=https\://itunes.apple.com/us/app/revenge-johnny-bonasera/id1151361813 @@ -9,7 +9,7 @@ gdxVersion=1.12.0 inventory_pos=down languages=en,es,de,ru,it,fr resolutions=0.5,1 -roboVMVersion=2.3.18 +roboVMVersion=2.3.20 show_desc=true single_action_inventory=true title=The Goddess Robbery diff --git a/venus/core/build.gradle b/venus/core/build.gradle index a0af75e..d60c8be 100644 --- a/venus/core/build.gradle +++ b/venus/core/build.gradle @@ -17,21 +17,19 @@ dependencies { task setVersion(type: WriteProperties) { - def props = new Properties() - def propFile = project.file("../assets/BladeEngine.properties"); - props.load(new FileReader(propFile)) - - props."version" = version - props."bladeEngineVersion" = bladeEngineVersion - props."gdxVersion" = gdxVersion - props."roboVMVersion" = roboVMVersion - - setProperties(props); - setOutputFile(propFile); - - doLast { - println "Set version info in versions.properties" - } -} - -processResources.finalizedBy(setVersion) \ No newline at end of file + def props = new Properties() + def propFile = project.file("../assets/BladeEngine.properties"); + props.load(new FileReader(propFile)) + + props."version" = version + props."bladeEngineVersion" = bladeEngineVersion + props."gdxVersion" = gdxVersion + props."roboVMVersion" = roboVMVersion + + setProperties(props); + setOutputFile(propFile); + + doLast { + println "Set version info in versions.properties" + } +} \ No newline at end of file diff --git a/venus/desktop/build.gradle b/venus/desktop/build.gradle index 5c7ca2e..51bbd43 100644 --- a/venus/desktop/build.gradle +++ b/venus/desktop/build.gradle @@ -16,6 +16,8 @@ dependencies { implementation "com.badlogicgames.gdx-controllers:gdx-controllers-desktop:$gdxControllersVersion" } +def os = System.properties['os.name'].toLowerCase() + run { standardInput = System.in ignoreExitValue = true @@ -23,6 +25,10 @@ run { if (project.hasProperty("appArgs")) { args Eval.me(appArgs) } + + if (os.contains('mac')) { + jvmArgs = ["-XstartOnFirstThread"] + } } jar { @@ -64,3 +70,4 @@ task dist(type: Jar) { dist.dependsOn classes dist.dependsOn ':core:jar' +processResources.dependsOn ':core:setVersion' diff --git a/venus/desktop/src/main/java/com/bladecoder/engine/desktop/DesktopLauncher.java b/venus/desktop/src/main/java/com/bladecoder/engine/desktop/DesktopLauncher.java index ec8d521..ffc16be 100644 --- a/venus/desktop/src/main/java/com/bladecoder/engine/desktop/DesktopLauncher.java +++ b/venus/desktop/src/main/java/com/bladecoder/engine/desktop/DesktopLauncher.java @@ -161,8 +161,8 @@ private void hideCursor() { } public static void main(String[] args) { - if(System.getProperty("os.name").contains("Mac")) - Configuration.GLFW_LIBRARY_NAME.set("glfw_async"); + // if(System.getProperty("os.name").contains("Mac")) + // Configuration.GLFW_LIBRARY_NAME.set("glfw_async"); DesktopLauncher game = new DesktopLauncher(); game.parseParams(args); diff --git a/venus/gradle.properties b/venus/gradle.properties index e89e739..144612d 100644 --- a/venus/gradle.properties +++ b/venus/gradle.properties @@ -1,14 +1,17 @@ android.injected.testOnly=false android.useAndroidX=true -androidGradlePluginVersion=7.2.0 +androidGradlePluginVersion=8.1.0 appName=venus -bladeEngineVersion=4.2.0 -bladeInkVersion=1.0.0 -gdxControllersVersion=2.2.2 +bladeEngineVersion=4.3.0 +bladeInkVersion=1.1.2 +gdxControllersVersion=2.2.3 gdxVersion=1.12.0 org.gradle.configureondemand=false org.gradle.daemon=true -org.gradle.jvmargs=-Xms1024m -Xmx2048m -roboVMVersion=2.3.18 +org.gradle.jvmargs=-Xms128m -Xmx1536m +roboVMVersion=2.3.20 version=1.9 +android.enableJetifier=true + + diff --git a/venus/gradle/wrapper/gradle-wrapper.properties b/venus/gradle/wrapper/gradle-wrapper.properties index 8049c68..e411586 100644 --- a/venus/gradle/wrapper/gradle-wrapper.properties +++ b/venus/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists