From 595ec61332d6e13c0e6f16ba696b0695d4447f2e Mon Sep 17 00:00:00 2001 From: Llywelwyn Date: Tue, 11 Jul 2023 04:50:55 +0100 Subject: [PATCH] vi-keys menu nav, and 80x60 menu bg img --- resources/cave_tunnel80x50.xp | Bin 15538 -> 0 bytes resources/cave_tunnel80x60.xp | Bin 0 -> 19990 bytes src/damage_system.rs | 4 ++-- src/gui.rs | 36 ++++++++++++++++++---------------- src/player.rs | 3 +++ src/rex_assets.rs | 6 +++--- src/spawner.rs | 12 +++--------- 7 files changed, 30 insertions(+), 31 deletions(-) delete mode 100644 resources/cave_tunnel80x50.xp create mode 100644 resources/cave_tunnel80x60.xp diff --git a/resources/cave_tunnel80x50.xp b/resources/cave_tunnel80x50.xp deleted file mode 100644 index 3b0f9cbfc8697319154ff4227dcc5398374983a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15538 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 diff --git a/resources/cave_tunnel80x60.xp b/resources/cave_tunnel80x60.xp new file mode 100644 index 0000000000000000000000000000000000000000..4ff4a5c8776b732a03695488d0284d35b673d90c GIT binary patch literal 19990 zcmb2|=3oE;rvH2Qeh*T)J?&ZKXQ^VBv_)I5O;F+N^xASQDtoPIi;5D5BSWK_qG#<9 z+vnFTL$8{~ni|)iaXxc6q<-JNhPmfdSFelQZu;$T&dll^?d|W+UyrJO`}W=ckMbaN z-2TsD`;bTW-2eaE|GWR=TSHpxe5=N^xs|>So98UEToC#Do9Tkc_P*Q&k>T!T3nG`t zabM8+{EFp*&h2kD7uE>(i=GfW?xzqfbE7d$cE=fq&3pWmC#3QzPe?6Op0L>J7W1sq znhf@$5WmNE+bwK2FrEEWsng)TmHi3Fo@(_i=lEhBHlM5g-SGP}!_VB`d}sazgBu(#=Od zUNB@#JDkS&N!C41VSo93)+MQPb~|jg@#DUrbNCw9gfN3#roVA9eC!w2*v{t7m{xn8 zY01_#Y74fXIVQUxGH*HaiSJh58qy-qs3}Z4%99d3n>pi}zxi>8&3WhVI@B$_&heyr zdwS!XUgp=5x8K&>=UZ~Nd^~^>N3=F048KUaukT@1KuS8P|@# z{@j1%So>>lh5ditnqFAb{aIPT{e3a>S)<(b3>&YdHKs*gPjB3^C71ogMvF5JcH4Jy zm}F;HN}ZT#l6&jsrM%;M0LGDZgVcVTc&IF%Hd^dZXs93 zwR69O9*9*ttP6P0_&~IP;|WjYw?>)n)0`P^87;-yd0*_$y`IHZRC7#M;r{MjOh0me zJA8X|ul(|_|Nowjr&Q=%;$|UAJ54y`0ktUFXOPMAzQd(let>smNWZ!JKE0i zH^!`X_fv>|bK7snw#X2}zjJpm=&Dap-eJWu>+8Q;>?z&d z&Cy!lUfp1RQtf}&A%CysXQox}q%y8e*O%WHa5Mkj9L9@RJHLr>4GOhcW-4dIlaSY=1>Mb?nNr@ql6epr&9Le1w_UASMr-t#KJtW3o?LhM z@vYAr&c;@kiBHWilx#@LUB8|oa@%Is7wu(@85#c>JXTlPG~7GRxq?G{f^N=khraxD z=?lt|4QXrF=`oz0HCvi}(WAGy4ywBv;=;w>l`8y>e#1P=)cy*CNp|rv_Ka)4Li8sX zZ!u&2GVS&jo+W4fZ5^UszkMnG>gnNV`3c)<>KRR5Pv@WRU{_wv<)S*By+QB{mqh*c zhMM+T;S;7W%oumFeb;ReyvXn+yEblhe|6xsfAbhSiuhz2uCKp(+9KC@J#&>P^919( z7}iTorzbnCySh_wK_s_uti!omF4t|=?)=DiAoZ@pW-;~O4QXfj${Ei_&3nT>Ypanl z(~jqw3iq?kZrohuH~XmP{S?C-=FF>SeHBjkusOKqNdDcmDY7xnlCS-&qkW3W8-~4G zpKoCPcvMXI!kVQ^BNv2UzVkt)*^B&^S2xxieP$lo-oiq&p*wLHTmm+-r|q z5vOQOqdFP|&>J1sWMFJc6%4s7E7Io zx~w!|>oQdZt->66WB2`EqVy||-k(>M_j2OBxz&uHa}G1Ef0w-e?TnpQzTUJGnE#?U z-XMIZo&Bz~e?`@mJT8LI-OXdlDj)4lc~e>ZuJ*8P{M^d*65IRuWgYgMZ@hba&i^yd znYP?X|I_FEU2g&Z<~PRtpDldlo>k@j<`Y;uGpupW@2Qyz>ABUMC!#*@YMysG?HnU7$6S&*fbA)wHdbiY3do@%H3L&z>FqrSx_7X@{E2k4!H7 zRy%xd+QIk#pY+e%IqmD`>bVZ7J&<#kXUSLo zH`8;jz7{r5IQM?Iuj_a*18UcULskFFGrnw|aGVZOa~Y_86E=Dq9IEYsDVx_DFR*6ClbRvw6{ zJnr&;kx}OK?DI$GWS3vxbUHO`^~qQ7FW+2aw#qYiq0UnArK_hdtz7UuP3-677fSV; zuB9+ONf;Y*U1X2tjpqxx|RE%cKrQ2TlhQg*YaKYtVL!#+PiyJ&$DfAm+VhJ&$6P! zc0u@&n;-v4{{D7-x}C#X+1QKMHS52A{KnMr^&RhmB>#Jx!U~GE@XrXfY>3I%vtE!i z*Zs`J*mJSszdwe3o;Fp^Wo2e@Y2oCXTTgD`opJjd!_IH%#~Y4ZSQ)5bSW?DR@b-w% z+M6d67er28%U#9H~E!(FQzW8nS3+HX!G>_yR%szE&V3r@TdDK!;Gu?xxtS& z8!vX~%SsgTP>Gwv_-W@_-2)uEvr}s(f4O%ye>3B&Q(P<59yH5HZ(FJ66m!Tk5a`uF!4US8a9&A#dF&41Cy4sQM% zt6=rvZS2OVvg)V1m*)Ta@=xf*w)yv&PQJH~VYHmKJ>6m7+i#DUzkYi6jOWD07#T)A zYt}`NwD0qNuc@r!IAUeZlr&eK`R1d$q6tr5zL=BEzvosvV+Zm0Y@E%xmkL!iE z8RPoDKTE4-ZC#q_aDFSti=Al=6>UE=5B$jz^6)> zYfHcW$2C>(f_Ef?ZSTPoJav_cMKe!D&X9_H5GVHRcw^exGd<@560@_l9p2COQHuPS zy~#OBOySpUL*|P==CKEayE~k_zmVT!_uQQgTfS^$?%<1IQ^>N~#{BGs+JUaKY!|{8 z+wJ?vnEBT{PN8aBZpF`?-Oj&RU(c|c&e`$Y>W=kNcdM_KjK$Y#52U^eu98ok`(uv! zpF1ZfK5n_W>(tJ3{@>5fTswbm1;b~9_I}%a%>BG4HXXK=-+%q>Hl{RwwgcC085tYp z=IJn7em`yOuw|poc0c}2+ibQ!+kP$WdcPOMuH$y}@J zuvzUGTcbun$ltERoT=Q;`C=`9`0s|R48{xMck<2zJHvcWd#%;U~A=`Ixt=JlQpkn6+uU5^gy1Hle z4WpwX=CD`2Pu_N;;ojvLx?u;BH!@kKt>!%;x^*LO#n&4RcKeHVeQTVv|F80b@4nCV zlqYDEykxz!YWnYn(x1u)UOZ=9QzX?Gml*eZ*7V1=x4W4g)=Zt4t92$VX3NjlV%u^R zj;BYm{}Pm#UVHgy)YQUkzJi)W-Ve9TD=N;Ioz_ZFO}u*WO+kLStcQ30nYTZ*C61*Y zxb;wI!B(Cb&1aY`>$NvKe44XSZb9VYy}Axj*=Z%6ACs$-D`($3vn`wHOq)4F@l?|V z>ltNaCf{UWUk&cogijo#ag8Hz5m;aNxGAHFSPG$i1XFkE`A|img!_q zUX4Rlk@>#(49(bB`L|4#`rmq$`>yQp>DK#Yy1bBa!z&y9ClO_04O?CvGDvWV`Tpzo z^mDTEufNCLR-2%E=Cng!R{33DR~ZXl_B9iK+NjC@ebRWkz`@jVZML7*nVq{CGjf@( z314s6vNQAOF|MhV=?Bj&j+*g``HS6O2NRQ9%rh?YF#f#r#o)qf&(u4sy^B|W30lRp zEu5lW%X0V*D)B-h6Xw^7(fOUt@G{Z@pP&S+?9rPPG5bZZl)u#TU6=eBH*l z_omPUncBRpX@(_LX-ow-btc^3xQFY>o!xt?dlK^R*RmB|m6KuK*mu5h%e41W8>T;C z`DO8A#yY#$9Sonff9n=&&aXY}&ii)u^ah!~IrbB--I~F)N&Ios>|IuOVp;DbRnFJC z89Se8Q%-s5{Oq~QSk)Il`F2TTLRf?h+a&+KEzBoHe$8&!@-KuxVd*CE6F+CmGRaua zWdGv3xuJHerb6@?KIXuaX9N=5toNPidUop58LrRErcSL?sEV8!zjW(1qy28)Ph-M1 zA3Vji@t%XLw8cp4kx^wsp&v4M#Z4?9Hv; z=l?xwd7vgEZ{oF8JLKJBbN96F-CemL(%Jd1!>84ab_Y_K9lq(vFX6w1_>lH-DA9x6*$4 z>}jAvdU>wQiJkLbMJCVI_b*}CY4_`O4!7eG4>BMs}w?>`l+4quK?`_%3VexO{<0msVoX#t_`FAUi@`UUQ zxnGU)?|;AXJ(AV>!!E|`+Hzy|JM(N0{JF>ULU&uwF?MCORZROfZQJ8?-qhCC@a&wb zq8gSLpFjS*d9w1_W_36Bh6v@u4v*dk$O~lekk7bw;|9ls^S%9ySu5C2T(vOcinx8{ z-xHp-`3#n;df$pZ^H@DwO(DG|Rk))o+`QqB((>be_FFb3vlM;#+}-fk@v+(Towjl2 ztKZ~pzy7vv!uHwW#~40;W96?sdGDLah5olX{aYE&&U&?)vFI9`bfe7G6!rs-9>n{AG5tWy2+F~f-$~m!?}D@9i~+&_qM$K?qS?ud412s zxKo=pXFOc7{?vji9=&HbvEBH5tHj{dtuw0|HWps|QxM&qDZ4>zU*3msE%Pul$*a@E z(x>0(kD4(*E@5p#Zm!^qz4M~1jcpB`W6%2ZGXFYvk~K^`P0g(_?d$h4=5H^LHDqLz z@MK&&aYEq2nuCq|9QVt=dd;|L&3^U`@6D|Wm#=13NI$!U+eJT5euD9qa*ij{t@#?} zh%XmEAtrX4Z?pd5vz$+g&(%8Ar*y1<3Fx(NASin7QH=R%KX=3VPYb~ z3H|r0n2P2d-`%+7_%W6RYU$rCHXqw*%%1Z0*Ou0K$M)IgFZb$MJ-Hz{_weg8ho@|{ zvESoUZ)$(n{=7~`VVS@NI}^T$$Tzc}YRrq;W@65BBVCHI=*;4|4bflD7p*BTPGvL5 zpMU$=pXRq)cjoqeTdR9!-Ou0A-k(>$iC()_Z{0?zU0W(m*k??%R!EGF3% zJJ?T{T3Ff~J@x!Ug1*4&{pmBT0;RvBx=?u?Oh zIKT9-=Wbqe=AFy7t2M+_KGtmrlfLkK_0EN93Q^HAOhv3Yeat^yAJ298W^>E({I)xB zGOR`Gj_qPNUhsR`O#9j9>5W?++z}8^l@ina5-zPREZtLisyMP&yWy+n;@O}7zq#gn zfa~D2bK*GA4f811uKtdI5GEb}tUTiZA9+;O<@(bc6dL$4Wzi>o)v+`q#zA#ASP z%+%7v4f~lh!t%q7FRYo@$F?By?ANCbo1`@4(DDzIwMnR zWxSu^$gF6#MO$~aW>(GLc{J5wZDzgD;wSy5w_J&t=6jam<3&r4_iWcd}i% zC9QCMXDYu(T|vc@)bm&0-PwNGdu{&AhB@}Tg$<_PD&NSzy5#9sxeCkMtM@NuIT6Tv zg>mDr?1q@$$#WZiUNsPS+Oti^D1Vl8)~v@d9XlVYIqWTAzIgD~lupC^^h}-(^%#kp zi`XM)$}w!psgyBLIu{ucd?RZ1tw-BdcQ0Oj<;kf-C%Cr9M$cl1vEF;?;-#xgH5G2J zJD?dr#c$v*)_1c|c8DYMuoEO$?y2P{~ zl9xBsVe_vl>&Beh*I8XkZRa)=7RYRH-@x%@>iN!2LkIrr_Gfrj)h}2-f8x6J`{g^V zj;eN=ny{p-{p0yfwSLXw^Gx6Vilwb|c^c}cm)H2^t^R%H&OmYbhB>Cq%qO;e=H49g zZP`H<3Ey1nHO3Zm@{Y$|^^$&;c5f&9iq+2gt5x>)9(6ePx!^L>){VB8SyS|-lO0NS zS@9gXT{eaB*^5$#_dB1pMK{P?y`!+8ttx!RU+sER`)j8D+0~^li@BMtnA5tl zPT};lW9Aa~b*#C?u5q2Q_D;LDpv*VBVds@)y~b~+9BTVz#qjkK*OJt#+YHmUGFY68DX`xyc1$7H}Kn>sAc=jwsXz?{o*gGlf9fLPk!8xCB+ir zX?|hNx^rd<$1h!FT(M!ET|L{^6LD#2%hO+c4dIzPXC7mf?3_9G8CEvM?z3OE&QE_o zLzs*oqw$YY1-qnN?hbR~+l<;uc@C#pBNEHrUJTlGYo_#_#Mig4t2byAW(#$+-Zw9;+Y8Ggp(TTih4Ue5H)MD}n`YIE&d zhiiP_`V78HO3O+-{_*}p!1)go?73gbF7x_Ty}Kcfow@cd^OmYzw;8sYF??D3f5xm` zyR94JER{bUPrmr6;M+t@%+i`VTdmlORP$#y#w^T^UVUZi)mIFQdVg=sFctPbJHyh#!s@}9HsRw|6L`+=WK_w% zIg{;C`!lP?nANSG4oMD$Ru|Uvy_)W@IZ8W@VduHkaZHxkUs)Z_IYwJfD83cS`{b5X z7VD&7eiLTP$+f)=r=uFS951jI$X+6RB2qesdC|#_?=-*3{Hl^_c$2z>Ilxl4Sw{8s z>nxTpzPt`L&eh5btgP83PqY29W?Qjq-@Y)1rzJcWUVr_z<*Sj`w{P3NUV6QC>ow+D z7a4hJ$#hePpW06kx3#yo-TbBXjF;yd^Ez3^FZG8TeqH|er26--D#^c9Rlgahe`Q`( z%yB|eYBtj^ucgPU-z2vFd-ctD0e>}n%G-yQ0{+Q&SY?85ng04ciEsMdj|a?c(==n} zT3&C^*{s8O@>$PhhrWI9STC&U3jgTvsrQh`g2>RHCmm`cT+JrD*=i$wA~L&<*F})I z*P+I*o_Rv?g)l~!$zNR^wq>km`m}fLREMbjYo!dr^B6wue8;A+Z{=356Fc+Qzg#x` z)$6<$k8icjQc~Es=8NiuHM>qR9oVYsuvtoamDEgKQ`0c!yGfweXB6B!>r#=yDPYNan$FA4iO+4l7OnEjvBwes@Wi(GxrGlku} z9xk!{+O_Qr({mZa^!HY;k$+>!&*4*|tt6w9sP18Rp2es2k~jvntncb`*Vj)c8V6U(n;*FC#gR?7d!0m!gioEd7$` z6(0MQHTFxm?O9caa~0W=6O2QmIiC1j6J-oc_hp=5w*CzBC)w1U4(IZ`RVV05oo4u* zpz6@KU=_m)(~#JC>|b8VyvSoo`f9=)=vmFYz$~iKZdK_PbH-oG*c7@X-Y{;dYL{@H zYHDa`b#T{}FJDw9)D+e61%zL2h)ZR9@w?>lr{&v2azZM9|2QJ@V8unT33sY*vn)BE zvTf$OSC7lTs_j0^{KYFL^F32hTU9&5>Rq=Rls(J1v$?YNt@z}trL?N@gx3C`@4j!= z^)u`|CH1Lsg{C=UM%c&C5(^@i>OXEsoBCXBN^!1hoX`SuZ`Pu@)9u(V<(0BJ)VY_+ zO<28Ai@(Dxi@V{)(rp|bSJqasrgXOjDMVkH%CKssNI>FKhc(NL6s$7VzFNTlI%hTO zmC#)AweP-F9gx{8*b#S2>eh?esA#E%ds%s_n6HE?FSs^~@#}Ry2~}%`AylMaSnGR8_pNR^ry(-T1 zGp3Sng4h~8mY%>?hi~Dr3@*#J9(CB3yN>0Gx9o-IZ~yM?b+}e$QnGQ|mFstTc5K@_ zf9IZ09;du{zmzk(?NVFNU*eVR6+Ty1ckUZUt=O+$%Nh5s3yED2{O?QH?msV$Kfjw7 zr*Qw;P2MNsrQexqmtDPfkMYZ|*|X#4Jl@g0Dy6rlr>|gb*JZ84v**lW{SrRgVgAh3 zUWXpUY*(SQCBd)GSFc&myr^KsR*lyw!N~_{L`zrFEzNF zYnq~!wP~5g+O}O;tIjZ1oezzl7kj=UGJYoakyRC}5?4Pp&bhlyYr**iw`Q+qSexa* zdzIl?;#Y_Jk6*vcVcE28_uB6ZXHD^%QZyw$h$}cOI$HTc{_m@|zAZCzJGVaSL!ADq zdnUT|zfw<0$wz_ZhDl-mv#DzKdLa@v;=# zFXf17j=o{yX46+{mmcp8njw`Nw)4ure;4htQ|8smPsq3*%qDRT&vDsw6@;e5Em{x*R~j|7u8i-M-wRZ>b7%huNpe zt5z=CG`%qO%z{ss4>#_6KYg|wo66-=-VB?zX^6f^p10}N>d&`khVDJ*%QkE3R2jZ6 zyRuemXC<@UzZY=p+#0X1JkhVbqh>6=9SEj)#+cImDQQ8ZXQ!bI@nx)o#SBY%5c`pyNjWy zEIvKFAh+}+x5C?rb2*;e-t?%UV(N6w2Co{%8~HjJ30EDy3hqC(@11tY-`cl-dpiE^ zm2H?AXnbMK9PybBxAyE=GH2`8RjarZ+~ebek84$zmWnR0l5SkHb~Ss|`OuIU29wvJ z|FjjlPE@n5xGb|EQZjO-!{$rI!Hm!>Tv)3>Xj=QKJA>Qc7SIU>jn8M4Bw7zv48gBZ-eP+xdr`oyuGCk zYnHhwSgl>hoOJaH)6P2YuCA98xw^O*);cLd=r;~ z`~7S84%sa_wSLOAW5<>^e)&7?dSjfg7N6GXggd4ioOWdwzq|Ek@!4|Y?;&44%gtff zyKdL3PmH$VMW)JgPpw+TJ-P8m@09?Bwev;TzHpuP;b0RIpQp}n^K>_hLRJ?yQ&F7I z;l{M3YHkheyS%vAi+t0MFnp}9%yjtU_^?4hf2e+3j&5D2Jr?*u5^}5TaZXS=n`u@H9mZ`J$om%g;nc;V( zVZ+u{84J$uE1Klo7@?WyP%=S)X+=kej@#BJKN1uoy>kREM4v1?=&)Jnu@hsdDC?J9 zS``yHo@AXl&#>t7^pg%I|7;ZdZ{@Di%}P4DdhJS?7r%R*ZO=NdsVUoPUb6Ai&HL9m zzf4s(Wm>%ESlcYOs+G&yW~oIn|J}>{@8gq+4;9b7l97~V`&GE>-Mq2`cXrFZIG(g5 z<(}JG(`}o=Z{CQw?!mu&Ph4!R?gZ^st2Q;Q($>{xK6Aq4=1I}eX#Ou!uii?(O3mN6 za;NMDEQeKPP@bVrF}Ke9pX=}ub9g8#G_dF)C|d~PmeM0 z4C9`>`o;P<6*lIbX-111(^A#j(~a|%9%ExZ$tC0zv|{U%mI*0Qg@%j{pPFYlDExHH z;h2yse5lcGx>n^>wkI52n;T>9s#(jR3zn|z{J3fBUe*r3-@B^+BwuW{WnOda`h>(gGuzB-C`tk-Si5x<*!{<4*6lMPqtq*zh-njJNrFb z$Tx-uhT9p_qLLlrwL=a4pT2l4-S(BYIWBxv*!vP$hGPdG*Y=rfwaU(qVfx5({&B;P z<~I=v$Ny+CdU&V1Fvow%xNQ^TC;pJEhFt<-;+P`_dGLLP(5=b1lQe==%t>HYKEq3-zW z=?%NISkLUtnjOiTk-0Aap^rr9?GV!y>tDS+`}ORfnAlj+ggaWRQ*zd<(P952yY*^A zRVM3~#J{yYb7W)h%C4DWzTJfR)lxnWzU8INuOv@LHPo!zx^!k(Z8Eb!?A7axKkv=D z<&~DndvDFO_ZTbTP&iTMHE8wDeS3 zwK}`2*jy|(I(GKdac)d>C=nH9`4YWiU;N9}TY{=q{<eRb;B($KG0CVVPbn(Er{ zch7W(c+Y@otK3DV?qMr3oiDPSG$bmH?aS@3 zD_6n-!b3~HhQ67&ZCm+PyPoE`v40)xnJkR=Gkw{YnS7ZeLh)|QvyOA$`dBw)ZRP(W z6=dg=>HBl_^OX}FqO9yxTIZ?R8nRqi&7y83-_^^-@ax5Q8_PeIYmdx0;8I`H&FS+Y zy6_-p`E53)z}S+2m@myd`+m4485XacwP?*OrFzw`q7zqVO}SifO`XB~7u8sWSXa%qPy`_!3qW6k}BVrIXXpVVdf3_2TX) zQz{gyJ$-$?=FgtSqw>CHCa;UCs;lao=bC#(rcYzI7Ww&er1*)`=T9fU)&3qT_h3_a z)s(l-06>iwNc=gry>wmRXtysOUF;L<3FZYHX4ZpL@#~d%K zJr~!GUAy)@L+!nFB}=OswUk!H#Qj`7XUhtiU#r(l;aG5fzHkzAV_IvwE#sn&76XO7 z2cCTJd8MWIN%KPW$`>!v9X2N|n#c4`U!yU5>U^Ek-fWY$PDy3{`1a{e-kv%w_wzoz zjEfeAOE!dV$WXX1D9fhu>X<82?OtP5OTHJTQ|3)$`4SeCq$BWji3&sQT9fCgVhOyj zEEE2k2)~&AbZ-@Bgy{+PPdlgI)L*gd%^Mws`KPNnceuvMl}?S1VA%Kc@RW60+0qR$ zy}V}~)*bBgTOj}RrL+wDmSYVSn;S32W%;i3)bzQ!e#*Kj?!ThK>!b6-E35sgL=xn6 zI4|(K+N6ICdZ}gc!dhXifcUI)^X???3i_vI^(xcks))R_#QD7{$Jo`4o}W6~bvm^# zE^-3jjo)Wj)-F(v<%hta;v~zvR%G6WwqG`uPi`1M7{g@`KR#%of@za~bGr4Z6 z#8;h(mBC?26=KQ}RY?*T(nBu>HeT$hG@RJzF#ojn>L0E_hM_Uve_1}*5ui2Un@8t~ z1@C+MIoZBcEp*uIr0axW8@_@9oC!?Q3wmm zQp(7{~Vr{3b-EHgc5WiomN|619vJgY|?2SL)d|ayDvLrZM|I(tyInRGw z;JJ3@vaoaGmV}Z3rq9bxbfi11U%h0<1C_L>m7R$zLy`jhgc9!S3!k{@+h1``aM6z& z37Bon9+pC-oA`N&Yz1K?TqtZXRuFlyn2n{*XmP6^)7qPU(1%B-4GW( z*Vfr#{pxf30u^p%SKCjB$-2B{+s_Am(y5xUw$rw+wmO{r*kaYLfLYT+PVKBb)xPv- z`;v?MpQIdlvVm!yknoH{9?OmX{E#A`MPe5s?>T!kH(X$zC!*k!pwr-K?xc2JR>XoZ^9b0DgYSqfM!X0YXzi(UI zPAo`~y3pRsShr3-ApDr=F`Lrky_>GwUGZ&it##?v=TJ!+Z_AMxEiUzTBEskIEt2943-gIFnV{U!%k(St<;+ZnsvWGA z4)Y!N>giUVtxNX2nSJ1wTc)P*k5j9p7OdZN{i^x3jrKRLT)KE9DzrG-e8Qis3ZWN& zrv}|Pwk$LGvVHN*ys8!2lS|JZ`Q!ES)y5agHgnTxzt%8EkzEY)WSd2u~0YUhqA}@t{4!MYj|Wm8)N-x_5Cg&Jq=q<8bj^=-9A} zi)-njLrP7JI^6thi*9U4IFPF7kl*Us!gMh+MdE_H=~Bh5KDBx_MocHR3W#!MxH4Eu zb8al`ndG{jyW2wDyK?1vtw>hZ2GgrW3Ts1SqvPJLZ!=?B`M_-Z)#7VYKLxFo-RrO? zMMS`u+;FKQ-UUM@+uN$TpV9xn7(($9=`+Rrb`XHr`!Op*v>55~3)0z53s}&Z+FT3*7#+1o``@i6Y!>r5i9KBi{%len$ zhB8Or60?1ql$se$zvxW)Xk?+n&><6!zRSOUDx4CN+CnwjFV{#o(F9VeCc)8B<$zZQ@5u+KUFO^_xMik z%1FZoE^nP>>pmGJH^!t2`ZqptUU{+M>*@}lYdb?+V=Fb6uHLbt!Q$Ght2J#?j$9D= zrmB3Xj$zTRBO6S_6%GHC8~hWmgnHFTTv%;v@M5>awPa`K`HXvKg&bA1 zcoJz)-QDQu&-8NkJXSl#`$0E0A6V|Nc^;b$cuPphxYJr5uAC2`DXDtoA!dFS%x^RhahWXcq_J3JBW=~ynu`_Z( z>MO4-5J#*YlcgTdWnC_0A{d2Y*Ah^Q0L&SH5bx z6zXvzc)@y$6?0x|>x=$SzL4#q=^p7n?=Q!fYsvF}pW>?dG{ve`=))7v>3=1DJUM<~ z|HgU$UWDgd*u31P>A{By32uH`bcjnx;H8%~437-6;~D!N zE@P-&tEFzN)_$|p%SmIxsUzJ>oWf4UFLT@XWX9H0@2@^zq{Ou7#m*_~_RV`-VD7Y} zScYd97_WVCL*jr}n9_vJ(`Iqq z;I83RnIt0q+<1S`F0Iw8G*|yxwrOo9HDwC_vd-^4z5Im5U3S0k%=J$TDjHLMiK$;$(|OKI;p6tzG9EH#ytR^AO_Wt_ zl#klyTi8sUs{VBSrpbpkSt?uFYwP`AmnAUonBnUcCmL3qXvqJ$x@E@#mTL~mhxW05 z2|Ay&XrAqt@baHiPd$*oe06h!`~l|I6Ft7qD3S}kJo$ZNTJ85Q)eE*yStl3$`|f4= z#<+0Bhlvh#(KRv&U%Z)Qc)gfqm`|}z+CF_s!~a|HEBC}+l?672hC}-5>^W%QLz1}vcf@jAW_7z)=72?(}7xMVF{|4ui6(qiW1$o%lqwgU^~4>tQ~D{0IzUAz4JKK82Ezt7`d8G5gL`CEQJ^ZhOJYW~~W zf3LUu$@gOI`+0vj zAmgujiAgaLN~<4vawd9m{@Zu|uFk9*E0%ApdmR_PO7GXyb%&UoZW@Q|3M%{%d7%G1 zQ{A8Sd$0WOS-0=^$KCJi{=A#LYuER1ev z`S9Z4+I#DseU)5h-OwZ2dxiPq3|mo$SJ|OA8y;60vhLY#sjX|(t$g8?+<`S$R_Ih2 zi{77NHf5bql5?Y-dw)M?$M^IPg8mGz=az3)a&n%}uy0FCp;d zK$TAOuk(xVgM3l{>+$!xSXSHWLwjshY(!p^Er1!ZFRx91J9XCe zL((wHCnK_J$R!{r(Yg+!Rtdu0Fj_os|=cUQS#NCcdt6N&KwC2X8SJ#9< z4Wd^cR~E`Voh>I_KJV>XHX&d2TMch2SIBwX-?CZ6Lw=hT`-VqTXPjS^nH3bF^|`FH zza?n$ti$5+!cyl8)32WQ?&J4PTkCapZf7@VSMpywBO?VPBL{ik&@fSvKPnxzhc8@c zxUf6x#a*LR);1eXo{!JN?d^DfeB9sH@qhK7tNi!vYZt7(&|&Z)H#U{w)hp2n93OYF z)U4Kvx_cqUw?6dtjUew<)2-#ETkDPaR^2@AWf{%(TI_c-_i1T|KUe=2cU_shAtW}W zmrKiZ<*KVUf0{1HUp4#r=JfEk+2KEqMWUgr@EYLVghRB)K3eEka2HUR+{H(Fx|g{+cQDtj7Q&zgsX99%K|pP44rGLq+@U> zKAOKy>QGdu$BE4oc4xhao$|*k{GdPcd#(57k1gug@Bj7N_{aNw^`FeI_1`znuNRZy za0#C%xKPHp$KQwH(aQJFzb;KrWx5zz$CyyRfu|-o{QFa$hLmfBpu^XQh$``bTP-Fs(QWGho1CffeFdv>v%Ze8gT))R46*^NhTeGF6h zw`y%gPhr89#W_>_9oK1itb8!JBQDKte~L@U%__I3khcHxe*V58AucXsl{JQ_~PqG>P8B0Z3mb43sN}dyZv3?cz%asnt4CbXXS}td8b$FBz>8kj?Uw`cy zrZel`y_**B`S#R9QP$N_KetF;m472E#k%EK)lK7&Qnsb5e=aRu5I*BmcG>dl@8sq8 z)O)S`6y%k-JUzdmV(&#Yg^4?Ue&v|YZgnAqWy$ng6Yd{Z|85#?!!GogJNWcZ7rW5a z;fqg5o=lY7vpw$Y4KLq5pQm#_85%ko{+syf#)61?-`Dr9ubdfSIrE}rNKTDUK#k9Y zeR5)QatvQ~Rq0IU=c^Ta6CQD5^MVQcCFTD_=P%QW>+k*Z=kB$?8vRm@eI0!r5B9K| zuGd%9WqnaPH9TU%^ZogY7BL0*-eOj<&{}c#&xnrMvdqH)^U}}yLrY1acXZ~AE&bC(Vn1E`L?cQSv3Km z#_)y@3pRXUH{N*VM~O#70>|`~ktY3T`#L+g*za%p_gQyQl2T(`h=HP}TtN6q%{}fq z%G$=wg#otTozGgXTeEiMny=x`uUA<X+X@33qtizR%+3ZiO+h#rcDc5=N z8<)cIn3-9>+{6s_@!N(;(ROMm$^?Z}f~?#-7L75^!I{C@t? z2@~bmXWVaB`IVfJ6ydh$zo%)racP$K=B%H8I-bwGc;5K$_Y&4)8@5Y`$_gFr%63T! zXtDQdV{Hix7o4alI8m|6`>arCSV~F6lewaDl7AfpH-5ah@!!pw!a&10|HXx+MT^bb z^_dE8@1Hw&=`%f>Z!HU-Tv?K0*Qudxt=;{-Zsl&at9N7LU#?oWZr8iUbywDW`*v<# z*)hk`>7Q>L;h7+J>u<*AaAPr^-45^9o0a=Gtk<3zzw>)-ULV)4Z?$?+eAgSB@4fl* z=hu|V-I*KZI}RRtTE%Tj!iiTT1S|7&jl zz7a8DZoq`M^_zT>6w^1Xp4B8ZKdjiLlzl!UcG2?^8Igh^H-j1g}k8kWa5pk|Ae6!1A;p9huKR=k9Bs}R) zF>g|%%bO=VRPJRieD@=0^OUQbrfgX<#iX9CwETX{E_rq9=d2gp?Mv&_>79QfF#qgwvPJEPeM)pGSd!KaT~oG;6i^wDh0a+I-z~ukQ0V3!DwZg9YLftRUa?Lx= zeDUSq&na1_%*YAu{vWtVeEk4_7UDU^zidr-pG!Z`^aH%IDfUS*hedEMb7%d?~3_;KIA`}B*9m8Dk3*4=B@?798z zTke;{dy9?rtJ|JWf8Wsa_RfCs1L@IBpJYGpb?8f2$KP>_U8>>7hJU*v!}e6Y`rP>A z?x{Iu|AqTk7c)M7diV3~)7+OEk8FRwalJ)fY~X~rgS+Rf?%uTOXGq(%SBJvv(sys( zxMs3{>6t8-CUR!1Ty5WoVt=A1-Vs=M2xV-uOU9+_GT50L8`FrBHkGwX$ z&bX6lR#xMdtlCiK`Mbh`qxp_-UkShVab}K@!1H>)iDm2O$z(Ne$2lVe*3_A)9q%AmQBBRGfK~%&2asmt)ZK4@UEcqDZ#h5oop_M41SUI_RXc& ztI7)&On-kSaM!F^(X*;nXq!&Io3K$@r|xvxgWEb&XT4chYki+*T}i6JZJuZB`_2^? zJW4$O;maf03v1@<$vP-K|F)$&-?KE&pW)`|n)Qub#`?T7e@?sia$l4~ed+gYOP_68 zllE)%x?SN8QM)$o=+EcMUag(+`101}lFgETDm~+v`|idczdt&DI510wCCQhUSx=hr(*L;SO8Tnz8re8iGDJ3f}`E+&}dpmo>mXi8>{p)=_y?q~ImmN+{ZV>&T zxgh?U?)nlT@3yMpd zSX}n=UC+N)*QNO{tht}h-;fr&!<@l3oPUCCeh>4r@39W&j{W_;CrW!$^v}9EeXs8D z{aSsoPisM>vGZEvn&X$g1e`Xx|H#zx0?U(P+pmjjy00fx>k9CeUgiHN`R4Io-N!YP zz8xv}&2s;MiParDuk4BqvM0p8=Zi_ozGUYYHMDqk{nizY3(>)slO6Wwq?IMLy`MLK zo+Nu!Y;P|=v*o^%h6>de zcdR|LG=y!b&eNq~*Lbz}xSx6W$TdrLn6Ns% zkmZD-esBKg*yh>Z!n13NpI-Zov@ zlI)wx61h$U>iRI>EUV;uv3BQAO@+4`P1rNeG6kNzb4BO=-?dkk++(&dH8wqJzR2(V zIiJtD-oeJk!8PU&W}KLjTrPaLX7=p|CtfJrXEju8T9&l@*h;IfK9ASE+oyN!;?$yF zzt|Z?m+ckvdA~mFnpwk~;O5fH_qk218@4RHy7BP${kF@rpDvYo$K3wAab3v&OBsby zmfj(ICx6v9Z+F-;C7V6tnth!GW7X?#H`tb(%bLMnq*lE;-6GBQMhr*9M=kcExT>ti zEf+nW%iRC4&CZ(T$#&hoyic|(vWpLA*T{ct^ zP0jy)&orNLqmH#hl}?%Qgxp*;g=u$LGG@Mw$u@k?@bS;GT!q5>J2;<2Yzu3Qn4Rr# z?&UYO2OcLrY2CNjzik`SlkIEQGi@}x)_5;oS5KGuReoJte)hZ>v*s;0G{rnRB91BK zk%>UQnU&cgb5|bTe%_C71y6Zv#(q6{ntjFUgN*w=S0+`ZHRbP^6Mt_;dVRpzbb}eP zY+62dZ|4-hyKNzS?A@nZKUI{T|64dYU+d-_!~9Q{OJ1|Rwkpjksp$FFb@<`RcH6`E z^ZOZWr%PvCTW%~aaCNUOThiTm3?H+P^C=wPWW)4C=F2sPz~FS&35(~yh5lP42J5b zx2n5R>cxy7c+AA4u(h0xx;vI^5`*-z*jtz(LOX22l1|BF?F z%*txC46Q+p@O=CZ5_fV>{#G`_pE6nY>xU{P&;EF<)-w zN9&Fe`4Y(`RSSUGKLpfJWMSa_RhQf zuHaSa(rKElE6o*Gs?S|n?zp1za9;oQv)fss%HM{qI+=BU^C#Qb-|gzZ=d7)({rz)R zesHLA!?f7tt;$yMw%7A7Z#k9TcEiR_Ve6{T<_?Q)O_a^Jc05=-;mc>nz`JYt1DwSj zHrM?w;52!?e*U@!o!=E7rLX^cdiiSnjyI>@YA$H&ad@>+{kKEkzazX$jCSwmUh->W zK68?+W#by#8_cu5eml!~Va@ma^9?$??U)zsViuo}>(AGaQ~ieZ*H-p8^$EoVPZ)ol zpDSbO|6?!cd=;}#HyXCgE*AIDuK32VHEru<<;XK`+@>mhZSN&Ztr)JRuy0!X$8+{+ z`RM=ebkF!rmp)-AFUxHC%vpXyvYj1k)#>VjC$=BXTi7%5mzI9dbNDLjl~}g?_PhGs ze`;G#W!z-`HBl-wtcI^(S;x)bhCa%CBpPkk4;e@$R$kgnv(eb1P(7l`{Xl_nBGY+Eo6I(n_8q zuVt$nwyZy1b|ma;ms9n|pSrKfCo*_p*`g^}f>l_FYzX)x~FihF{+o zdmtl~wTSOr%=R<4?c?MaKH6QkQ@D24P$2)?yFcR3V(jJzQ?P z@CnPWvP^;JUTRLLI(L#&z*R<$>6iA}*su3|_CCL+SRYgNz3u5oyOw&wVAyR_@#)31wv(Lb&(e!M1n@2<(-cUu>~`@HFGWzLx`GWU|( z?Y*qNHP*a8`Bd=vp88!S%$ASEbL-t)xKzmxrIi zj~$zDANTLfoY%|0i`!rHuH9$%+ecP|_wS#VQYTFRezsPSdpDim;mfCYf4KKQzI*ni zbzWiNE7nVS>c5}=%c!bkT5_qZ^jq7!*Jqz<3i!_Zt@m>FI=#O2D`cKdJk!RjkX3ZM zan9YvwGQ?v>^Y9#4>ta8RQmSD&&_oGb>=VG{d_hKC8cFNH}aM@T$2>oUtPxd<+PvQ zdB*6gnVaRH}lJd=hjQ&t@rO>`gHr=9fqHK!>>0~RWd(`s5#!S|1kTL6?%E+ zEWA&Z7qLoA=C_sm|5>)bAugQn`M&0@?9;!qc!*^dGym+nZ0^wa^cnMnYx_SjUA($e z+T->7>IRKRX9X`*uiL&{PT};uA9la~Ubtzu!2J``-&^J4b_@C|<@59zrWP|D*=5JL z>D$?h>~-&-^M}uuOtilb4E{P`zx;^O{Fb`|;h zdafnMzdz-ju(`VWm$vb{`S<5B{Mzt%zQkX<_}_M$L;1h+IP|5K3!nIC+3QgEeyR9{ z!?8>^zkPdTeD%xa<=Y+BYcHK+U;mrKHX&MGtSml zmH+I#zi`pZ>Hg*pb;qYiE8PG1?h~{9_jhkuAAFCiO>p`1<)Q8b-MW8Yj77g4m*3B9 zIj#P$xWc@z>-RHOEeT!_es}lnXoX$%{{>&%KKs;)gK1^illLp{r`s%Fp6~aP zHKZq~?(N;({0<^z#nsNHbLYm+nH&3J^RLaHy%&5>^g6olvG;=ie4_eO56#KbPgqvZ z5pmh7tSBTP)Or7H(la`OJ#KjGWn+yDI|cH-83d#1C$w%gY;&H7sZ z_oMIx-G3jAC#2T@i;dj-xyK! zvS!96yS@7vf4zDA?JjRZbXNT*%b$y9ZP}k6X@7G5pT78d<}*+Kv)uWtu25a~pYz1j z?@z-QNb?)AehWYZSIAKwrc z?&Ujw$#2inx*GTQKR#aecc{Cqzn|Ii*ZqGiTmErwnEvbKG}8;OXMcBC|BYY1o-OA0 i!&#M+Po14|=-mA~bBqsL@7=-lpE=Ov|NaTP85jVK#3_9M literal 0 HcmV?d00001 diff --git a/src/damage_system.rs b/src/damage_system.rs index 633e708..eb5df75 100644 --- a/src/damage_system.rs +++ b/src/damage_system.rs @@ -50,14 +50,14 @@ pub fn delete_the_dead(ecs: &mut World) { .append("The") .npc_name(&victim_name.name) .colour(rltk::WHITE) - .append("was destroyed.") + .append("was destroyed!") .log(); } else { gamelog::Logger::new() .append("The") .npc_name(&victim_name.name) .colour(rltk::WHITE) - .append("died.") + .append("died!") .log(); } } diff --git a/src/gui.rs b/src/gui.rs index 6786199..bfce50d 100644 --- a/src/gui.rs +++ b/src/gui.rs @@ -276,34 +276,34 @@ pub fn main_menu(gs: &mut State, ctx: &mut Rltk) -> MainMenuResult { ctx.render_xp_sprite(&assets.menu, 0, 0); - ctx.print_color(40, 21, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "RUST-RL"); + ctx.print_color(50, 26, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "RUST-RL"); if let RunState::MainMenu { menu_selection: selection } = *runstate { - let mut y = 24; + let mut y = 29; if selection == MainMenuSelection::NewGame { - ctx.print_color(37, 24, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "["); - ctx.print_color(39, 24, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "new game"); - ctx.print_color(48, 24, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "]"); + ctx.print_color(47, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "["); + ctx.print_color(49, y, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "new game"); + ctx.print_color(58, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "]"); } else { - ctx.print_color(39, 24, RGB::named(rltk::WHITE), RGB::from_f32(0.11, 0.11, 0.11), "new game"); + ctx.print_color(49, y, RGB::named(rltk::WHITE), RGB::from_f32(0.11, 0.11, 0.11), "new game"); } y += 2; if save_exists { if selection == MainMenuSelection::LoadGame { - ctx.print_color(36, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "["); - ctx.print_color(38, y, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "load game"); - ctx.print_color(48, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "]"); + ctx.print_color(46, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "["); + ctx.print_color(48, y, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "load game"); + ctx.print_color(58, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "]"); } else { - ctx.print_color(38, y, RGB::named(rltk::WHITE), RGB::from_f32(0.11, 0.11, 0.11), "load game"); + ctx.print_color(48, y, RGB::named(rltk::WHITE), RGB::from_f32(0.11, 0.11, 0.11), "load game"); } y += 2; } if selection == MainMenuSelection::Quit { - ctx.print_color(37, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "["); - ctx.print_color(39, y, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "goodbye!"); - ctx.print_color(48, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "]"); + ctx.print_color(47, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "["); + ctx.print_color(49, y, RGB::named(rltk::GREEN), RGB::from_f32(0.11, 0.11, 0.11), "goodbye!"); + ctx.print_color(58, y, RGB::named(rltk::YELLOW), RGB::from_f32(0.11, 0.11, 0.11), "]"); } else { - ctx.print_color(43, y, RGB::named(rltk::WHITE), RGB::from_f32(0.11, 0.11, 0.11), "quit"); + ctx.print_color(53, y, RGB::named(rltk::WHITE), RGB::from_f32(0.11, 0.11, 0.11), "quit"); } match ctx.key { @@ -314,7 +314,7 @@ pub fn main_menu(gs: &mut State, ctx: &mut Rltk) -> MainMenuResult { } VirtualKeyCode::N => return MainMenuResult::NoSelection { selected: MainMenuSelection::NewGame }, VirtualKeyCode::L => return MainMenuResult::NoSelection { selected: MainMenuSelection::LoadGame }, - VirtualKeyCode::Up => { + VirtualKeyCode::Up | VirtualKeyCode::Numpad8 | VirtualKeyCode::J => { let mut new_selection; match selection { MainMenuSelection::NewGame => new_selection = MainMenuSelection::Quit, @@ -326,7 +326,7 @@ pub fn main_menu(gs: &mut State, ctx: &mut Rltk) -> MainMenuResult { } return MainMenuResult::NoSelection { selected: new_selection }; } - VirtualKeyCode::Down => { + VirtualKeyCode::Down | VirtualKeyCode::Numpad2 | VirtualKeyCode::K => { let mut new_selection; match selection { MainMenuSelection::NewGame => new_selection = MainMenuSelection::LoadGame, @@ -338,7 +338,9 @@ pub fn main_menu(gs: &mut State, ctx: &mut Rltk) -> MainMenuResult { } return MainMenuResult::NoSelection { selected: new_selection }; } - VirtualKeyCode::Return => return MainMenuResult::Selected { selected: selection }, + VirtualKeyCode::Return | VirtualKeyCode::NumpadEnter => { + return MainMenuResult::Selected { selected: selection } + } _ => return MainMenuResult::NoSelection { selected: selection }, }, } diff --git a/src/player.rs b/src/player.rs index a031c5c..5e5d296 100644 --- a/src/player.rs +++ b/src/player.rs @@ -119,6 +119,9 @@ pub fn player_input(gs: &mut State, ctx: &mut Rltk) -> RunState { return skip_turn(&mut gs.ecs); // (Wait a turn) } } + VirtualKeyCode::NumpadDecimal => { + return skip_turn(&mut gs.ecs); + } // Items VirtualKeyCode::G => get_item(&mut gs.ecs), diff --git a/src/rex_assets.rs b/src/rex_assets.rs index 2949a5b..caca3fa 100644 --- a/src/rex_assets.rs +++ b/src/rex_assets.rs @@ -1,6 +1,6 @@ use rltk::rex::XpFile; -rltk::embedded_resource!(CAVE_TUNNEL, "../resources/cave_tunnel80x50.xp"); +rltk::embedded_resource!(CAVE_TUNNEL, "../resources/cave_tunnel80x60.xp"); pub struct RexAssets { pub menu: XpFile, @@ -9,8 +9,8 @@ pub struct RexAssets { impl RexAssets { #[allow(clippy::new_without_default)] pub fn new() -> RexAssets { - rltk::link_resource!(CAVE_TUNNEL, "../resources/cave_tunnel80x50.xp"); + rltk::link_resource!(CAVE_TUNNEL, "../resources/cave_tunnel80x60.xp"); - RexAssets { menu: XpFile::from_resource("../resources/cave_tunnel80x50.xp").unwrap() } + RexAssets { menu: XpFile::from_resource("../resources/cave_tunnel80x60.xp").unwrap() } } } diff --git a/src/spawner.rs b/src/spawner.rs index 715a617..b4828de 100644 --- a/src/spawner.rs +++ b/src/spawner.rs @@ -93,15 +93,9 @@ pub fn spawn_room(ecs: &mut World, room: &Rect, map_depth: i32) { let category = category_table().roll(&mut rng); let spawn_table; match category.as_ref() { - "mob" => { - spawn_table = mob_table(map_depth); - } - "item" => { - spawn_table = item_table(map_depth); - } - _ => { - spawn_table = debug_table(); - } + "mob" => spawn_table = mob_table(map_depth), + "item" => spawn_table = item_table(map_depth), + _ => spawn_table = debug_table(), } spawn_points.insert(idx, spawn_table.roll(&mut rng)); added = true;