From cbb13f672f1c50412a748e3a8e98576363765ace Mon Sep 17 00:00:00 2001 From: Lonami Exo Date: Sat, 8 Jul 2017 11:32:39 +0200 Subject: [PATCH] Show a shutdown button upon death (closes #23), update to v0.6.1 --- android/assets/ui/x0.75/power_off.png | Bin 0 -> 1235 bytes android/assets/ui/x1.0/power_off.png | Bin 0 -> 1661 bytes android/assets/ui/x1.25/power_off.png | Bin 0 -> 2027 bytes android/assets/ui/x1.5/power_off.png | Bin 0 -> 2458 bytes android/assets/ui/x2.0/power_off.png | Bin 0 -> 3344 bytes android/assets/ui/x4.0/power_off.png | Bin 0 -> 7352 bytes android/build.gradle | 4 +- build.gradle | 2 +- .../github/lonamiwebs/klooni/SkinLoader.java | 2 +- .../klooni/screens/PauseMenuStage.java | 36 +++++++++++------- original-resources/buttons.svg | 32 +++++++++++++--- original-resources/gen-ui-png.py | 1 + 12 files changed, 55 insertions(+), 22 deletions(-) create mode 100644 android/assets/ui/x0.75/power_off.png create mode 100644 android/assets/ui/x1.0/power_off.png create mode 100644 android/assets/ui/x1.25/power_off.png create mode 100644 android/assets/ui/x1.5/power_off.png create mode 100644 android/assets/ui/x2.0/power_off.png create mode 100644 android/assets/ui/x4.0/power_off.png diff --git a/android/assets/ui/x0.75/power_off.png b/android/assets/ui/x0.75/power_off.png new file mode 100644 index 0000000000000000000000000000000000000000..4a81b971bd089582e19773fa5b9ea02761361d17 GIT binary patch literal 1235 zcmV;^1T6cBP)>%|7(&g6U`8(qR@irW?&E%O@ttUL=;Jw z2|3hL1Z9mFN%RnfL%abMf0zC3wWa^z1DFfUooyY30Sp0Sz%)<;b^xc(wys zVmB}_+xjvA+z}8TkmEC&lEA3rGv)N(lBF?g3Oym| zCa3Lq7I^?T_V*n7R$z4+p_>4(R?gh&@=HX-S5r}<1tTMH4=xoDF}B?C65_-@Sb-RAhs0GH<#e@Vk3gxAP;n`R{7 zJ>}SU5%9C)`x#*EJ|Qs=JNEsOHkesGO@zv=0ZEdXP0C+)S4g_C-Pj@&SSsndfb+DZ z5i|QeO+X%zSunF#B)#o4Khi!5?N53nV3VZB&Fs@|gf);ixh;}HBfVVG)k#CU*joZl zQ<5Ib8CdFK3dJz9FC}evnr~0uG!r1&Ixh@3JY{Bw^8}8mO15>xb?j?M9AlCruu@X{ zDz8g=ra(}s%QX}E_Os)QWCAA#I!+f1C`pqkZTpK5 znb{wbLWjmP;)`Sgq5c2wA^{tCN7Aiz6(o2$_G_x{0R7h8?!vgFI9H8DW5wKDKKL&J-#qG&y6Pjxm^`6&I}esbh1kP^`St@&38j|+P5}-D z^c+YYshcBUW`9X~Gr)C@qGNWyai^ry0`}M4-3(aie9rv@%!ehYtii9r&UU1^X4=h+n&O^SA=s%Z-w}53Oxd(s| zq8-jd4Omr5d?L`T4I&T6h)RN2<>VVAs^0BO;f%$Hsw6GwDAhSZS1URapPJEipQMi@ zeIe({5!M14|@buc!<@BvCP)h z%E}<3kO;&m=t1ufQXkY(!^l7^$;!gW$ih^>Pfx(i7NJ3JxnXPXWm%0Kt16a)QcoXQ{ zXnutP=mM;c>3kWlHJW3g046&+4{#K?q@J8Q)YF-yi#&3ZG^QRz%BXh$LXvLZ!dX6M=$cv!sVTHcZkhL~jcxoB;qX zl=O_xh@`n@wjw|;j~pOLGbFv|(djGciJH6sD+99jmjo_ifawADrU%;U3H;)*b%bcu znTW&@0F04zg@?y>Nn_2dC4{u{$pMliGutESUXNOnq?thCH=5a2 zk6u~?KPG0jRMLEp+Le;VCJB>9z|E4JLr2mSGh5}+sYY%ipaKsnnhv}0G|(|lkQ4yl z(E3o)OCFs#5U}ifcP4TD=l5|^~;J5$){Uy2P^?ym4WM)}9Q^W|6q>Ax-jMr^&>I+7 zc_A(UNmycLhq5wDfy_ZNvxAb}^{9=g{8JqO*NX3>ETpPX^dlfi?|9_S0Q7S-T$hDS z73vXyWs(j%*k;JR7IRGlkFKu<|YtGYvG<|{&k z;GY1U(1n!?UpZvGE2qVk0dUm@@*pKiy8?84GrAD`=8!c>YAc+E1|Yb|=)nR>e>&vN ziVCl_Vy{QuTK-YlY1j0(bDBzP63lFyqVihYU0x(4uEF>WK*+`LaX_&)b8d4z*G<=axzQI@70R&*f6{IRe4D(n#ybF? zdyF5ZLHVG>Z(hJnda)KK1AxCh4qAZga_n0Oug<_*0iE9jbg9+Z1fp+vT{r^VpHu&Q zeEI>a0y=*H7?zjQ=K>r8%m+@*#p&@J444S)3E*)Q@J)$RJD(dEgsml_xqXKW3wbyXwoTTEpP`JOKC(I{(4|p3ZDRTNc+l5LCS#VQxe(*yb6p1&i2?p3%CWC zjk`LPglTCzpD9wnBt<*1S&q2ul(bF9R)^1&bgq&=!wtb>X7*GK?b89c82BN>UCJA~ zfpK-~cvTQO0S^HO8`Sw`qK~*63!(|r0{ruZys(=n@R<&L6b7Qh46hR%peO<@M2Rld znSigY87Me&<^x3kp9uO7x6gE9n|VCq?@QG;5Xgy`<%m7E4-gX07ff z*--bRv%o2ezC`Jx==Ik_QFVHcq#cremGo0i+wmuG0v`Me?f>z+a$-DH00000NkvXX Hu0mjfLXi2q literal 0 HcmV?d00001 diff --git a/android/assets/ui/x1.25/power_off.png b/android/assets/ui/x1.25/power_off.png new file mode 100644 index 0000000000000000000000000000000000000000..bc20d0c0d601937d108b5a4526e4a1d976dd760f GIT binary patch literal 2027 zcmV19%6R(QkhT8PjhEnmFAl zx3^OJSPSYDzLGyt_{3a(sy!npVNi@PI%kPZ{_?yP115;eo;pX1rYeA zq>CJ)2S?Nv@g)b(RCR)+-vfsfF%S+QaE7Goo#O9CR97Io)G0Sv(tW_hfDe*_0R-kr zx=qqp=OHgd)K?(8NdAj>L_asemnB^m(EAPGa{>8K z241CfmAu?&X0Jq?2@nbPPb59zlr>2=G?Jw}fa4p(5-)3jj|6Qj4e0l_ZG*b^1J(!h zU+LAIn}NUtNw;`p8*G*IMKgQL>%^d`iezPG8zg;6(tz`ji-E&Ef}Ws!U6Oaij->O< z?9Wd5)?=%Xl_Z(jW0HRA6dxz)XHgr&AXSJr1XBOEB(F+-*k&m1dwMnb~$pUke=nL%=&^8w&7Y;7#Y1dI|VYAw%!mdmxY*4|Hkk zHvwDcb<))-0~bj0^rSl_EikkHMNT4v$}_Nu?@D^pDf`|u!9;zs3<#D5=%?`OSk}^A!VF3iD zNSf!OQ*PMWNmc;!3J0&5*Ryi=}Y06i5I?<71*WJa^T0{h=pjG0AtJb3NzkhI+++We(8fS!hYf3H(f8pVmZN((y8fqYqMFU~QInM3I`h9{o= zlI`yj;6z7l?4i=U&H>n;v^laDwx&93gQqqh*BWup)s5^<=n6Ai*DG7{FP?2^{?d92 zzoPs>>TIAkdz4G$AgA2Fo4*VRV51@3zCqv-hr)M($_CZF0yxQWt^mKwI=BWWx(A^=XqziIx8ZVVj=Y(1gtNR%46Pk58#wCj7|hr2aMM8ts10yUu1*%;xdiT19k?CUs{^+5&#Y& zmIUj7$U7WdPFxmn0ALX{XcK`GfXxBF_fW;Cg7k#?oxvb3p+_b841dQ0m*bn)H&fm0 z3fLQXF6hv!l+hT+{5%SHGUz9i+3t04ZVG90d4vH{_Ik_aMSYtA{0i7zAb3yE;c6EDrrx45&H)N3xQ_~ z`p_J_!i!{GmE}nV##<$Qp$jzwl2%E2MrqH>TBW7K!Nr^LO0R{Q-S`}(w0<$O3!8&H zE$MVKt7^wtKBV6HB4XpjI&cpKUNTV`z;VF8`WzGwyMgaf$3-#HFz3g_$6meSzracT zj#Dnc(fHm**((Ns#lSxK-q#4=WV-JqyX8-G`F^avLn=nxLT_*F6{I)I)#)9H-2ogx z8oRwvQP6gfs_37lN1a69dLq)a?z4^0d`U%T0$U{gQPLkI-EU^zt-7U9o30#~sWeFb zxY8hbmZTYy1|R6&qx6KpW=U(5HbK28X|YOA55V%wlZ zEFaJqjS_7oH72%=?=(IVUx~)V7;8x-MVnY9h>u8HD@hBfEvB|AP~=e_1+HyT;qoY4 z%H!vUeXk`mXXc)@&Y3ea_uk*fGkfo~&R(<6eyzQ>G{OiYjL2IZ7!53?IWGV=wp-UB32@gSl|R5KU|zfR9Z~?- z=dAnzb^+tst@n@tc))1@fRDFZ?>vlZw*oo2G>~Uu=~}daZZW`^K%Uo@u0;#z76TB- zbAIVsw1CmAC={3=X}+Y_OX`#KM>Bh@6|$PC5zYwbOS)Fl#gYz6deqFel%-h90LB7e z2M%X+ipzn>r$j(cpcC#1$T<)AA#ft2ymi2p5&bIxm<;@FkV^SZueIDOL|99 znJvPj*AhwJEJJ7^1CTna2PD1Pk!?yuR0Vnd?M(k=V6ih#9bp3iqb2=HX{6)fctl(U zdF~I$SPEPf$oGGWw1Dp`4b{AC3goH606&)Wf-}!pNp}M;bLJ}suqenC1WVSwqt!JwkI1!e9E$l4W$Zm%L&H*+B=T%)L(Ve_`jY$}bhnz>6V5zk6W)+H8#C*ZbaNo< z7fIfGae#?rZ%#C0MIoWtdTa^&154e(0)8LRVbIavU@hPVrS*=y?3Z+tBYj>fn+G)E z7D*?ad2R)o*5669bAN%~NuA2SUAOqFz5P5~%w&a{$_F@TxvmGnDjwndG8Xw(AU<0$-3 zX7*2?K9$hQ&(@Ee>8}7T%KD*^0p8{){HIQ3B6Lg(kR&r(E6LNzkCJpvqaU)!>j8E` zvCV8R9nlHb;GJ-0?xWNhfaE@y*VExaGdto`Btl2EfPQ}CO#jxbhgmIPhVr|E|JkWT zm9*3VX0}n1XU}0487rh&2AJt6wDieN13IwP3^-h16=GVw37``1zwl? zOKKlv8DNs5K(`BckWOs@k2}-Xxo~C~;FUQGJ6XWX!HZ|+Il$@CwWw#iq{EK%b#Oz;UA}X0}YyTs5Ektdw+R|0Jm@jyclS)os=>RZp)zRTXx|X0{f%RMLBu z_A4$?I`FYc(l5(19*<=Op{dUOPkqgr5UJa7TQWKaHOsKb7y^m z_B#rk##Jy^E7eA?sk9=JL}^N zMMj9E*bp0?LOp#)*8p4qJmaj3UzZ{HBTk{vC1Hc}0*nGyJL}*Skk`e(sc-`xa|%BU z)Omq*E5O&B?+;Mko-{Bgpuh%F0N1VtScq@b18@MCShgZ70!Fxx6kDz&hss)T=m1>mMr=i>^Bu`z7s>^o-K+qvLw8$+#{ zdG|QKL-6zs2CuF1;7-z9yZf2XiCT6P%?aGlaIq4o^X%4NBvPn%if z@`?6Ax)$no;#2!}a~SwUyX&zqq*2mfS6p=(4+7KMU3aBH+F4sfEDUj#{0sOLUATmv z3t$XzBe6(`t>g&sZJPM-3@J!0Vjgfm?d>CaNt3_2Q|!YAQasMj0uNVM@qZo=CzZ}SJYr^^GtiaL(FSNn|EFUh{L8sYVGMdD^;Q_BV1yAy7@?c_ YAGG?fky2Y{CIA2c07*qoM6N<$g1T;ma{vGU literal 0 HcmV?d00001 diff --git a/android/assets/ui/x2.0/power_off.png b/android/assets/ui/x2.0/power_off.png new file mode 100644 index 0000000000000000000000000000000000000000..8733e47649a2545eedfb099fb0fd0c64ff71e741 GIT binary patch literal 3344 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 O1K(wYaor`4d;bSljN%~x literal 0 HcmV?d00001 diff --git a/android/build.gradle b/android/build.gradle index 303e2bf..5c1c26b 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -22,8 +22,8 @@ android { minSdkVersion 8 targetSdkVersion 25 - versionCode 600 - versionName "0.6" + versionCode 610 + versionName "0.6.1" } } diff --git a/build.gradle b/build.gradle index 19b557b..ca8d634 100644 --- a/build.gradle +++ b/build.gradle @@ -16,7 +16,7 @@ allprojects { apply plugin: "eclipse" apply plugin: "idea" - version = '0.6' + version = '0.6.1' ext { appName = "1010! Klooni" gdxVersion = '1.9.5' diff --git a/core/src/io/github/lonamiwebs/klooni/SkinLoader.java b/core/src/io/github/lonamiwebs/klooni/SkinLoader.java index 4ad10d9..7c07891 100644 --- a/core/src/io/github/lonamiwebs/klooni/SkinLoader.java +++ b/core/src/io/github/lonamiwebs/klooni/SkinLoader.java @@ -28,7 +28,7 @@ public class SkinLoader { private static String[] ids = { "play", "play_saved", "star", "stopwatch", "palette", "home", "replay", "share", "sound_on", "sound_off", "snap_on", "snap_off", "issues", "credits", - "web", "back", "ok", "cancel" + "web", "back", "ok", "cancel", "power_off" }; private static float bestMultiplier; diff --git a/core/src/io/github/lonamiwebs/klooni/screens/PauseMenuStage.java b/core/src/io/github/lonamiwebs/klooni/screens/PauseMenuStage.java index f942e7c..4bc665c 100644 --- a/core/src/io/github/lonamiwebs/klooni/screens/PauseMenuStage.java +++ b/core/src/io/github/lonamiwebs/klooni/screens/PauseMenuStage.java @@ -53,6 +53,7 @@ class PauseMenuStage extends Stage { private final Band band; private final BaseScorer scorer; private final SoftButton playButton; + private final SoftButton customButton; // Customize & "Shut down" //endregion @@ -98,22 +99,14 @@ class PauseMenuStage extends Stage { table.row(); - // Palette button (buy colors) - final SoftButton paletteButton = new SoftButton(1, "palette_texture"); - table.add(paletteButton).space(16); - - paletteButton.addListener(new ChangeListener() { - @Override - public void changed(ChangeEvent event, Actor actor) { - // Don't dispose because then it needs to take us to the previous screen - game.transitionTo(new CustomizeScreen(game, game.getScreen()), false); - } - }); + // Palette button OR shutdown game (if game over) + customButton = new SoftButton(1, "palette_texture"); + table.add(customButton).space(16); + customButton.addListener(customChangeListener); // Continue playing OR share (if game over) button playButton = new SoftButton(2, "play_texture"); table.add(playButton).space(16); - playButton.addListener(playChangeListener); } @@ -139,6 +132,14 @@ class PauseMenuStage extends Stage { scorer.resume(); } + private final ChangeListener customChangeListener = new ChangeListener() { + @Override + public void changed(ChangeEvent event, Actor actor) { + // Don't dispose because then it needs to take us to the previous screen + game.transitionTo(new CustomizeScreen(game, game.getScreen()), false); + } + }; + private final ChangeListener playChangeListener = new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { @@ -166,13 +167,22 @@ class PauseMenuStage extends Stage { } void showGameOver(final String gameOverReason, final boolean timeMode) { + // Allow the players to exit the game (issue #23) + customButton.removeListener(customChangeListener); + customButton.updateImage("power_off_texture"); + customButton.addListener(new ChangeListener() { + @Override + public void changed(ChangeEvent event, Actor actor) { + Gdx.app.exit(); + } + }); + if (game.shareChallenge != null) { playButton.removeListener(playChangeListener); playButton.updateImage("share_texture"); playButton.addListener(new ChangeListener() { public void changed(ChangeEvent event, Actor actor) { // Don't dispose because then it needs to take us to the previous screen - game.transitionTo(new ShareScoreScreen( game, game.getScreen(), scorer.getCurrentScore(), timeMode), false); } diff --git a/original-resources/buttons.svg b/original-resources/buttons.svg index 59d4b0f..6be7e77 100644 --- a/original-resources/buttons.svg +++ b/original-resources/buttons.svg @@ -15,7 +15,7 @@ viewBox="0 0 500.00001 500.00001" id="svg2" version="1.1" - inkscape:version="0.92.1 r15371" + inkscape:version="0.92.1 r" sodipodi:docname="buttons.svg"> @@ -125,14 +125,14 @@ borderopacity="1" inkscape:pageopacity="0" inkscape:pageshadow="2" - inkscape:zoom="4.6421393" - inkscape:cx="162.81422" - inkscape:cy="251.69867" + inkscape:zoom="0.82062205" + inkscape:cx="328.41208" + inkscape:cy="62.530961" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" inkscape:window-width="1366" - inkscape:window-height="742" + inkscape:window-height="739" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" @@ -1133,5 +1133,27 @@ style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.1729759;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" inkscape:connector-curvature="0" /> + + + + + diff --git a/original-resources/gen-ui-png.py b/original-resources/gen-ui-png.py index c1f2bbd..cb3fa7d 100755 --- a/original-resources/gen-ui-png.py +++ b/original-resources/gen-ui-png.py @@ -25,6 +25,7 @@ ids = [ 'palette', 'play', 'play_saved', + 'power_off', 'replay', 'share', 'snap_off',