From fc07c497ce6b6ee2e953e18eaf9d094c4615bc10 Mon Sep 17 00:00:00 2001 From: RandomityGuy <31925790+RandomityGuy@users.noreply.github.com> Date: Sun, 25 Jun 2023 23:48:23 +0530 Subject: [PATCH] working level select and play --- data/ui/game/CloudBG.jpg | Bin 0 -> 18872 bytes data/ui/game/blastbar.png | Bin 4388 -> 0 bytes data/ui/game/blastbar_bargray.png | Bin 4020 -> 0 bytes data/ui/game/blastbar_bargreen.png | Bin 4027 -> 0 bytes data/ui/game/blastbar_charged.png | Bin 5201 -> 0 bytes data/ui/game/go.png | Bin 6112 -> 0 bytes data/ui/game/outofbounds.png | Bin 18880 -> 0 bytes data/ui/game/ready.png | Bin 11909 -> 0 bytes data/ui/game/set.png | Bin 6949 -> 0 bytes data/ui/game/transparency.png | Bin 3040 -> 0 bytes src/MarbleGame.hx | 18 +++-- src/MarbleWorld.hx | 2 - src/PreviewWorld.hx | 13 ++- src/Sky.hx | 126 +++++++++++++++-------------- src/gui/ExitGameDlg.hx | 5 +- src/gui/GuiLoadAnim.hx | 19 +++++ src/gui/GuiXboxOptionsList.hx | 5 ++ src/gui/LevelSelectGui.hx | 65 ++++++++++++--- src/gui/LoadingGui.hx | 101 +++++++++-------------- 19 files changed, 210 insertions(+), 144 deletions(-) create mode 100644 data/ui/game/CloudBG.jpg delete mode 100644 data/ui/game/blastbar.png delete mode 100644 data/ui/game/blastbar_bargray.png delete mode 100644 data/ui/game/blastbar_bargreen.png delete mode 100644 data/ui/game/blastbar_charged.png delete mode 100644 data/ui/game/go.png delete mode 100644 data/ui/game/outofbounds.png delete mode 100644 data/ui/game/ready.png delete mode 100644 data/ui/game/set.png delete mode 100644 data/ui/game/transparency.png create mode 100644 src/gui/GuiLoadAnim.hx diff --git a/data/ui/game/CloudBG.jpg b/data/ui/game/CloudBG.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7e639aa3058bd98d95d3843907987b753ff5f867 GIT binary patch literal 18872 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 literal 0 HcmV?d00001 diff --git a/data/ui/game/blastbar.png b/data/ui/game/blastbar.png deleted file mode 100644 index 114f8337ffdcb66f283f33fa88136b9529066d37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4388 zcmV+<5!>#GP)KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(`>RI+y?e7jKeZ#YO-C z22n{wK~#9!?3-PPT~`&yf9srcGvmz7OjBz=pdiG_gAWFj`qcO!)MzVKu#H*}N*@A3 z{iNiS z+k5oscU||s1J9{sOV`ez<0cR+3;-q?*926f)6roZNK@^`EKG4s9ncKWWFR1_ov{%^ zlaU#yL}fUjZg}m$aa_!e-~I2#&&*JBzzspn+aeZiX&uu21Wd!-n63kNP!(^JwV$}2 z;m&8_xzm)Bzt1LM zwPS*rI~g%jNb3|{u|!)md`cw3SABNWa5i_8a6XY3O(gt1QN4WTnez`F`Vw#kSS@3yH57Xt0VF(UX%u5c?RF!86KB;%M11MV|o(8z8F;T~t`N4uasAy9`o9=A~aH?zH?ULE=Os15i zC<OAT0k}&8iDWuj`uP1{qbP0x zmVjLhT=OjQ;B9RjK`zV-JidwJ5!fyp6j~8 zpyh)zVDXmk{rq?~-gB38r~VNQMS%%Qy9q+aeX1FmS*RX@ly3P@)d}b8o8ZCS8mdmV z8_ubsp-#{V4=ZsWZAPVr21(zl8{(yL+#aTmyA@}QgH!gFchU|()zuxrs5Wql*h)nKpB{!YaCCGGlq6xs(C&Ov)@pq|65c2qlGBHaB z>5g6yG}Wd)dF%;b71#jMl%fMzUby|v+vY!V-^2Ox4f~m&Tk2E?Zsks+WTA9$WkeV_ zqRo?SnMh>$F$$zxCG%cuSfoF)_6e9k{mQKk1@hCxIS**|76K ehAqEr_}2hO8d{g-E66PX0000ep6kA!=XWAa&LViYM7aO}01who z?;P{Z!n_4ISeehnY*T#zfJ+AthnpbbaF7X!=!kd20RV)jF{ zsRhx?oS-)+4fg^~BauNStl^>3-g-L>1O;TzJD9&kD#U4Z-$se&si5s4>;k zAL*mIa?Td2&iAJ?8qov2V^4c}oo4-eDgY+mLx8np6ibjwHcD`2vc_uno|gJ0)_wde zyeO6zgN}|s#Ihc1=XaWBTG~CshSJ3uaF9dgd--Y;Y0vKUz<7z{aLJtjF8!`!8UfP6 zBdkegr7uOG>%dnF$+FOJC8$s~=j{g)L-oaOi+Q6*E1OeOq=&Ob(QP8nRWhlSCjIGB zgE>@SwpFUsN2i=C>^Pb^G956obflwW`KA#-Q83N6bxbs>|j;nK}W-C~wqe*pV2LJFeqA!%~x~3=`R7||C z&mx5;q&de=7m7_!qq|3)SE_pl4hEPpG@CB3Sg58DXdP$lwFxSrFjs4nSG|&H01jZZ-+^pLWS`M^8<;d9q}=f{%VazLph2d{rH; zwv^T~vv&SuuCP|{VdP$Aoc>5|UhZkV*4ACTDRc+M694+p3pM;dn(O3mX1x%e3;S$g z`ZcdT_hmGRnXbX7T_PIW>Su1Zz5^};D^~H-L)>W z`cGcuSK?}_dhT2pU+ftRz5HWrRh-)@%6-sCN5X7$aaXJZN$R$|NX|g0TMg^(ICkcs{cO02=E7mJXa$G$)zw?C&f4r zwJjg@eD>aC7k=@6@Km`FjQ44+@ZkP00QoT6+C&cRCJwfC0~E*pIX&Gtlq8G5A=h|` zJFNNo>2bVw_CJd;jK4I@wlg9dle$l+L1ZWbO&!FZ$8=*)DR!mWr=B+w9zEvBuN=G* zau?h6Fc&5BK+Bu+n81w~h5GY$v33_rQXaCs#Y~+P<86E)@=44ipnRVd)Lpd*_>`}Q zS{XE1$1^BB=kr{yUvM^rug3EW_R66uu0XNCg9EYR4b?JnoR&b>5WYj#L6UBg=KP`@ zV;qc7fm#*Q;CseoiEw`3dMm8#!)tGKo+HJi&n5~Y!zG2!Ny?^`1)C#XB&?-1rD=x} zo7EiOmQa}B6GWHK_IyMq}^^@vLQ>o_(!3j@y8|Q0}m%Nd>dq`BbhEyx6b~Sd-&yNO9DlhW{+YJGiIc)z962%~HX=Gw`s&=yT1C5M<#Qr;sfpA|YV5qq z=rj5d{r$0Gyv_P^+2j>DceyLc63LFqEXlF=jVy>=f?XN+3HOaV6XsEDYAXo^aMsz|zfdUN_n`j|>% znX@JLW1!`T<=A5z#pJY^R&z(G(rC5p!lLOsg?8ATz5>lc`+KD*r<}8;ZF{T}z!#6} zJhggiM$t7s4M9O{i%n;_rNMGBQasoJOttm#$nLaw zpFCtax!QWBCuYpMo>1TSRskz#p=VVX!j1SNrCBzKpH*tQiAO03UFE=DGtk0G?-uaYH$G@9+ZF z)v(l5hKNJn*h*S;3bE>bhkJ)g&PlD-C0t z-ZUYiV}wo%Q4E?9FZH_+XY~E_Q}j=#pybh|!v<7KDkxV|NPPcZKS^&={?ePi(-A{c zpSXr*z{*zFOQ+tE9*^X=(2L@1YtWbE4(=B}Fu=baxu-UN#HeV&_8Daa*ppZpv6e8_ zaC9tY&UzX5Jsy}6`Y5zrFQwi((jHla+>0DyHP(6j(d&`z*Wls&q`0IUS>^op{D0s> z%a+SJbfqv+B}c85HDzd!I+Ywnc*QGx*NnxU+uH5%Mn^o+j+Lp`ei(f-q)Oh9x{Bs5 zb$Qh9gurFJGHn$YT^LRuc5gY*Jm0()pz5ef@p7v2{t^DYMs>!Ow=k@`$m;#GvlQ!^ ziotJHld%L4!LavBi$O~aZvTLLRDY-GEz^=JJLl5b(FWaTx~79Pg|>^lZZF;Tx=r^v zmKM6aPm!=`|AuY(6!pni>O;ch0NVe;N?+?@=rrx_;@vgMM{f?whraQOc~lw}ZPWX@ z=%aPvNbA?zU!PW9n5sIDxp>Kr430pBk6NXES$c^!i5m z-yfG@WGy~2O9&_rc1{>$Xz?`0>ZH1lqVqDdYN3;kBwA{$s1wYmolM3jdL7>lypmqIa&&fUEr0 zZ9Zs@`}Z^2+4K2qv|2BpU^p}Er-p9Ja2d;G-q$K*bS?Kd=F=9YZuQvFOaE|+4KIg7 z){|F?jq7&M^XW$o$_yqDg$O!zh1z%d;lj%=E!32bp|EP%A5WH&+Y7P+C~Gt)Y;*k= z*Y?RYtyBH?s?=7y7YSnypNBgr_}SdNsQ!W~t;JwQ_L}`dWBmA(@v?DpR*V+q3g`E) zKGFoo(SfDV`8B9II)M34$?0K;_5=X9_iWrOfb^UD007{7yg7=DI%A}6Pb7db4n!;t z>_hNivH<`MA9d!CfFol-J_I*+Pjw$niA{z&bG!jVBtV-Kva6;9>Wm2pP9)(#s$eBB zR075Y0)aG04vy;Q^bCHvGru$?oXKPlbqIt)p@1pMU?Ry0qNJv#22q4Upil)SL&4M6 zos98OaQ8g?GsvHD^l+Z`B)kV1Pjm-u#KmBVUSv%PiH$_Rub=ZI;~oFX^>Nf3gq8pK9=7F)tZHTcQ+Ron0 zg5Hwl_|`OA4F7LU9PEELx`!9ZZL`fC>>)Te9CN{BPo^kJ|Js2L_UfKqSQnf<`Oh-^ zZ0XHn=wh58TVM^y-`W4SYBD$c@2UUG&hf!`{JoY;w)z>O1K!bB4@1Vmpo&V$3W{n9 zN{Z%CWpzb0brnSo$TrTF8f{qMBpilJB$*S5Zm`XA5jH+SP%v|EY`6c{D*aS|dDy_X zn4W(gTrjSA5Q4@$%b-X-9dnKY3Q;YbFSPl?LKqa~J{tWIJR$KGOc`z|mkmVMi%)*b jlhj(eL>-v2YfH97At_~76w#0+ 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 diff --git a/data/ui/game/blastbar_charged.png b/data/ui/game/blastbar_charged.png deleted file mode 100644 index 0159eab879f9bafe6eac49ba787b51759bcfda42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5201 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 LNkvXXu0mjf;*9)S diff --git a/data/ui/game/go.png b/data/ui/game/go.png deleted file mode 100644 index 373172b952e7abedf153bae8ec796097fec73d91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6112 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 ToZLvR00000NkvXXu0mjf@oOyw diff --git a/data/ui/game/ready.png b/data/ui/game/ready.png deleted file mode 100644 index cb98e9e41c2b736134b16fdd76211bdff1beebdd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11909 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 isHmtmN>R}?{dWLj$a0h!=*f2g0000 { lock = false; this._resourcesLoaded++; - this.loadingGui.setProgress((1 - resourceLoadFuncs.length / _loadingLength)); }); #end #if js func(() -> { lock = false; - this.loadingGui.setProgress((1 - resourceLoadFuncs.length / _loadingLength)); this._resourcesLoaded++; }); #end diff --git a/src/PreviewWorld.hx b/src/PreviewWorld.hx index 93c99360..e1b763d0 100644 --- a/src/PreviewWorld.hx +++ b/src/PreviewWorld.hx @@ -66,6 +66,8 @@ class PreviewWorld extends Scheduler { var sky:Sky; + var itrAddTime:Float = 0; + public function new(scene:Scene) { this.scene = scene; } @@ -183,8 +185,15 @@ class PreviewWorld extends Scheduler { var worker = new ResourceLoaderWorker(onFinish); worker.addTask(fwd -> addScenery(difficulty, fwd)); + itrAddTime = 0; for (elem in itrpaths) { - worker.addTask(fwd -> addInteriorFromMis(cast elem, fwd)); + worker.addTask(fwd -> { + var startTime = Sys.time(); + addInteriorFromMis(cast elem, () -> { + itrAddTime += Sys.time() - startTime; + fwd(); + }); + }); } for (elem in shapeDbs) { worker.addTask(fwd -> addStaticShape(cast elem, fwd)); @@ -192,6 +201,7 @@ class PreviewWorld extends Scheduler { worker.addTask(fwd -> { timeState.timeSinceLoad = 0; timeState.dt = 0; + Console.log('ITR ADD TIME: ' + itrAddTime); fwd(); }); worker.run(); @@ -238,6 +248,7 @@ class PreviewWorld extends Scheduler { } public function destroyAllObjects() { + currentMission = null; for (itr in interiors) { itr.dispose(); } diff --git a/src/Sky.hx b/src/Sky.hx index a5773991..268ef509 100644 --- a/src/Sky.hx +++ b/src/Sky.hx @@ -27,6 +27,8 @@ class Sky extends Object { var imageResources:Array> = []; + static var cubemapTextureCache:Map = []; + public function new() { super(); } @@ -111,68 +113,74 @@ class Sky extends Object { var noSkyTexture = element.useskytextures == "0"; var worker = new ResourceLoaderWorker(() -> { - var fnames = []; - for (i in 0...6) { - var line = StringTools.trim(lines[i]); - var filenames = ResourceLoader.getFullNamesOf(dmlDirectory + '/' + line); - if (filenames.length == 0 || noSkyTexture) { - var pixels = Texture.fromColor(skyColor.toColor()).capturePixels(0, 0); - skyboxImages.push(pixels); - // var tex = new h3d.mat.Texture(); - // skyboxImages.push(new BitmapData(128, 128)); - fnames.push(""); - Console.error("Skybox image " + filenames[0] + " does not exist"); - } else { - // var pixels = ResourceLoader.getTexture(filenames[0]).resource.capturePixels(0, 0); - fnames.push(filenames[0]); - var pixels = ResourceLoader.getImagePixels(filenames[0]); - skyboxImages.push(pixels); + var cubemaptexture:Texture = null; + if (cubemapTextureCache.exists(dmlPath)) + cubemaptexture = cubemapTextureCache.get(dmlPath); + else { + var fnames = []; + for (i in 0...6) { + var line = StringTools.trim(lines[i]); + var filenames = ResourceLoader.getFullNamesOf(dmlDirectory + '/' + line); + if (filenames.length == 0 || noSkyTexture) { + var pixels = Texture.fromColor(skyColor.toColor()).capturePixels(0, 0); + skyboxImages.push(pixels); + // var tex = new h3d.mat.Texture(); + // skyboxImages.push(new BitmapData(128, 128)); + fnames.push(""); + Console.error("Skybox image " + filenames[0] + " does not exist"); + } else { + // var pixels = ResourceLoader.getTexture(filenames[0]).resource.capturePixels(0, 0); + fnames.push(filenames[0]); + var pixels = ResourceLoader.getImagePixels(filenames[0]); + skyboxImages.push(pixels); + } + } + var maxwidth = 0; + var maxheight = 0; + for (texture in skyboxImages) { + if (texture.height > maxheight) + maxheight = texture.height; + if (texture.width > maxwidth) + maxwidth = texture.width; } - } - var maxwidth = 0; - var maxheight = 0; - for (texture in skyboxImages) { - if (texture.height > maxheight) - maxheight = texture.height; - if (texture.width > maxwidth) - maxwidth = texture.width; - } - // Handle the bmp files specially to flip y - if (StringTools.endsWith(fnames[0].toLowerCase(), ".bmp")) { - Util.flipImage(skyboxImages[0], true, true); - } else - Util.flipImage(skyboxImages[0], true, false); - if (StringTools.endsWith(fnames[4].toLowerCase(), ".bmp")) { - Util.flipImage(skyboxImages[4], true, true); - } else - Util.flipImage(skyboxImages[4], true, false); - Util.rotateImage(skyboxImages[5], Math.PI); - if (StringTools.endsWith(fnames[5].toLowerCase(), ".bmp")) { - Util.flipImage(skyboxImages[5], true, true); - } else - Util.flipImage(skyboxImages[5], true, false); - Util.rotateImage(skyboxImages[1], -Math.PI / 2); - if (StringTools.endsWith(fnames[1].toLowerCase(), ".bmp")) { - // Util.flipImage(skyboxImages[1], true, true); - } else - Util.flipImage(skyboxImages[1], true, false); - Util.rotateImage(skyboxImages[2], Math.PI); - if (StringTools.endsWith(fnames[2].toLowerCase(), ".bmp")) { - Util.flipImage(skyboxImages[2], true, true); - // Util.flipImage(skyboxImages[2], true, false); - } else - Util.flipImage(skyboxImages[2], true, false); - Util.rotateImage(skyboxImages[3], Math.PI / 2); - if (StringTools.endsWith(fnames[3].toLowerCase(), ".bmp")) { - // Util.flipImage(skyboxImages[3], true, false); - // Util.flipImage(skyboxImages[3], false, true); - } else - Util.flipImage(skyboxImages[3], true, false); + // Handle the bmp files specially to flip y + if (StringTools.endsWith(fnames[0].toLowerCase(), ".bmp")) { + Util.flipImage(skyboxImages[0], true, true); + } else + Util.flipImage(skyboxImages[0], true, false); + if (StringTools.endsWith(fnames[4].toLowerCase(), ".bmp")) { + Util.flipImage(skyboxImages[4], true, true); + } else + Util.flipImage(skyboxImages[4], true, false); + Util.rotateImage(skyboxImages[5], Math.PI); + if (StringTools.endsWith(fnames[5].toLowerCase(), ".bmp")) { + Util.flipImage(skyboxImages[5], true, true); + } else + Util.flipImage(skyboxImages[5], true, false); + Util.rotateImage(skyboxImages[1], -Math.PI / 2); + if (StringTools.endsWith(fnames[1].toLowerCase(), ".bmp")) { + // Util.flipImage(skyboxImages[1], true, true); + } else + Util.flipImage(skyboxImages[1], true, false); + Util.rotateImage(skyboxImages[2], Math.PI); + if (StringTools.endsWith(fnames[2].toLowerCase(), ".bmp")) { + Util.flipImage(skyboxImages[2], true, true); + // Util.flipImage(skyboxImages[2], true, false); + } else + Util.flipImage(skyboxImages[2], true, false); + Util.rotateImage(skyboxImages[3], Math.PI / 2); + if (StringTools.endsWith(fnames[3].toLowerCase(), ".bmp")) { + // Util.flipImage(skyboxImages[3], true, false); + // Util.flipImage(skyboxImages[3], false, true); + } else + Util.flipImage(skyboxImages[3], true, false); - var cubemaptexture = new Texture(maxheight, maxwidth, [Cube]); - for (i in 0...6) { - cubemaptexture.uploadPixels(skyboxImages[skyboxIndices[i]], 0, i); + cubemaptexture = new Texture(maxheight, maxwidth, [Cube]); + for (i in 0...6) { + cubemaptexture.uploadPixels(skyboxImages[skyboxIndices[i]], 0, i); + } + cubemapTextureCache.set(dmlPath, cubemaptexture); } onFinish(cubemaptexture); }); diff --git a/src/gui/ExitGameDlg.hx b/src/gui/ExitGameDlg.hx index 0e703071..9180e4ae 100644 --- a/src/gui/ExitGameDlg.hx +++ b/src/gui/ExitGameDlg.hx @@ -76,6 +76,9 @@ class ExitGameDlg extends GuiImage { btnList.addButton(3, "Help & Options", (evt) -> {}, 20); btnList.addButton(2, "Leaderboards", (evt) -> {}); btnList.addButton(2, "Achievements", (evt) -> {}); - btnList.addButton(4, "Main Menu", (evt) -> yesFunc(btnList)); + btnList.addButton(4, "Main Menu", (evt) -> { + yesFunc(btnList); + MarbleGame.canvas.setContent(new MainMenuGui()); + }); } } diff --git a/src/gui/GuiLoadAnim.hx b/src/gui/GuiLoadAnim.hx new file mode 100644 index 00000000..928516f1 --- /dev/null +++ b/src/gui/GuiLoadAnim.hx @@ -0,0 +1,19 @@ +package gui; + +import src.ResourceLoader; + +class GuiLoadAnim extends GuiAnim { + public function new() { + var img = ResourceLoader.getImage("data/ui/xbox/loadingAnimation.png").resource.toTile(); + var f1 = img.sub(0, 1, 63, 63); + var f2 = img.sub(64, 1, 63, 63); + var f3 = img.sub(0, 65, 63, 63); + var f4 = img.sub(64, 65, 63, 63); + var f5 = img.sub(0, 129, 63, 63); + var f6 = img.sub(64, 129, 63, 63); + var f7 = img.sub(0, 193, 63, 63); + super([f1, f2, f3, f4, f5, f6, f7]); + this.anim.loop = true; + this.anim.speed = 20; + } +} diff --git a/src/gui/GuiXboxOptionsList.hx b/src/gui/GuiXboxOptionsList.hx index f7c35a27..42866ea7 100644 --- a/src/gui/GuiXboxOptionsList.hx +++ b/src/gui/GuiXboxOptionsList.hx @@ -170,4 +170,9 @@ class GuiXboxOptionsList extends GuiControl { } super.update(dt, mouseState); } + + public function setCurrentOption(opt:Int) { + currentOption = opt; + optionText.text.text = options[currentOption]; + } } diff --git a/src/gui/LevelSelectGui.hx b/src/gui/LevelSelectGui.hx index 4ee3d752..be3eaac9 100644 --- a/src/gui/LevelSelectGui.hx +++ b/src/gui/LevelSelectGui.hx @@ -16,9 +16,50 @@ class LevelSelectGui extends GuiImage { static var currentDifficultyStatic:String = "beginner"; public function new(difficulty:String) { - var res = ResourceLoader.getImage("data/ui/xbox/BG_fadeOutSoftEdge.png").resource.toTile(); + var res = ResourceLoader.getImage("data/ui/game/CloudBG.jpg").resource.toTile(); super(res); + var arial14fontdata = ResourceLoader.getFileEntry("data/font/Arial Bold.fnt"); + var arial14b = new BitmapFont(arial14fontdata.entry); + @:privateAccess arial14b.loader = ResourceLoader.loader; + var arial14 = arial14b.toSdfFont(cast 21 * Settings.uiScale, h2d.Font.SDFChannel.MultiChannel); + function mlFontLoader(text:String) { + return arial14; + } + + var fadeEdge = new GuiImage(ResourceLoader.getResource("data/ui/xbox/BG_fadeOutSoftEdge.png", ResourceLoader.getImage, this.imageResources).toTile()); + fadeEdge.position = new Vector(0, 0); + fadeEdge.extent = new Vector(640, 480); + fadeEdge.vertSizing = Height; + fadeEdge.horizSizing = Width; + this.addChild(fadeEdge); + + var loadAnim = new GuiLoadAnim(); + loadAnim.position = new Vector(610, 253); + loadAnim.extent = new Vector(63, 63); + loadAnim.horizSizing = Center; + loadAnim.vertSizing = Bottom; + this.addChild(loadAnim); + + var loadTextBg = new GuiText(arial14); + loadTextBg.position = new Vector(608, 335); + loadTextBg.extent = new Vector(63, 40); + loadTextBg.horizSizing = Center; + loadTextBg.vertSizing = Bottom; + loadTextBg.justify = Center; + loadTextBg.text.text = "Loading"; + loadTextBg.text.textColor = 0; + this.addChild(loadTextBg); + + var loadText = new GuiText(arial14); + loadText.position = new Vector(610, 334); + loadText.extent = new Vector(63, 40); + loadText.horizSizing = Center; + loadText.vertSizing = Bottom; + loadText.justify = Center; + loadText.text.text = "Loading"; + this.addChild(loadText); + if (currentDifficultyStatic != difficulty) { currentSelectionStatic = 0; } @@ -32,6 +73,10 @@ class LevelSelectGui extends GuiImage { var misFile = Path.withoutExtension(Path.withoutDirectory(curMission.path)); MarbleGame.instance.setPreviewMission(misFile, () -> { lock = false; + this.bmp.visible = false; + loadAnim.anim.visible = false; + loadText.text.visible = false; + loadTextBg.text.visible = false; }); var domcasual32fontdata = ResourceLoader.getFileEntry("data/font/DomCasualD.fnt"); @@ -114,14 +159,6 @@ class LevelSelectGui extends GuiImage { statIcon.extent = new Vector(20, 20); levelWnd.addChild(statIcon); - var arial14fontdata = ResourceLoader.getFileEntry("data/font/Arial Bold.fnt"); - var arial14b = new BitmapFont(arial14fontdata.entry); - @:privateAccess arial14b.loader = ResourceLoader.loader; - var arial14 = arial14b.toSdfFont(cast 21 * Settings.uiScale, h2d.Font.SDFChannel.MultiChannel); - function mlFontLoader(text:String) { - return arial14; - } - var c0 = 0xEBEBEB; var c1 = 0x8DFF8D; var c2 = 0x88BCEE; @@ -151,12 +188,21 @@ class LevelSelectGui extends GuiImage { function setLevel(idx:Int) { if (lock) return false; + this.bmp.visible = true; + loadAnim.anim.visible = true; + loadText.text.visible = true; + loadTextBg.text.visible = true; lock = true; curMission = difficultyMissions[idx]; + currentSelectionStatic = idx; var misFile = Path.withoutExtension(Path.withoutDirectory(curMission.path)); var mis = difficultyMissions[idx]; MarbleGame.instance.setPreviewMission(misFile, () -> { lock = false; + this.bmp.visible = false; + loadAnim.anim.visible = false; + loadText.text.visible = false; + loadTextBg.text.visible = false; }); var myScore = Settings.getScores(mis.path); var scoreDisp = "None"; @@ -180,6 +226,7 @@ class LevelSelectGui extends GuiImage { levelSelectOpts.horizSizing = Right; levelSelectOpts.alwaysActive = true; levelSelectOpts.onChangeFunc = setLevel; + levelSelectOpts.setCurrentOption(currentSelectionStatic); innerCtrl.addChild(levelSelectOpts); } } diff --git a/src/gui/LoadingGui.hx b/src/gui/LoadingGui.hx index e75e190b..0273c0fc 100644 --- a/src/gui/LoadingGui.hx +++ b/src/gui/LoadingGui.hx @@ -8,77 +8,50 @@ import src.Settings; import src.Util; class LoadingGui extends GuiImage { - public var setProgress:Float->Void; - public function new(missionName:String, game:String) { - function chooseBg() { - if (game == "gold") - return ResourceLoader.getImage('data/ui/backgrounds/gold/${cast (Math.floor(Util.lerp(1, 12, Math.random())), Int)}.jpg'); - if (game == "platinum") - return ResourceLoader.getImage('data/ui/backgrounds/platinum/${cast (Math.floor(Util.lerp(1, 28, Math.random())), Int)}.jpg'); - if (game == "ultra") - return ResourceLoader.getImage('data/ui/backgrounds/ultra/${cast (Math.floor(Util.lerp(1, 9, Math.random())), Int)}.jpg'); - return ResourceLoader.getImage('data/ui/backgrounds/platinum/${cast (Math.floor(Util.lerp(1, 28, Math.random())), Int)}.jpg'); - } - - var img = chooseBg(); - super(img.resource.toTile()); + var res = ResourceLoader.getImage("data/ui/game/CloudBG.jpg").resource.toTile(); + super(res); + this.position = new Vector(); + this.extent = new Vector(640, 480); this.horizSizing = Width; this.vertSizing = Height; - this.extent = new Vector(640, 480); - this.position = new Vector(); - var loadingGui = new GuiImage(ResourceLoader.getResource("data/ui/loading/loadinggui.png", ResourceLoader.getImage, this.imageResources).toTile()); - loadingGui.horizSizing = Center; - loadingGui.vertSizing = Center; - loadingGui.position = new Vector(86, 77); - loadingGui.extent = new Vector(468, 325); + var fadeEdge = new GuiImage(ResourceLoader.getResource("data/ui/xbox/BG_fadeOutSoftEdge.png", ResourceLoader.getImage, this.imageResources).toTile()); + fadeEdge.position = new Vector(0, 0); + fadeEdge.extent = new Vector(640, 480); + fadeEdge.vertSizing = Height; + fadeEdge.horizSizing = Width; + this.addChild(fadeEdge); - function loadButtonImages(path:String) { - var normal = ResourceLoader.getResource('${path}_n.png', ResourceLoader.getImage, this.imageResources).toTile(); - var hover = ResourceLoader.getResource('${path}_h.png', ResourceLoader.getImage, this.imageResources).toTile(); - var pressed = ResourceLoader.getResource('${path}_d.png', ResourceLoader.getImage, this.imageResources).toTile(); - return [normal, hover, pressed]; - } + var arial14fontdata = ResourceLoader.getFileEntry("data/font/Arial Bold.fnt"); + var arial14b = new BitmapFont(arial14fontdata.entry); + @:privateAccess arial14b.loader = ResourceLoader.loader; + var arial14 = arial14b.toSdfFont(cast 21 * Settings.uiScale, h2d.Font.SDFChannel.MultiChannel); - var domcasual32fontdata = ResourceLoader.getFileEntry("data/font/DomCasualD.fnt"); - var domcasual32b = new BitmapFont(domcasual32fontdata.entry); - @:privateAccess domcasual32b.loader = ResourceLoader.loader; - var domcasual32 = domcasual32b.toSdfFont(cast 26 * Settings.uiScale, MultiChannel); + var loadAnim = new GuiLoadAnim(); + loadAnim.position = new Vector(610, 253); + loadAnim.extent = new Vector(63, 63); + loadAnim.horizSizing = Center; + loadAnim.vertSizing = Bottom; + this.addChild(loadAnim); - var mapName = new GuiText(domcasual32); - mapName.position = new Vector(6, 33); - mapName.extent = new Vector(456, 14); - mapName.text.text = missionName; - mapName.text.textColor = 0; - mapName.justify = Center; + var loadTextBg = new GuiText(arial14); + loadTextBg.position = new Vector(608, 335); + loadTextBg.extent = new Vector(63, 40); + loadTextBg.horizSizing = Center; + loadTextBg.vertSizing = Bottom; + loadTextBg.justify = Center; + loadTextBg.text.text = "Loading"; + loadTextBg.text.textColor = 0; + this.addChild(loadTextBg); - var progress = new GuiProgress(); - progress.vertSizing = Top; - progress.position = new Vector(194, 145); - progress.extent = new Vector(225, 56); - progress.progress = 0.5; - - setProgress = (progressPz) -> { - progress.progress = progressPz; - } - - var cancelButton = new GuiButton(loadButtonImages("data/ui/loading/cancel")); - cancelButton.position = new Vector(333, 243); - cancelButton.extent = new Vector(112, 59); - cancelButton.pressedAction = (sender) -> { - MarbleGame.instance.quitMission(); - } - - var overlay = new GuiImage(ResourceLoader.getResource("data/ui/loading/overlay.png", ResourceLoader.getImage, this.imageResources).toTile()); - overlay.position = new Vector(188, 139); - overlay.extent = new Vector(242, 75); - - loadingGui.addChild(mapName); - loadingGui.addChild(progress); - loadingGui.addChild(cancelButton); - loadingGui.addChild(overlay); - - this.addChild(loadingGui); + var loadText = new GuiText(arial14); + loadText.position = new Vector(610, 334); + loadText.extent = new Vector(63, 40); + loadText.horizSizing = Center; + loadText.vertSizing = Bottom; + loadText.justify = Center; + loadText.text.text = "Loading"; + this.addChild(loadText); } }