From 65128fcf1f22764afcf4ac7d3aee9cef6fa616cc Mon Sep 17 00:00:00 2001 From: Tabby <41929769+tabby-cat-nya@users.noreply.github.com> Date: Mon, 9 Jun 2025 02:17:00 +1000 Subject: [PATCH] gamers be gaming --- .editorconfig | 4 + .gitattributes | 4 +- .gitignore | 3 + Sprites/smol-blank.png | Bin 0 -> 1366 bytes Sprites/smol-blank.png.import | 34 ++++++ Sprites/smol-down.png | Bin 0 -> 1485 bytes Sprites/smol-down.png.import | 34 ++++++ Sprites/smol-left.png | Bin 0 -> 1465 bytes Sprites/smol-left.png.import | 34 ++++++ Sprites/smol-right.png | Bin 0 -> 1472 bytes Sprites/smol-right.png.import | 34 ++++++ Sprites/smol-up.png | Bin 0 -> 1463 bytes Sprites/smol-up.png.import | 34 ++++++ Sprites/token-arrow.png | Bin 0 -> 3228 bytes Sprites/token-arrow.png.import | 34 ++++++ Sprites/token-blank.png | Bin 0 -> 3020 bytes Sprites/token-blank.png.import | 34 ++++++ game.tscn | 211 +++++++++++++++++++++++++++++++++ game.tscn4139515006.tmp | 178 +++++++++++++++++++++++++++ icon.svg | 1 + icon.svg.import | 37 ++++++ logic.gd | 100 ++++++++++++++++ logic.gd.uid | 1 + project.godot | 52 ++++++++ 24 files changed, 827 insertions(+), 2 deletions(-) create mode 100644 .editorconfig create mode 100644 .gitignore create mode 100644 Sprites/smol-blank.png create mode 100644 Sprites/smol-blank.png.import create mode 100644 Sprites/smol-down.png create mode 100644 Sprites/smol-down.png.import create mode 100644 Sprites/smol-left.png create mode 100644 Sprites/smol-left.png.import create mode 100644 Sprites/smol-right.png create mode 100644 Sprites/smol-right.png.import create mode 100644 Sprites/smol-up.png create mode 100644 Sprites/smol-up.png.import create mode 100644 Sprites/token-arrow.png create mode 100644 Sprites/token-arrow.png.import create mode 100644 Sprites/token-blank.png create mode 100644 Sprites/token-blank.png.import create mode 100644 game.tscn create mode 100644 game.tscn4139515006.tmp create mode 100644 icon.svg create mode 100644 icon.svg.import create mode 100644 logic.gd create mode 100644 logic.gd.uid create mode 100644 project.godot diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..f28239b --- /dev/null +++ b/.editorconfig @@ -0,0 +1,4 @@ +root = true + +[*] +charset = utf-8 diff --git a/.gitattributes b/.gitattributes index dfe0770..8ad74f7 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,2 @@ -# Auto detect text files and perform LF normalization -* text=auto +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0af181c --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Godot 4+ specific ignores +.godot/ +/android/ diff --git a/Sprites/smol-blank.png b/Sprites/smol-blank.png new file mode 100644 index 0000000000000000000000000000000000000000..d8340ab314dd89c47d94dbdad14c5117f3e7c82b GIT binary patch literal 1366 zcmeAS@N?(olHy`uVBq!ia0vp^Mj*_=1|;R|J2nC-#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!phSslL`iUdT1k0gQ7S_~VrE{6o}X)of~lUN zp3(0;%-eu!wxvdRrg?g5F>nAmtPE0&tPG4mmKP99L)jqLXfQH^#hHL?Lq;YB0U#X( z#F_0ZVDT&<8w3)77^ELYqgl$p%)l^#oq+|Y!obMbfN=rDRFDqV1rU>_0NEhG1T=>U ztTM>b0?2~uGBhv%$-cb$&EnLpoGM^QuzI>UhGaNjowYw(#8Kq9zNU$SM8^V65na81 z9uNBy77B!Ph&8dj(bW-AOj;P)^@p`7OlwiuBDrlz^0_L#u3V0P8pQ;KMNJfhl5O_i zuYF%uUY7Q~?ESZQW%eK5o!#A%vj2BlTKc`5cvbaR!BaJNWZp1)-~H@Lf^qG3?f0rV z{o7g|JX(L??t~S(_YNFWd^Nk}W~L_xi%o;IcHp`{&Am{Y}fa3I>{q2p5VCMYmmBrlK)XoZ6PnhX{>zjcQlVFYC45b@$t5lm} zg7QBF?)Bf2J(J&>?@eCmauvN*{Ef5E#r*u?^nqE=+Q-V$IyKQYXTFJZ!Nga>=Q?(l zJt|)0ArmUkWd47hnJdS>2U^!u&bPTTIv z_R6ICD!a`ScY6`Z=3~)E#U!iOym`WIeCTZ^!+dF1wX{+X#b=N8&ekou{^6$>)84E@ zwr*YL^u97KKc#sj&PY~o`2^or%xCgq%(qNunryuVtIe4v`K__IvfV?Zi8b|Fk~Qb%gmU$uqrGMSRKhqKXUs2{IEyvG z@n&FmuC(9AIdks_pE2yHSeM)FqR5hT?@*{}*MX=Uxu?o;7P|xgRP%3~nQ!lvI6;>1s;*b3=DjSL74G){)!Z!phSslL`iUdT1k0gQ7S_~VrE{6o}X)of~lUN zp3(0;%-eu!wxvdRrg?g5F>nAmtPE0&tPG4mmKP99L)jqLXfQH^#hHL?Lq;YB0U#X( z#F_0ZVDT&<8w3)77^ELYqgl$p%)l^#oq+|Y!obMbfN=rDRFDqV1rU>_0NEhG1T=>U ztTM>b0?2~uGBhv%$-cb$&EnLpoGM^Q)Ofl$hGaNjowYk#)KTQv`>&lGQZ=qyINbtu zbhdOfWmIjPnz6xHNlQ%d4|mX#K*tYFN1PO|If>|m)HHEDTK!?BThhWNM&>3lq5b*K z-^`sk_ilB0T6yxP=E=on?|oCAkA{1H*N1FuZOnJv8m0#!vG%>~FZ=*yeCuo2SR|OQ+Dg zh_kW5wIIjq*Y}${za75j8vb);+sBK0I@fKoU^iT@dTz;DfsO~8Wy8ZcZ=B>iw8uJw zYtH$+l?JVa9XC}9wRC4Q2v$FQw_2O|pICd!%)>Tql2vODu>=cjj!A0wQJgvR!QEP| zH9htlytRBj@FrdJ%9*I;a*XBw9A4Id4)(9QLJgUGMe=%w{;j(3K=R0&DLYQueDt)~ zkZU1k<0{f7Y#_hVmtW3gxfr)Q$G#(RS?OIfBi0_0d@gb3t$A|B^3v-~qbO+4*(E7V zapA$*3T@>(3|Ti$u8L6aDsb78Hjjs0)rGC^ZqB)&&Ai(-Ik&R)|5QH5ab8%;Ytyrq z$Rmm$XJyPe;`GLOqOtdRC9w{3hyGV)$2*Rdi(6kVh}tCiDB+=Gb>2qrJcfBqjQzL&^KwHZfI{_%ivwi=DbaLFAK5>!Fqk|FZWJ4oto$ z$I0cSXdbFjBOu?9A9m^#Tj#bm33Z*RnSP!82h!KD^zuHsc0g^0pm_8&@yg9X8q)kn zv)hstb>3!2)N!c1kI*zRtLqeh)f=TOc1b_(;x4h<)5;<>r}RF1cuh@+$@QJLSas01 zMX_OAsgL_A&MMT;NKSFtqqKX$obEMiL{1&E{>bKWsPfk`fjb4+YN9<;oo?>XjWgD| zcZwskBYcC_yRe4h$!EM4=EMl*H?-GBI7M^V6~vb>4L@2u@r+l2S=_-p<}r6f%{khIQW@S6jHogfHZD zv3PrKO`Ic-`h(tAUJtfM2Aun|Rw%K&$k@?J@yYHZzENhJNk8s$y_-3a_34%GZmI_x z=l;7^Ztb#X%8f;DH@8ZJy|_EshChDI(P=Yf*9pH9k)EvC^dyVz$cO*#m!8X9ONu<^ zvy$Oi+ikw`qh_9O{nU2OS3k00g4MEhMhUDFj&7c^YcjLD!f}Tr<{1r}FMD-HKe}qD z(02d%Y^CjLadylCiM|`xa=dydaD>ak+U1s2$do{ijCD6EIfaCn9cxY=`YwDnJb_iB zr6Ge^!bwq4P2gzKYk@QCRMQVX&6DWe{=MAsO4fgd`2BY>E2`{gg32UMS3j3^P6!lvI6;>1s;*b3=DjSL74G){)!Z!phSslL`iUdT1k0gQ7S_~VrE{6o}X)of~lUN zp3(0;%-eu!wxvdRrg?g5F>nAmtPE0&tPG4mmKP99L)jqLXfQH^#hHL?Lq;YB0U#X( z#F_0ZVDT&<8w3)77^ELYqgl$p%)l^#oq+|Y!obMbfN=rDRFDqV1rU>_0NEhG1T=>U ztTM>b0?2~uGBhv%$-cb$&EnLpoGM^QWO%wbhGaOOo#ojf;wjR$`S#Li7SZc&69lhc zbnb3mz^tch#a?LHrG4%ouc%||!De@UqXlwDj=f#b(`Ura>T0uMheAekS5-myl)#Pb zQv(HVr@s05zeazvmXXnFqt%ue8^#Ps#e)@zw_+GHNmGYY24)CdE*?R7^+p%R@by} zcaWO$MnQ=iy&K$Cb$yV(!s492q{lr++28~7A>)-?7r3Q(c^iK@_6p4Y#+cPU&%uA; zqnNgtnX|-IrwPuu(YGORmB1{;y3|YmYFXztS*$qpa8G8-Lj54O;4iBa9|<1fSjlvz zX@}la?%CBMU2;Ck32n8Ko{q`}ALSaGkEY0o?7l2~VBSL^p?!5*51dgwtE<#|;7E3h zW6;x$Tv-#gB+Y3%RR90PJWf+4;p+lwUQ0_FuX#m@-iVRfl*uvM_^VWHLXuun<|6A5 zU*QysEdiGpWTkj{lnoBbS!qr^R37FXRm$eDS@rB?W&dU7tVvtcB32r@i~sqNY$~pN z%lDZ<^tz2<4<_aFs7;?O_4io(MU8@ntA{3VC9O~5eZjJQ={&)6{W9Gq*Q9bb)f(PA zHoeMX)Ag2hQl}rB;;nh#AGL&YeUaM!kFBVClb%`9o!YYhM5}Yu6{c^(Cx72?KK(dp_G6#; zWv)DH5+}0hFL*pjE4NdQ)X8S!GrE?_?wzCVI$qkMR zKjWQN`ml59*??ZVgK`Tc=lz*Er(u)9X7)!v7oX(Y@^R-gyJ><)>)000%;GhU+gtAV z?c~Gc88?>fbbL~$l=uF)@{j0Ab~YWqLoan5So?Cn3hxI-wIBLj0bF@KZnG5kJ0z?4 zvVLPqf1$pe>k^+Z>-H<%?>-cr=V(-a^6*T{shd|GfBruI!u~u_H)$WAOE!}hx!EMV z&~=Jm>GYuPMu^6_LeqSo^-f3MzkGI(#s5*a&~1)JNjbA0+gU|h{$3VWQ_8!QD@rT_ZMz7_~3Br$CQ*K%xz{0ZzinLx$)to!Gst6CO@a7s>siHWZ!1y{Kwi? mrq40@!jGo!lvI6;>1s;*b3=DjSL74G){)!Z!phSslL`iUdT1k0gQ7S_~VrE{6o}X)of~lUN zp3(0;%-eu!wxvdRrg?g5F>nAmtPE0&tPG4mmKP99L)jqLXfQH^#hHL?Lq;YB0U#X( z#F_0ZVDT&<8w3)77^ELYqgl$p%)l^#oq+|Y!obMbfN=rDRFDqV1rU>_0NEhG1T=>U ztTM>b0?2~uGBhv%$-cb$&EnLpoGM^QX zbLFiu&O96Wk0k5*8fa(6K7+lEALR7p%`RYi6*h-E-LGecILfNRZ2tgOLsG9mSK_0+@}Nph0~YuX@_iXIefXkHO6}LzN?^Uy=V-l+lDqQtSUbX75*}f-QMG>JA z3uh^WI_ti^(R>->lOCQh(I6{xHGRJm6P~}5QeJhgw$EZo&DXx%6ZNq-19;7Y zw%?bbiygl6Yq46Z6d`#XXi6Rptzo4btv)GOphO{pHDtIe$RztY3oypDz z?db=PGEXzr{IT=Orm_`UYdqXNr*2y%>afn~sDtu;mC%1H!WhB}OS9{i^fDD>m^$tB z()jT1sANW`U~0uBhqoEIErJGH-g&QLv8$ij9>dBti=)9!&vTVcu�&yxiclP77N z4?XR0l8s61>nd*Dnx&3!xMIRfEsk~ls9ZbCz>`N&dY#X#oHLR)7irB2@}1zqGvWR! zJ%d&Ap7!Jfh}J30QeA7&x5CQiS$8f=-;La|`wv%SsUD20n|8%jH~!9ZkKR=u7!#vT z%l*$g886akTiWx0!C&z++tK~&Cdu9r{-L(A`#=A_cU=O-y>pk^C}%F)Ab(u7^rK|_ zzS=s0!yVI3#xOshYS+Aa??Jy%;m3U!q6KF?ywq%&zESJFs;>2J!L$>R=zRlbIZO>8jhZiL$En`bRZ3|32+`^63sg>e& z32leZ?6Fq+6MkASQ>P%_?at&Y&cZ%3{5R`ytxISPYx_{n|5?CuO>^Pm_iL6gnjCVu z=Xz(+E(YT}6~Fs9>g=@-yDptqwz{HX*CwWCi|0{ z^vN4b*M9w}aClbG9nNX`~~{g(M+Wm5zL^Y$f?QX6|K8aL(%{QHq3)MTx@ tS75EcA5qrlYIZB;xgFPc5I(f&ALCx{FRPh(b#H-+Ax~F7mvv4FO#m$eS402+ literal 0 HcmV?d00001 diff --git a/Sprites/smol-right.png.import b/Sprites/smol-right.png.import new file mode 100644 index 0000000..7c29672 --- /dev/null +++ b/Sprites/smol-right.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cmkql3pb4tbn8" +path="res://.godot/imported/smol-right.png-27e4b5e2a1e2b440b2b78d9f45084587.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/smol-right.png" +dest_files=["res://.godot/imported/smol-right.png-27e4b5e2a1e2b440b2b78d9f45084587.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Sprites/smol-up.png b/Sprites/smol-up.png new file mode 100644 index 0000000000000000000000000000000000000000..4b6827ce08e8b3925fed9d9b7292d461af3f7cd9 GIT binary patch literal 1463 zcmZ8heKgZ+9RKZ&wRst)cD2JsqE*b~EmGUKOcBfEc8P_g$cmcRGB)O&q+8yid*v-N z#1U?Y;ZAQ(hfS)(6j#@g#g$9fy}woWpZh)M^L##^@ALhBpXWS(Jel5JZki|q6aWC4 z40jhM$P^WjYT#;kP}mF-B!=lm14K{p^Pqu;Q$48w(43F{%tnBI3&;J37y!`fR{=5< zT^kA}aj~xcvB#oM$8y;h!vJq~#Q9hYFIQiJjfIs3WuqI`4%W1X`7=&47$g7*8U$bf zK>!d?d4SmdO{;EW4uO5iLqTl?fdUwiPk@NXfPcxK1+^-IL8$uwU)Mh zRx)x9OT`RwO==0|F3<5;%glUy5?mXlbX_5w>1|Cl#F|zHdpW$d#H>uAeWLHEH5s4$ z8F?)&)j_C$S?cKN?<44j1oT9ACWI$+hI8+R+fMvVt**DF&XvAjoEJ@8tRs+M)sPON z{N+^IdQNZpi0rVDZ%KXtjia2Kwy4{)Et>r+=1x*GUvUq7*Wa z@G^c^bxZn3*tix|zj)lN4I^CBl8GqlBf(wlK&oG9ka$ikqxxlE5yqQe@O+QrrLZ_f zq!_W$cq7en^U-3TKg=!!(@IykoJH}3Q5;Lw))^qO2!-aQ{cgL!Es)&e-_*)1-+^La zoAH-v0?ldk0uL2(g#H+nxwnj_o1r(?>!)vv^_#1YEBb_)DHB8~X5_|sy-qII?K}z) zZ{D+EPI6|qzdC|ncd9wsT^2xjy#R1Nf z+yGWQG_jiId7m_zb<=pQY-z_yO;1t%f{qcy?w`AS4;^PQw;6GqUerMP5S-7d9c7K` zTe)&3rx{F}eGlptajBKa$@$mM3h{|G$wQ{@!7`sMNfUdV-&$O~Pt`eknfOYQz-%%o zNu84>YzDi=IcZME^cN+JJ%3xDrCdQ)VU}-|&pJ&LqEyo!&HV_^sdxT_SAO*^)TH4m z8b7o#eXxtP`Y<}2NNe$<&jc11E9jk4T+poO;7}Ubi(NWs->uk9!p@>fO_rr)YXuYI zSjt}K&^tB)`J7BSjy=WAc8elLR@gWiNiuT0kzESn0?>|=OON^ti#-JEQI7@hTGwz< z-XZz+?N+7wU3y8pgDZHe$+ZQEtw|E*X)T#1PL$CSB)jF_?OjReXUR&UHO{B6SdCV& z2iM_%&SM&7U zZSk`kFzfw|%RobL6En0fE{$IS57mYrOKy`Ii>ta_1e$3qafaUfK!3C1tBMN-hChcGqob`|SG)%~^Mapl5p z!5M<^gPHuLcBjH{$;k>1S!^SjJ`fD>#LgZ4`FQ-2U&`CLK$=)>6%j aH(|Y@f4~0YacsHj_hGntxrk`Nss9374Nl+y literal 0 HcmV?d00001 diff --git a/Sprites/smol-up.png.import b/Sprites/smol-up.png.import new file mode 100644 index 0000000..41e886a --- /dev/null +++ b/Sprites/smol-up.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dj6mkweo8kgcs" +path="res://.godot/imported/smol-up.png-5b806d349790ea28a0054fca47589fdf.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/smol-up.png" +dest_files=["res://.godot/imported/smol-up.png-5b806d349790ea28a0054fca47589fdf.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Sprites/token-arrow.png b/Sprites/token-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..521ef45b4a9c54441ce53d58117e532cbc99164d GIT binary patch literal 3228 zcmZ8jc{r497aucJ7>uRY*p023Fc{Uyl4X=->|`lfCNq{KGL6dmT4qpTkhM}7OA;of zH+#l1wn)7(L`Lx%jkLX%LB3Jn_s@4<*LlwGoco;L^ShqszRq=LxH#E}iO7op001#N zTWdGI58AbTd-%`Dxtkt*ClKvsV+E*tsmS36g29%KmH+@fTXZW>h#w0_+WJHT0OE{Y z6X?58z1t2Y9``1?Umy@;0x#kLE`gyDM5NPk57om+10-s*71YG9X~KKk5$x;^0`~C( zA%MJq5I}&B?D?kfU%aaZE&%$K2lBCj01yD-`%`=ir3n7Yhw<_53gFvr|Ns2|y%Ycf z0CM&M1o;*EC_{aLyT4g?JB053X3FQ|-38?H0Do1w9W~;k|8^PZ>+kMz{$4d2m<+!P z0ElAktSvn*`z_x-eO>e9esb)IuP0nwTP1UnlA%hHRBNE1z7`xVD~*YR-b!Z&UYB5k za*P61tw9nHiz`VGXxBBUUbTUf)f`;PLg@zhtcOQ3b5^JaYb|+cy`yF_*ePaw=G;nj z&1&7}I=zi(q@vSWZO3@K=cBfWz*+8e>z7kz;W;x%C8Uy8o29X>vCGxsCuM>ob|bdV zSZBLfS|81(VtTCZ5?Xi5H9G|#NoFRYIcy>)h-1xhd4N?e{G9jsX4BwZ|L+Sf@Q8Hq zY>bf;FP)f0%+JrWq1D^_=aL5Qwzc|X;>gT&uTShajuj_lMgh=~6G3h2hnBQ*gV5F| z6dzEWu|<}f=GH$or(tIfoYhAtu)tKw3$GZ#v}}95*|zQfEO zb3^9FuDBT6RBp8=95snnP&3RLWso?-e=E@SSB?GVc212bfRZdf*V9z&f0%?e2u3$M z6rV#7keHxe`qlML=*_(OXQ+d^BnM4o-#7&H*`sW5aX$Tm;Tgl1&8{${gc-BkXM zAK>=|bClt@Zyv?p@_2aDe)6ICJ%i&>Y`npC{Fr^eh)U3)nOmI1pEnK+{t)pg6+s`PeJLLMRO98NYC_t&n~;!AuJUOVTy!;uvxa5qEobOKmyoujkaz+A z?wa$L@8vj0`B?Q10Sc9}xIVxj5e)B3nRbH^{ZYmPS#8Y3NJHVMoFjh8Q1La34bRoI zD6;~G7da%}PngUahaBw>lP<*uuH&JT1VSjuC^JYH0>TAGUy`2kw36#;I(NA$Th1u& zn8_KF3SAS$p2w+Bh-mC`a*@=O=P5C23fG}w?`MjCQd46m_#IyX&c{k;j+ZA|3e{s2 z!hDsaW^M=EYv`QxfbTX7ruUmHRSBdo&;R?nN5|0mWz@7x;nI4buvxrzjdU$HQf5#p z;9!V<6zL9b`|ZL;Y7>~P*7Sv0vV9%sc+!C{k04Bkod`_dKK}3PcpVgtv;F-3s6-i@ z$PNzwwQDBm)t}0$F6yYf;zvJ(;SQRxNW-Qz$@zTlVJVz-ZC9%`&wKj`0hfMjPP)3ag*<0RO5vvA z)~M@zdvtl=+uy7Ni6kw0*^$&z{MM-5{=Xu^?)=WbH5T&i)>yp>3uAbv3GZyzkMi>) zx%xJTl^sy2J<;aArw8Y67jx816puHiPO!!gcqtoUx~}zwKa_zkk#7F_oZO*D4<!_)`0&-U1nlWEfj+589icX0v-dGL!~W3^d-s@wHELv`rLQjon%EmQX1_RYJ=V z(9uQ))eOt^R{qQBtbfELuAFvz*zG~70VuqUZdQ)mq5YhyDv`yclwuiPOFO0DsGg3= zj23Q!#vYS`%|IqIsS}dvx_-~M#}>_(CyuEWnL7|ZZYx64DSH7CIl;4QagNnURT``^ z(D2IPkO%9IR~ky~}A9r@>A4>IIC zoNVfAzNRlfrbN<-IlHgo&dW%ciYeP5zlRWV6C z&4jM$pSEBUSX<&2EZ_Yrqp)ZEn!Jw)y;1CeX(ZX@{)oh~|K%o>RPqFCJ96F`gzD-e1UuvIp*msH zjO`~dE|StltJAIUu$jAS_-u`vvGLJe8uNzywIdpsr1BOAKZTasOBcBi(fP=ct6ga* z*ks2(8Jh{t#snzrp6$^h$?w9~z*P6zrpU+FRsLYYQKnL4GSjc6+1 zmM)^yf*QISfS8Ttr{V_b4@DD0e+?Yqq0@>< z`^jk^*46%fDDiWdEe7seqm_QDS{4+e=4s4nWq=yC{`&bb=I@73d!*fbJ6_znjplHVf0b}9cosI8;lA{OO)gGle zzzo}UdTtMs+HlN%DJ@s>Azv*sZ*#Fuz01#@lx)iUJfDhw3C0m5vgC6Q7ICM2_gms! zJL}j(=H^S&Inb#p)82l`l*(MjTk?S8Agig;S{dr15mW;r8-CehlYNcEcGR z;QE_M6B+KIVrpF6%+QSt2Rrj4*_k6Ua()Pwm1lzsbJD|CTBwM+HepKP?|J9OK1HA$ zSS`;Ju4Y5xJijmMzW$tzh-si<=Z{Fb= zuqpX_@S^Zs`!ii`Ym62~#`8CwGoTA8_m=g=50IELS$%VdP)o&CiF(^2!_eN^+7B)D zg-EI#<7j)Vyc{DmNKuV2PF%I5>xIeOV=G5GBk77#he6pDg&mk;EBN!0Wa`A0epdO2 zW&XAMHR36tFp3MM>!fXfW5(%h7Ov88;m$FV%3t~^$6yH)VJ~WQMbj20Jr1@V2BXqe z767#mD_D(q?|_wxv0;>Yg6b`c_qvCBU2JX`7Q%m+ccPBC=EQQv&Qm2hAL<3KqPt;d z7at#8_{S81cWu-N67ZT0zbWZccVdu`j_HjYl2E7L$nDVa@PS58BhF~67o4eieSjqv z#e_N)u=Svf2P5fl{g{^0pM$>U9vnR0U>#)*|=MOG(5;Q8Rs=yIvG;7Dxe%XZ^W z-kA!IW#qb(&C)n5$9r3(@dMn8eFjr|xnbdj0@1pch{LmBpG+{$hrBc;6Ia=*AFa6X zZO9(#WT+l>@@r9=J}7XkH-za3D%Rr`kZy)$&Ut%ZR*s8(W(VJRg4n%c+Z}hZuCoeA F{tpJiyrlpD literal 0 HcmV?d00001 diff --git a/Sprites/token-arrow.png.import b/Sprites/token-arrow.png.import new file mode 100644 index 0000000..e4e328c --- /dev/null +++ b/Sprites/token-arrow.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bj53f2x3s7a43" +path="res://.godot/imported/token-arrow.png-e38c8e0a7c32fb29b14645c2166378d2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/token-arrow.png" +dest_files=["res://.godot/imported/token-arrow.png-e38c8e0a7c32fb29b14645c2166378d2.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Sprites/token-blank.png b/Sprites/token-blank.png new file mode 100644 index 0000000000000000000000000000000000000000..4928f822bb44489c611ac536b6a61b6533a80b5c GIT binary patch literal 3020 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 S&AqmxFDb&v(y$KhmiS)=7*|IC literal 0 HcmV?d00001 diff --git a/Sprites/token-blank.png.import b/Sprites/token-blank.png.import new file mode 100644 index 0000000..dbd978a --- /dev/null +++ b/Sprites/token-blank.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dk6ygj130tlmy" +path="res://.godot/imported/token-blank.png-214933807261270cfe3fa5978972b459.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/token-blank.png" +dest_files=["res://.godot/imported/token-blank.png-214933807261270cfe3fa5978972b459.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/game.tscn b/game.tscn new file mode 100644 index 0000000..8a6d7d2 --- /dev/null +++ b/game.tscn @@ -0,0 +1,211 @@ +[gd_scene load_steps=7 format=3 uid="uid://sntwtley2f7d"] + +[ext_resource type="Texture2D" uid="uid://dj6mkweo8kgcs" path="res://Sprites/smol-up.png" id="1_80nbo"] +[ext_resource type="Script" uid="uid://c7c1yy0hv1u3r" path="res://logic.gd" id="1_e2o6t"] +[ext_resource type="Texture2D" uid="uid://cmkql3pb4tbn8" path="res://Sprites/smol-right.png" id="3_7jktm"] +[ext_resource type="Texture2D" uid="uid://ducbe6ucctlr6" path="res://Sprites/smol-down.png" id="4_ryrav"] +[ext_resource type="Texture2D" uid="uid://25g6athehh1s" path="res://Sprites/smol-left.png" id="5_eow3j"] +[ext_resource type="Texture2D" uid="uid://y2ytspjqefbk" path="res://Sprites/smol-blank.png" id="6_ryrav"] + +[node name="Node2D" type="Node2D" node_paths=PackedStringArray("icon_container", "progress_bar", "scroll_container")] +script = ExtResource("1_e2o6t") +icon_container = NodePath("CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer") +icons = Array[Texture]([ExtResource("1_80nbo"), ExtResource("3_7jktm"), ExtResource("4_ryrav"), ExtResource("5_eow3j"), ExtResource("6_ryrav")]) +progress_bar = NodePath("CanvasLayer/VBoxContainer/ProgressBar") +scroll_container = NodePath("CanvasLayer/VBoxContainer/HFlowContainer") + +[node name="CanvasLayer" type="CanvasLayer" parent="."] + +[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer"] +anchors_preset = 12 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_top = -136.0 +grow_horizontal = 2 +grow_vertical = 0 + +[node name="HFlowContainer" type="ScrollContainer" parent="CanvasLayer/VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 4 +vertical_scroll_mode = 0 + +[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/VBoxContainer/HFlowContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect2" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect3" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect4" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect5" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect6" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect7" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect8" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect9" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect10" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect11" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect12" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect13" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect14" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect15" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect16" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect17" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect18" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect19" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect20" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect21" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect22" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect23" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect24" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect25" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect26" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect27" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect28" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect29" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect30" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect31" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect32" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect33" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect34" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +visible = false +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="ProgressBar" type="ProgressBar" parent="CanvasLayer/VBoxContainer"] +layout_mode = 2 +max_value = 1.0 +step = 0.0 diff --git a/game.tscn4139515006.tmp b/game.tscn4139515006.tmp new file mode 100644 index 0000000..b5eac73 --- /dev/null +++ b/game.tscn4139515006.tmp @@ -0,0 +1,178 @@ +[gd_scene load_steps=7 format=3 uid="uid://sntwtley2f7d"] + +[ext_resource type="Texture2D" uid="uid://dj6mkweo8kgcs" path="res://Sprites/smol-up.png" id="1_80nbo"] +[ext_resource type="Script" uid="uid://c7c1yy0hv1u3r" path="res://logic.gd" id="1_e2o6t"] +[ext_resource type="Texture2D" uid="uid://cmkql3pb4tbn8" path="res://Sprites/smol-right.png" id="3_7jktm"] +[ext_resource type="Texture2D" uid="uid://ducbe6ucctlr6" path="res://Sprites/smol-down.png" id="4_ryrav"] +[ext_resource type="Texture2D" uid="uid://25g6athehh1s" path="res://Sprites/smol-left.png" id="5_eow3j"] +[ext_resource type="Texture2D" uid="uid://y2ytspjqefbk" path="res://Sprites/smol-blank.png" id="6_ryrav"] + +[node name="Node2D" type="Node2D" node_paths=PackedStringArray("icon_container", "progress_bar", "scroll_container")] +script = ExtResource("1_e2o6t") +code_len = 30 +icon_container = NodePath("CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer") +icons = Array[Texture]([ExtResource("1_80nbo"), ExtResource("3_7jktm"), ExtResource("4_ryrav"), ExtResource("5_eow3j"), ExtResource("6_ryrav")]) +progress_bar = NodePath("CanvasLayer/VBoxContainer/ProgressBar") +scroll_container = NodePath("CanvasLayer/VBoxContainer/HFlowContainer") + +[node name="CanvasLayer" type="CanvasLayer" parent="."] + +[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer"] +anchors_preset = 12 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_top = -136.0 +grow_horizontal = 2 +grow_vertical = 0 + +[node name="HFlowContainer" type="ScrollContainer" parent="CanvasLayer/VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 4 +vertical_scroll_mode = 0 + +[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/VBoxContainer/HFlowContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect2" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect3" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect4" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect5" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect6" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect7" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect8" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect9" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect10" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect11" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect12" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect13" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect14" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect15" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect16" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect17" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect18" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect19" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect20" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect21" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect22" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect23" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect24" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect25" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect26" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect27" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect28" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect29" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect30" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect31" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect32" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect33" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="TextureRect34" type="TextureRect" parent="CanvasLayer/VBoxContainer/HFlowContainer/HBoxContainer"] +layout_mode = 2 +texture = ExtResource("6_ryrav") + +[node name="ProgressBar" type="ProgressBar" parent="CanvasLayer/VBoxContainer"] +layout_mode = 2 +max_value = 1.0 +step = 0.0 diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..9d8b7fa --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..d1f682d --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://co1xhobfry7xn" +path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/logic.gd b/logic.gd new file mode 100644 index 0000000..a221d23 --- /dev/null +++ b/logic.gd @@ -0,0 +1,100 @@ +extends Node2D + +@export var code_len : int = 2 +@export var ghost_tokens : int = 2 +@export var allowed_time : float = 5 +@export var starting_lives : int = 3 +@export var icon_container: HBoxContainer +@export var icons : Array[Texture] +@export var progress_bar : ProgressBar +@export var scroll_container : ScrollContainer +var current_time : float = 5 +var score : int = 0 +var lives : int = 3 +var code : Array[int] +var code_rects : Array[TextureRect] +var gaming : bool = false +var codepos : int = 0 #current position in the code to check against +var test_break : float = 1.5 +var target_scroll : float + +# start scrolling at codepos == 11 + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + #start_round() + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta: float) -> void: + target_scroll = (codepos*50) - 550 + scroll_container.scroll_horizontal = lerpf(scroll_container.scroll_horizontal,target_scroll,0.05) + + + if gaming: + current_time -= delta + progress_bar.value = (5-current_time)/allowed_time + else: + test_break -= delta + if test_break <= 0: + start_round() + if Input.is_action_just_pressed("up"): + process_input(0) + elif Input.is_action_just_pressed("right"): + process_input(1) + elif Input.is_action_just_pressed("down"): + process_input(2) + elif Input.is_action_just_pressed("left"): + process_input(3) + +func start_round(): + current_time = allowed_time + codepos = 0 + generate_code() + gaming = true + + #scroll_container.scroll_horizontal = 0 + pass + +func process_input(direction : int): + if(code[codepos] == direction): + #correct input + icon_container.get_child(codepos).modulate = Color(0,1,0) + codepos += 1 + if(codepos == code_len): + win_round() + else: + #incorrect input + codepos = 0 + #scroll_container.scroll_horizontal = 0 + for i in range(code_len): + icon_container.get_child(i).modulate = Color(1,1,1) + +func win_round(): + gaming = false + codepos = 0 + test_break = 1.5 # todo: replace with gamer samurai animation stuff + if ghost_tokens > 0: + ghost_tokens -= 1 + code_len += 1 + else: + ghost_tokens = 2 + code_len -= 1 + +func generate_code(): + code.clear() + for child in icon_container.get_children(): + child.queue_free() + for i in range(code_len): + var ran_dir : int = randi_range(0,3) + code.append(ran_dir) + var new_texture_rect : TextureRect = TextureRect.new() + new_texture_rect.texture = icons[ran_dir] + icon_container.add_child(new_texture_rect) + for i in range(ghost_tokens): + var new_texture_rect : TextureRect = TextureRect.new() + new_texture_rect.texture = icons[4] + new_texture_rect.modulate = Color(1,1,1,0.25) + icon_container.add_child(new_texture_rect) + print(code) diff --git a/logic.gd.uid b/logic.gd.uid new file mode 100644 index 0000000..2020efe --- /dev/null +++ b/logic.gd.uid @@ -0,0 +1 @@ +uid://c7c1yy0hv1u3r diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..a112044 --- /dev/null +++ b/project.godot @@ -0,0 +1,52 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=5 + +[application] + +config/name="Samurai Sculpt Plus" +run/main_scene="uid://sntwtley2f7d" +config/features=PackedStringArray("4.4", "GL Compatibility") +config/icon="res://icon.svg" + +[display] + +window/stretch/mode="canvas_items" + +[input] + +up={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} +right={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} +down={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} +left={ +"deadzone": 0.2, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} + +[rendering] + +renderer/rendering_method="gl_compatibility" +renderer/rendering_method.mobile="gl_compatibility"