From 72d1ce0255c0473d7badd88db234ec6136b46182 Mon Sep 17 00:00:00 2001 From: Milang Date: Mon, 17 Feb 2020 14:49:03 +0100 Subject: [PATCH] clean mario.c source code --- INIT/CasioRAM.mem | Bin 71752 -> 93364 bytes SuperCbr.dlw | 12 +- SuperCbr.g1a | Bin 64216 -> 64088 bytes include/mario.h | 10 +- src/mario.c | 274 ++++++++++++++++++++-------------------------- src/tuyau.c | 2 +- 6 files changed, 124 insertions(+), 174 deletions(-) diff --git a/INIT/CasioRAM.mem b/INIT/CasioRAM.mem index d5b3b621dab008cb037f8dff45adcd15a92adca3..a5ad70bb803c9b607779d451f14123330448596f 100644 GIT binary patch delta 36617 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 Y5wiFkZx&^?w0QE2JiU$-}_v?>@~xe zf!TYlx2ApxZm0&f=1B?^UiT~&^#OaciI^=U|3-qi^@0I1hhtbQTbCM?3+q z8hS#K44$*Ax~8@-UU(k0xcm%_} z;XypK*K?8C`baBjp29qOyc^C4%;=Q2%>?d-19P(NbSZxsgfsoNNE%`(yJ=bYCKk|f zD}55+1)VVYPCI*#)>@@tnY!^>IIsgvCNi)`L1}8Y$cAh?MUOSC10HJFpZ~4hU4YAM zaD5|RpKu{v6Nf>fW2nwY;IYe|;fRO6DlyrFU^z+#YnJ-ryIp|D!>oD2c*I`^TL1g!s#Jv`4#9w;FbXk z^VpGh5owDJ){xYK67W{O6Jx3l)@rssLKmR|>h*%Bz+0gO-Qh3SnXlHg8^8SdZ)=q> zhQr07*V8{@&DwLFa-3B=&~4@z6VFO(BTht!!L=%gUNtx{p65BdpM{u^EJ4}|X%T;%F8-)jywGL?pp)8Lu3)Blax>f!^A}%+PvgXs~l+diV4=f ztKt2QRfRri@e}>q>PxdV$J>?`E(Mlz1jt!RZmOnb0)#%Emjl>^~E^u|fpCD~Tu3)+59MM_ipB&hO z8_%W5+7V>Jev@fJ<_QgRw`tt^FS+c?b~&@xiL{fZG327B;K09LIKGq}vzis}89?@E z^`m>ClrwJl+}j@oZAz~=oaYTJa!;Xt$G4-Y#Ey(By>6M>Wo|m&9P^tMKZs`5d_w

Fhl$-L?hi3wx}Ng-$gS^kzYq8s|XX~8+acG4`dadtPnX6)LhhPw~3!23HQ+w+~Ljn^E8n5F4Ks)Y)*e#f6|`=(X}X_Q`?Y&~0zzQUeuqufUDwK-Wv;nxPv zN~+G*1eN(-zK6iuU7PRAgg7)lI93~fIz<(2rnjl1Er{hT+Ohm9*O+)QEkSiEOzW`~ z%oEULMb%WdW1v!F!O;JO0#+%L<8Irx-KNBv=_N_?-O@LTfL2kSni(X8h)EKY%sG6m z^0NxFzQ4kOb+B?V$z*Fs(r}me$bd!!_KhCAWpOy$ zci131Hp(AGMDtw-7|HgCY!N`hw1{Mw6`ki}n)-H$|VY6ZeOI>+5qfC`t2 z7?x0t{f!_Iyh`w=;L)w@n9{55LCB-=7DWlESi~rMoz#Ax*0lPF(Yppt)Gtb4MlE*+ z3pa3$tZ;|jp^7KSx8#isY?OYCrI9csBpcE>yK*IHUtWoCU9v)o37JPuPgFr^y!H6p z_C#k^dBLJ{a-HEF(jB3iH16Jj*&l39yfo|0diLFta=X*_<5dItcwCV0Ql<&!Y??ib zaFw0lWzBO`m^AcggaY0inhwcUi4_CpPj|k@cJQA}f85Cg1*E}rngEff23M}bDu0R{ z1F|)U7Sc$(IP6e^yXb4P4c|^YEl&pH5(KuK1}<40w`>iMuy5L@rROC3iX37C^Xy=n)K+746UC}00?$SHm zlwk~|pg}?3Ul&ZD%1@{*%HL@wtrE+8=|#0$pyRNGW1+GsK443l#{ZbT4lUhu!=d8! zj$5*rT~RA>#<^;n!m8~}*tPyQvTCrYPIPjNOVmDdI-w8OQA3GL3MnyzD z5NO0(NW`^a{z%U=Wp$Wyj{9aF-d;1Y7T)k#-EaKRbA9Q|e;)!}O9huv6@kfI_r8`G z#KRzD;E2znqesOku44j&KJtQDS`!*wQQT$V!r7#zLBC8U8TK1R<=-4K2 z{a_U0TlYa;UazXsQmv?~0FH!WVyKNuqO;lFB*qJZq!2ZAD@$AH4$XS@r zDoG`zvnYHM@NB$RiXVfL%~~YUNLgTXD%_&?slOERABGi=8$!`Z{6l6?xJPSSbq!|! z)bb)4+J~f&2#ka99?{P&x9lF(2ej5j#Gctx?_?9!ki?=G#$dNkb#1m)8 zshXH;85Bo#o=8l!e@nVgCEy35lpvUmxU5PWJ{a;NpB^1MxIgQaad=nT;ZA=uB&9sBo(nt^63P@reKrBzU789p!pd=EN&cCbAFD{SUMrK{Djq`{_&&fG_subpsKM# z_&E3Z1E*X4F&!j-4-rDyq=nL$cQ0x2-&LGE@?elY zuzhrK%bgsdOMKwWAZtxj@LO2|cmDGb_+~12H znl@>I@B$_4VS?HpL5ML>ws~N!o3}&00Ax_({R?S{+)W&IVQj3PDU z4Jg&)zV93iK;)T0EC)Tu4d`tPQ}Xs2VMBB zO_6*o(S&I+$DU@t!ja>u2{_l%&>OJ|?=~PNgu5k<)O*FgBG)xuzhhNk`ZA0N7LwIi zj)rWg;1~V)9yPFLvrI_3zsRAC|NO%H+~GyL0j_aiNKq$Q&y)i7B*+Rrw!8D)lsi#u zmk|8P)xsH%lZWpO3KY0$@?bu!$XN5t-(e1{y5{k1djm-YjUnr%Oafzq-n8~!qF1^_=~#Bl>(TM>A!-~(ENq3%2r?&NU$sSJ)A7XTS%aYvJqTs=Z5dB3_LA4X z<%Qb1u{rslbY1M}1Ub0D5aGozd5o^qur@(`yn?UzO$e~Tte&T;=v8LIq z^aLJ^b}>r^)Egu%_}1YH<~yu#p|~w2S}E1Snv9l*?dk~pa9iWS`pzKzk44EYlVi^n zZ^-ChIK_lfMBU^m@{hap=06T-d^=$|JY&~@|JV|-anda2k0Uy(yuSi|O&6%D(fwkE z!4r(~u>zkOpM^~e_gEdu=5UO27GX6)CXoB?g@KmJ;8L(j|1oC`jIA9xf+Q2#^||ei z*Q4@~$vS_P!m8q&#kJ{45ZnbT8$HIam9#FXSG2?8{QZXAqw`TQatuZ$e33*wdEvcd z^%fPl{gKc8Cx%@30JKs13X)3Q1-F0aE45|$5i9UuMwx?fVhO{@-ZihHe#INiW+g;= z*)w=LF{4nDUmibzeHyM-_Uz2PZ_;Y$9r1}5Wy7L|UaG~1$AL$v5k%sT3 zZUy~Ak$}<+*Mp*WM&Pf=Vs4;ZSv}HoWEqY5xt{J&5WQ|b!OD~#U6u0NE z7Xj;{eMYB$XfyW@lx)lp8gK}`YED@lfJ6BoEC3FvM3{hI`?c(+@^dcJ%smQ=e`vGj zub^)~v}(*aj#laliCO**6GUtj7yNUZ&Ts6E>(eljQpg~zUhpV}LOnJoxCc0dKpRP( zBQW^Z1t$|Z!RglUB>K7PkjAEv#6Dvd*BD?Dk`YhBuC@0JPC)m_S|rsv`0mB=+UXD5 z6Rd=?@Kv2`^&8brxjox;<0t;NuVQcmiIQYXDLOdS_V0HKz(Q|7J^4n!vEtBuS;nMO zsZ95^0sK#;<}9aWy4aIB`Ut&W%KWaBuEx{C{6=^B~_jIAM@C3_vgL& ziGGnF0r&IVEPXx&oT<8gdvh_?o*q#I>q|175!IwgF`r~P*sZ;~!S-eWH z;L24c0q#z!Dt<(?wr{W!^f=M)*v3Y}Hh4Jv!>vT1#g_G<#);Hv|~9VWO3RaJ#szVlhc z`NsjHYvLT9uJIm}bhM&gS1^y)4k{xc_mCTA%;V}tkAWm2{zDWFZ|BAOS$h;oRmXhq z5Z-!@`F)E(!dyR5L<1)W6w~7gjLXk!u2r824J7E#3AB@On4I%#J_kr?7w^*r*XC2( z*z9wHog1muMFN@?sZDw;BOed#BNl>us2w8*L#&W#NY|=sDhCR0C^uug;+Nof*az zxFJXIZ=S;EBR+8+m_E#zb}zVrP++*%yR)5?o6+nWkXRk+KxX5_;mMmrNAU{M^<3Ja zgGb@?6OX2iOSYJ{JZ*0{BW+R^Gwh^UP8zmFd{+Pt*hvXLvdS0v{ZV<5R5pBx1>k_c z=iX`NEE3Cv)LAHkMcvw7q|HkXBL~3{RHhHC%bCYKy`Yq zh2L*v$%54$iHZ$!6WwJ#wo+7uK!Egpo;n!NrV5NOr}9YgD?FH={XW3fmkDC0(d?AB ztjjmTXkI1Ay&nuQ65>c(KKo&-56PRv1t%^DITx9-9Jgv?E*>_)DId0dM%c}K zfJsDVkWOP!b;<^8cEJD=5`^ibQB2*=C7jCFaNGB$H78iM-y9G4ZOY+Z!@C<2=Sd8C zt(x602Y(pSYUVC6Nd=F~6oT*C|FF7$o<~EDX{-?p>P2FTeI&(+dW2dTYcc>e{?XnYlzvQW z*LAmRIteWp@aaWgxgSfr9^8IeF+h#CQ?(2)UNeE@1yK-zLDtLcMF$(WUww%9eYVf@ zx%x_E0Opd*xm+&L!kSs{>kNlNLYG)cdpN7h`y(31vUA$KB1?wj1~<`{7TLQlG9|>( zJTsDYbF$+y2Tq~}Z}z!ErMRxpc)^9QYUdTs)H^NyBA4}^NaID~uq%w&SZZE;R~_H@ zcMEbOkH}l1Rqh+y_V&QtZa6#oCQPyMAK$G25cl^rW5Nt^e-J-qr#p`ryi0{5!HA#K zeN2+p^mguHjT2jpJT70ZKKaIv9_CNot~^iM0bLROX8klDiRY7Cm=84)G(7T52{f(r#sZ@djIb*&H_bc{NTfWCF4FlH32+3#Bz6 zxvHnk6C1{lfe~djiNWH4=30ryXj4k{$(ZOvWcvZ7tF?CC=>wlkM9-VO&paVOvPIvI zwMOU$^&@*EOydpRZI(gMHIf6{=`B6#(B;DiU<`BrVCsH9U@`BL6oPBI;!C^3GR!nF zmBb^qT}QDlI7HN!o*?mQZRSSKpAiCO;{#W5uqN#X14r={zLqkkM>|!!d7> z*d*8NPrBT8o)hCule@6pJNd|kC?%ZduX<#WzZhJJMzVEiH?!F~d}(R2A!@Km8VA)L zl)J6?={LfC7IP#J2BVcPYrXkv(VXiJi_FMg zvUIS(aL3BAjE~>-7}m69$Y#UTTe{*gFcu0Oe|;8sU@)1&w0}376+*gMG7^3v;K}#g z4jPM;h3?AH$6rWxVmK-_6@F~@kWp7m?FyA41m$Yt24cGpnlLX0D3e5U+;qn%)_U+9 ztvOmT4f%^O{pn?K@E~1E^~M~Jy0Pq+@)f)QAKAY@EwG`HyMW@YT0}%H=zFv37?c2FcZC#!nqfN4cr>(?r#&ELk4iFaqK`kR8+2y8cw{(j+uHv3=82@efm_MKlT7a(s>Mdy!MLll4?SXgh1YI$# z+d`jy8&kUiht0g$H9eUB_I>{~F!l$aB;$Ycc-6g#1mx{A+5W)#e7jmC88V1q9sDAQ zkA2-RO0MURtt3=~DCp2uNcSm&66{oPR(__4-{-=3JL@j`p!^M9^QtS11Fc)+ zZAeB9YrEW%z=M74ObVeVXUb=Z;KO01x#CVs0EK$7`;ldNZnh6fh(Bj4PJ= zvNQX`7cpO!xD`Knl$J2%{(%HzvJE}PYqsI2MD_J-eY~zqx0?GB%MWxNZoHaRnDSuh zgw+To%)hm+BA2B$lqY5O3yCTO%^{+1)2RTYs|^s@DvYMxFs|lHTSA>^vjp}00t31} zfWh;v7PCw+=TaN4bXQuzs<7e-LjpRbAI+wxjhoN{Ys z%#+u|Yr;#13i-C(aX6Np0^08)xkmB=qH;nHoFp~OeDrTz&F(cYvE{5J`{j*t?i{ss z+5Vw(Jpxa}5Q0(4Ebc=^9yIf6Bi5@J zZ5n%f36y^KtGWOt*i;LiW`8;kwjnly@7e^b#S#d=Bdh;P6lWNd*}umdHzHdGxbyFL zNvJ-5mA5+2ImMbo#>HZDfN^{4Xm&&4?|irAzxd@3R%z)?QoxSM!X#g*zOF%&)-Q&( ztkTDynsi~@y6*oFaXX%~T^q)J(;mbFrHFVl8z}r-WJYyXj>(?3#r!8omUTG6wfti{ zT%0_1ce3)(XM{lym!V&uIi8yXIPV&4+2CO8%)XmoGiKFaioPQnh*XY$;ZcJCUd0BD zL)9r4*t6wHL_BN|PU2XYX#MMyOBoWqc}IJWhX`B1ueA@J{*RJA%{rR%%tSFW7}E)t}vbywjebk6C)KyjL}7Lg8F*EfEyE6$%N{dFR)Dt_KT8KkIKE-UpxK!gQSqg zA?mm*RmRjiMq}*0jXpeA?r1|1U?;0hisl$;#GOnK%t@{>MN0OQlNHBp7fe@NC$?@a ztjbfV82~4+neO#V>26ysL~oLl4OZqMYPgeO0IBCs(nS9qS%?ra8Nhx&4v>Dz;Z@qi z89BSSaTuxAM;X6~lYlF?7PqkNkc$-tvP* zEoAYQ0Sz0D%%F5H%9)d!8!EUPz899mz2T76DQ}nfW9E{rrv4DDbgZmj^Bt#4;VwgB z)eNrh>spLV*b{60J(x3~<%!<3>XbnjGD)hR4tO^L0#1B8l$Nd3LT*2CJ(N&sy{7LJ zLtPbf#!&UumgooyPR_-V<>RC=n)1wiOSYNg%5S*ND4yd>J!mI0)h0S3;X1%7rrI!P-;70RLtRBg|LR}1EME{E2M zk&{Ksv!GkdF~(VlmPhT0ka}zJ!5#4<7-HoE1SS%^_*c;K3GK8N9FY^aoz-9<6@1A1tH@p{^pVrkTfCh~O)-^#WAj?cICua;NC0jp=; zF6jo;V!D3(2rzDi{hIW}4zZ-Z4nm0pwNIi`mdCt^?Ot$#n|A^0G&4?@=nO_C1Bwi+ z`Bh`0%7NbUh>Y92b__6kyU2{v7jV>0X@SPVu1x$oC>7j?>=8SKRSCCx0;ltBfXPCA zg~e#K0+Vo0PJ?73Kl3B0bXp6hdWH~ge*Br)ZK9$+?QFjFJM@T}AMcXo+8_cF@D*Hmo#B9gO-z@;r*5szRPs1nv^AIt(W$-tHcT-NR z$3_2eyEpe`JgU_F=TEHT4X!}>9qS>Y-wnmPU*P0(tBu_%uAlHH_X{_mOjGU``HEcq^aPY?gzicc zqWRutHjgr}6~)D$&=0R9rGwaYL6TP!5znBR2(@=#b4=GZO0GN5ubNiEb&F0}{%Po2 zk*aI<;eCc|hp}peQK8b9LlKXY$rODNDTZ~fJkKJ#RJOmIndWRw$d)Y*V04j{k1JED z_F7IPFB_jx|4HcU>Cx}B-5B=ELI4}ydkZ;K3cTx*xP&`961bIb$#huZ&HnPs53V;z z8F@ZMjeKnUPq79N7+6T}M$j>OYoDVt4_m^6ZbK9H>Z;=Mvb_?@KW}~(p8KZ6c)$Nn zGh2XO1~7W%8+D7%-^rGKL;F~AC&1;}{6to^eh(Fas!KHBRZ)n-G zh;Qr!vUF${XI|(e?)i zhSNeXS|mffg)D8vkqB|omsUQ`%Svm3BM!XTR4Y2b9Y7wB^I`+WE8RsQ3Tv7c!G5L; z$x4zY-a(}!h9?7`Si8q+_9^qUydbApZ>RLGTH&;C=2od2h{r zYMc(pVW9(Xa`D&yImG5ghm0-@*y=gU2vQ+q4-G9o!huE4B@sXG6l2Cg;oDN)jc@$P z(WnaP8*H`}Ys7xv0n4kkT9kON0dR;Z>A5@sRqRVI6u5jAUjqyP1DkJvvlKmnDjv@7 z|Lfw@W|aqnRsNby(m!V@rq8O;BKe$-6ugA0liXx_du}(t+m;CeIAoS{WT7*YZPg`vb=wO_B51<71Cb@@cWX#5 zmciHJXK;sw_Re7=*L7q4j$ZM}b}w7;W8*A zji1=xvbO2%YF!w=zAAJ@=o9`)u5i;t{2if9dTDGx>A_##K+Og-K|2rG<4~`-m%V84 z>*bSx`yH){iFelTr9?E5ql9@>2;c&e&H(ni?_gV&&Dj|eOW@s3>;=R2fQ6nK{v>{c znN9w96DjiulH`7AQNpP66aZo~eoEC>bPLHwuHq45Xj5OA&MT8;9@+vqZW|R*0kxfc zC0!f4(uHw{a$FqT?km*O^c`s|QS;p*Xj=DeI|~VCH^r3B(uuRO$|voxc9Rw@B1Vf8 z{0CVzXv`LHmVg+?G2kqb8fVRt83hfZ$i-c8d$+z)nwK6t&CO?;WG}%{9F8Lbw3~XE z&>>@%6tCo5#HHpps=W8+rCDD29o0~cjljbeNGj%wyL##hv2p$mox}R&Kb4F>9FWbU z=dd)sE&g+s__||sK$2hh(P*y0T!4;F*N3U-+yf=-QgyfQHEoo6!N;ndR(8x5{6~^( zJF6e0a?R@X^F_qJXj3?EVHi;vAk_Lfli0ck|I~IMrf`?Hk*JO!6S}I?mcDM0xBGsQ z+A86Uf!wlwkJa1zNldr{DRueBnO30nlVm(*b09~3rvr0`jJeI*C^(V@)WAr!ZC+$V zv|A=sV)72A|{ug#zLwg$cK zRxWDon*pwPhAI7kvP-K0!)f|$4L$AODlf6lo=AAasT_-bFD{qgbx*R9?6(#5yj#UQ zotp%W;i7vj_M6LDU}ECAWPSWm*3-mR;>8?sA)eS-=vr4%qAn|{5jDr0Nk|fZ{})4? z`IPr(K%VolJ&@}rN*Qr*tBTw_Ll^sp8T)>o%G{mgb`AGthws_hpuaGZj3P#Sq7Kb5 zV0kq~u_uW@0orgQQ`Rb$M(S_Z-UrgW!$qx>4Pq_r+*x7p$8`n~&EP(ix0l=Y*tR!H z)RI%i)HzHOy3r09$w};h>Juuf*2n0UhC9W$(_Q=wD}19YAaYf>N%iywsAfH7+~RZH z8s9cZjR9=!@b?3kYy0yYm>7{HdX3O9Z;!|%2ii~}dIG8}Y}NP2wSZT}A+34N8e>M{ z47xo0&u4IpA#YIMCY5d33ESm7plU~8Z<5Eidbh&y`?tPwxpHHmD~I-t>h>=D{dmi1 zQ@knS*NWxwFLH$x2}k0Wx#Lj0$LvsZP14r(04EVL+Nl?{$Y8odZ!walg`5x~4*M|U zee|^9$a_|3`X^HdFKbyZ zv^y1mo9Up*Js~>4QcepA1eU!>NC~hAAw$N2rR4|Y?tl&vft&%zmWcX5Xbve5(KPe{ zw{a>Jq6Azp;uhJmoN3@eJb{a#RLZwD08v7+feVmqp%cS#qY9)CxG))J{?7%4oE%a> z_ZdRakLaMWCm_7Qg6RV>1{Q^R$QNMA(STF|3y`vyKcYjNok9p?Fcz*+13?B1^e7US|4NvPjS>{m^` z%CAuNjQb7x_`vifSGTu+9jyj65U#s6lc>F4W6^os@JSS*)fWzM z1rZa!>Jt5NqdKW}W`6AS=Z68}JG^W^&KPWKH$UYrU>hfmqDzH63i!LscIAggEW zur*2mrN%tx!t&#}uSFY)l!jgdrpI2Y0~bW=oB~r1Wh_G%ck!DAPXg!P5g*|bNb@-ZCBs33yV`5B8umbpHr7n49?7a1-BGzC*FPp=1a7_4gn%ya zDMAX)IqMg&Y_b+%CF931{xdxCwrK&OLoIC?UNRfPf5D8Xm$?oI7DucQ#|viME-2+_ z-cL0^T(xkA!J%pjUn^q=Qh7m*6*Bw;FPk%gWLPvwVs=MmQw7<$puqLyJNjWkv1>pE z3?IN%Q)U=x^nu`BQh+0*q1H2vac0XMST~C-1>Wl1xMRejCnEp(?FIz9WdN#a`UC{_ zpnAV3V2mc|5-nvLGA^g-l1@Y`;dXr%M`-Y7eXBBOI?OU6IQS}uHyy0_^wUG+vB;A0 z?7JQAOtn7wV7M&u*guvOD7;bniT678UykR0{(B|Zk#eil*YI!c=l`2JRwG@@qTMWX z;<~SQm3wNDg#8_@f;F3_M^k7w^5uP5o?9t^qUDO`hZtN)n^Za_@>GZ5tY7mKOhp*R1hcBK8! zsc(H1^JqGQ_*{`F*=DZ8OJ~gD08e23b6W&FaL1*QI|ij(xk&o4c)`B*ipr(~hU0VB zBCI%M2}LIr(6tVEtpIhwwee91{4bby@t-Bnww`GK*|@?5ujhQk1h6^|Y?Hg>W2+4X zuy3ZzvlhrcZ;ykYX_qft6IGr4;I zGYM+E6&^Ye`yv$3rjm6Dw(<>$fouRepkjc=13$bBd}6ovtxEuFf+h(m$9RR2e3Fjezew88v(-ALx(F`E|0!#X3;J7YC zN`OY=_-=j%@IRNBvYdU_d^eYF3ey!1_*xM6TOyKCf02iJFO<<>Wkeu8M!IZCzxBh8 z@xI1S;3X7NcFTYYC)@BW`nmbyUxXO43f$aZ@;%t&L(_xW?$XlBy$F&L)z)^_Sa@6o4FLxw}K)mBc z9C{!MLUGTGxC10O&MVd5LA36fNfZ%hA;zRDK;pZ~jvIiiqOU+6V>kgAjhRLe%q$w* zRamGlSg8O1LxTbp)Z{|~iU5I5Q^`Q=u;XVM*=gKlATBH{;0^xA?hLbduf%*k`y>8!k|f+=vpjn1_Gh`-!iKukffH)p12DkLX1bYRDU7@3+li2u5n@n z-t}sRKK?oYhk$Lvaog-K0z`6{j&<;+avcc_bMws(4a%kOQvd`^qod0W0CM5rChY0{C zjQaB4v;^00lu6VM^yaMEexpjDgk+?|6De$ zv}F?UkU^k#+;9R(H(Im8GmeybX2-@|fv~y@UisJw7^w=N)f7%S)!fsY+x0#Ode@8r zL}eWHKcccpYyJI1_EQa_qEGk;vugCpKceE-^1|s|f5-x4^9X?UPYC!6@RC9Q`~@z@ z@*@V9*Do||NM`{ok=qW9h8l(klkvxHswgcP% z=dBQELs*@@?@*d|K5~0^^dU$^PGGC2Es`2<(fU>%@`e6<5&HLignZ0AmSIr8-^43> zVEGZ7Y0*BBQQ9n)%J<)}3a=vm4HsO_CC3a-kbS(5IaAQG(W4j*S3q<7@B0Wmo#b@_ zgU3z}_8Ud?@lYwk6~G0a{9#YOo0dugA|gR;h8vDo1{#wF`BIS$)m4+{`||=b8o=$E zPDvZ30WqMi&gSRnNo5GDhx z2hx>NX{fRCG&fohIl&c;loOVJBA|bG=*r)vb3kXrRcOxi7jbdu2u8`(!Q#z+n(1A!07fJL| zXRwrF(xm8s&cS=D2&geKglRtit_;bSi@`#djcJwtuKpz;Q-NS|+6Hh11|rA4LVrUf zFh-+vv8S>>?v|Ld9DKK91v(b-T8<_zfLK6%5yDSR02Z#Wr{4fN*j%FFf6>Oee^APl zdavApVJ_L2bTQ%|)B=p7@GhADWSHus_m%~Jg?xYB@WqURB*Iq6jFRS=Z2vW*rVHV~ hW(0|#v9uU^5E7zY`3aX7;7kJTTdAo=7X*v2ci-^;1DFB#DHKzxf9Ry zC@`qcnly3JOLQ8dOt5{K#y?Ez7^flA%oI+Nl7ysy$B7dg!BCg8g|_$FPq%g8YC4z_A%}Mz$Zk(?g)`B4fRT*@g)# z@)A}Ug+3w7?k3E^2n*^|Dbb;}wo6%3f1rJMS!DBcd&O32sKtb`p4CafOO)IS8>QP|X* zqD}*$RKkwb%F*E~sYcEXKZf7l@NWa4Q2(*gJ-v=~OtMtu0AV}A`!RsI_!i5N6>I1JfOthdi5Oxt!UDPNQvzPcyyXRC3 zx>_A5N6)j?UvJCuq#1thv64Pdx)h+41tS$gn!?U1Wb4Te({GQtR zdbT-mask;D^kJ~RtxFsrMrk0ROCWlqM0DWi0gI~%FD9Hx_-(=;68@C%X@bwQCriqg zSFKndl*W{^7(*u4{Lp@3IwxyE2cOismiHKifJC>_8w}*s#&*vqZQbV@<@~!NCP(fGi+@YdlL>crW@K zQ0%@Q84{k$!R4nI{9N!dn&&%wp7-3bH%TLHf1K#r7e7mzX$3V3?MsLbs}Go1Jsk)z zN$o`i_3fojZ-GZLwX~UBmWY-)JUIJAbhA7cZ&G)pl;rfOD{6e(>9dKO^eIjK8a5Na zeFac`tf_s#;WN3gYa`ZkPTyy*mH3fbp1E9X*5D}luqpjZsOQ(+ukdX+-fy1PEEb8L zmu^xisplmNW^bG+5Tq41&LpuG?fyj3^D8cBJvA_FSoCMQNN{>>{np@=;N$(3;}(69 zc%#uT{!72O=xLDIvU#C)KhHkFs{=1mu3R=P^pKzb>;%6;KD{j2ZnM52C7EZPYX2yd zEc6tt)@x>4Pq;KKK{u)AY3nKf-0S|i-F)tNe}U*6EDCmdm&Oqe%5A7Yp zW}R7Q)ZNk~9&UL2Lm@Fb@Ug%cTriu7jku_mn$>)13{W$KN152gb_B%Eq1z zljd|8W2DJK>2ZFc&|9Gk{W8b{g>pCGL2kvr1% zMXqX!wKND_LV6sw0vX6}{8dd#hB<~V#mz3_knt;(U%~Z!4Jei()>(fVEe@+VacSPh z`uWve9xb0ue_q)6jvTdm1NUWHy_Y`54dMFarsI>K926GSqDa9H zFY3pxfFO1(TCLv4+R#TOC!uJY1dy5;uQ(|W8vjSj#^)=!?lt^;Q5a1TK{_346OCD4{Hqr?}La2B8UES zS~2XnM;GT_cac%jCEg12nQh@bZ3gjB;yl6*1oMZJnnHNfr0%?>GpIAqy)4J?Dh`<# zRkjfZj(b-zwaD7tdqXnS$JcHRe|#yGyXR4AQ%>hKQW`BA_Qc>fW6wST@2R#uPw-}F z&n;RZckW$DYn5PY3l}?^KPM!(lMWJdoOd2!drvFZ^Q-B0lbXFFy=olA$mS6<2<2tO z2C4x?gC62NtOWtrdj=44f@kvx19gCSADJ`q4ro+9QTVq2%-G#>rLAsBodd7&tAy3L z;pDO(dcu!?P^XLZ5f`}$0!XY1%PY*34MlSTc+aJniw5uxJ)y*wToe{Lp$xBeSJ5){ zd2e^1p9e+m%Zir=jM&Y}{n8{lrQ!t7Pnnh7qBG>E@)v;Q>GF*sRu##z^BhU}PI(q} z%Bcs^@LPM}26Zag2U|p1s`MR_=+xZnFaZF@km?nqN?7G|N=xL}svY>Pt$KsMkPU}- z3019f?cwL=R<&xwf=UofN0(q+J#k;);tN6`RUPt->bpoZP0iXVIbc*r$=Nk~jX+epN?fyUFRwLn*gQNo+FgqIpv7a)o}a>JD7R$? z$8&;RgDG)>;IQWk`n(8)f$(ifMTJdyy_!D6i`5H6|uD@K)MqK zvOzv(hi%>2w066;VsZEDbex@Tmr-_y&iDsG+QBW|@{DwKDpD5dEK~M(^Tk%W4RgMG z&pG#;^SkGs`(SWJG58-v#0Q;!?P_(r=?q%9i$CuV3kw19N6$vASFq%Df7dNFq;;1nXteI?du6~RVbj;80o7F@yiUoD zd;yrP2mN93g67E(pLp(pSQ^)Cp&=$l*t#LeatTZ86_bN+KQc&IV+#l<8c%~NB^ENK zP@l%26v9r;h|%Gj=xMPqyb<4_@b3b+LAEro>anQ86q$rwgO7`t^+mf>v+7BoYxkok z1@#PBm?DIkn5d1JUBdBaoR*?jhX_J}Ry698bc2Lk%LQ01VMpLchq#p+JTxs~9BD_t zTeRtR3j5;30bNc&yAOy#{}x@-4jbUy2O7dei-6^u4jHR%fUp%x=+ec>*xK-VGw)(b z4nW1wx<0WcZhLUIY%~F%MJvVO70acexIp?iPkTKkr$LJA-Jr{$al+y-u3!{>fUIXy z(Bt7s-x4(}CoHRlum+Q8eBx?xD$KSZUtFZ^BrFBNbYnMRkwBvv$Mj7|myNJu zH(zUcSxlH`7Q*u-%NT?lXxGOPR@E+b8hW`s+bB<#6%IlB$>Qb*!D^!d~p?jEZEzX^VuG$hS$7h?y+1i(n^ zCG2m|r^4rR8_*7-9f$l~_-++#>r$h-P^uE4yXjzWF`uygOQws;hY>h>7P-jTF z!l7&qJVVW6IgeM*R?Sw<9+^EnTQN&C<+GE-H||FDd5rvabB9CeylrqezcPplp=|=-R0@3L7L=6yyNPIU3k@#NX$2@$Zw|{?*{(xS*a*XQ3`}ZEuuVYTZ zI`1CPtsEixa8Hpr+>z2m-5#xqd-LRfSpW%bUb0;?9^ep~1<$TD4N-$rI)uTU|JvCk zlr-oKP0tx`zG(LzR%B@`iom6#0g6>g@rT9!9Zou-o=^>BZGn;fmMNksQZ{W?_Ggsp zM-@r&&D8A{-N|VIO?9+CN%SV`L%%X$5G_~WODv5$#1&6HW*yQc8?!XW7fP-s3MC14 z@5|Jv-+^Fe4YRrOM!^{z&GhYRyBAggTGh=+=Uy{UmtdX-{sOy~LmOSn;+wMVUUy7p z1nKqV2xkUK2W85OraMPiI6uXB?obt)WblP5D-y|%2Pm*vH0i9xxyI)0zv7M?Bh9oc zfvCF-$EcImP@T|aBx=kwz&}$u8eq_Om6kMgmD|TluIdf0iv~w#gzM3V;6?TSVT`&X z_3Q0kJ}G8vzGU}Wkj>r?m-b8iR14p>4Nrts&g1{Qn&$7fo}3TqZo{P4vS% znGy1O0I0W%Fauv3-e(4z_rnFd_s8;@`|t{hSG!Uj%v?Ig0elt<0Haf{gvLf`*J?Kz zgps*7M#d?hv6!+k`j97tZ=MWbEtuqURgsKRB z%%qfW2!2gz#$8&6$scOy7ejHJJk+Wux;|YK<9m8WIkic&IX z=xIzkTn2BzU0O-lGPIkN{6fRh;YKN#7u}g<>P}#Rc8f&}%lb1%+>@0=xsO+s()_m7 z^by?J+i+hfr$7*IKQ0=xZ~rKr;TkTL3_ISU5g5E3rQkF8Nj3Pw3qlN+^C!S!9d1%Y zzh{%uUv&A+D$w6Cc?n_Us9SKT2 zG)&s|Ef;h5#Rzy<)$F@PC&j}3o9K+xzTZXHwxc?*F6wBIRuvYw2V`DYz@oFG_C7j6 zObO$w2{Q*t*#}P2-EO%mr}xM}%leR*ZV+!#RQKjU=kP`bv}p$jiJOMa^ha`)-n)!G zN?=+G3IZjAj*BZxzYc)LrWNN)&%9veuXH%IY7yj$FSmqm`M^F08HR2QG(iYEfgq(l z4)Qf0Kj;zq6rU?h36^l8=De)85UJNPidU;j>MXk`teuBT#I%~wGWnkY8_Z|+VE6^d zhi$$S#o8^|4zH(6j;VM#idT-@qAjAk@--|#bk+7?IOmVvs%X9d;_<2+IxqHArQ)ls zzCq`u!D^R+j!NY(>uE?)3SL4}gw4(qcC1qBcx4%-!(!+00(_Mx-r?`*3nz+&TCJ$8 zeKn?*uR%FswI+|C+u}bR@LmaQ|MgDVOnjHjJ8(< zs~swZpAhh73i=#Z7zmHfFU@|Q%fMgcywXqLKOIM(>o~#wo6G*bpMSq+F@K4VdT6}$ zgOB_cQ(hT0fv~ zGo`-9omESYEk{j0D;e%(EVT|0w!;mx#Xl}%FMhIE2#)2Tj`GYu%31cizCM>f_$}&B kPhzJ}Ld7ANKopf%iI!v^Ez_196u+G-6iSGc`F$AuA1M~n_W%F@ diff --git a/include/mario.h b/include/mario.h index e2840f3..b70f45b 100755 --- a/include/mario.h +++ b/include/mario.h @@ -30,15 +30,8 @@ extern pnj mario; extern int coins; void marioDraw(); - -//void mario_physics(); - -void marioJump(); -void resetMarioJump(); // resets coyote time & jump buffering (used by teleporters) - +void marioResetJump(); // resets coyote time & jump buffering (used by teleporters) void marioMove(); - - void marioBigger(); void marioSmaller(); @@ -46,7 +39,6 @@ extern int global_quit; extern int numero_frame; extern int mario_xMax; extern int mario_dead; -extern int id_frame; extern int mario_immunity; extern int mario_has_bullets; extern int last_vx_sign; diff --git a/src/mario.c b/src/mario.c index d6471b9..213cab9 100755 --- a/src/mario.c +++ b/src/mario.c @@ -11,9 +11,6 @@ #include #include - -int id_frame=0; - pnj mario= { {26,17,6,8,0,0,0,1}, @@ -22,8 +19,10 @@ pnj mario= 0 }; +// if mario is able to throw fire bullets int mario_has_bullets=0; -static int mario_timeAccel=0; + +// If mario is dead int mario_dead=0; // Used to draw mario (mario direction) @@ -32,7 +31,7 @@ int last_vx_sign=1; // After he becomes little int mario_immunity=0; - +// Time during mario is invincible int mario_starMode=0; void marioBigger() @@ -49,7 +48,6 @@ void marioSmaller() mario_has_bullets=0; if (mario_immunity==0) mario_immunity=1; - //mario.p.vy=5; } void marioDraw() @@ -73,33 +71,11 @@ void marioDraw() } } -int test_sol_le_plus_proche(int x, int y) -{ - int distance=0; - int t=0; - while (t==0) - { - int type_sol = worldGetCellCategory(x, y-1); - if (type_sol==CTG_SOIL) - t=1; - if (type_sol==CTG_DEATH) - return distance+1; - type_sol = worldGetCellCategory(x+7, y-1); - if (type_sol==CTG_SOIL) - t=1; - if (type_sol==CTG_DEATH) - return distance+1; - y--; - distance++; - } - return distance; -} - static int jump_buffering=0; static int coyote_time=5; -void resetMarioJump() -{ +void marioResetJump() +{ // disables jump buffering & coyote time until the next time mario hits the ground jump_buffering=0; coyote_time=5; } @@ -107,154 +83,136 @@ void resetMarioJump() int global_quit=0; void marioMove() { - id_frame++; + { // Mario star mode & immunity counters + if (mario_starMode==200) mario_starMode=0; + else if (mario_starMode) mario_starMode++; - if (mario_starMode==200) mario_starMode=0; - else if (mario_starMode) mario_starMode++; - - if (mario_immunity==60) mario_immunity=0; - else if (mario_immunity) mario_immunity++; + if (mario_immunity==60) mario_immunity=0; + else if (mario_immunity) mario_immunity++; + } if (mario_has_bullets==1 && MKB_getKeyState(MK_RUN)==2) bulletThrow(); - if (MKB_getKeyState(MK_JUMP)==2 || jump_buffering) //|| keys[MK_JUMP2]==2) - { - if (mario.p.vx*sgn(mario.p.vx)>=6) boxJump(&mario.p, 9); - else boxJump(&mario.p, 8); - - if (mario.p.vy<=0 && MKB_getKeyState(MK_JUMP)==2 && coyote_time<4) // n'a pas sauté alors que la touche était enfoncée et coyote time =4 frames = 0.2 sec + { // Jump (with coyote time & jump buffering) + if (MKB_getKeyState(MK_JUMP)==2 || jump_buffering) //|| keys[MK_JUMP2]==2) { - if (mario.p.vx*sgn(mario.p.vx)>=6) mario.p.vy=9; - else mario.p.vy=8; + if (mario.p.vx*sgn(mario.p.vx)>=6) boxJump(&mario.p, 9); + else boxJump(&mario.p, 8); + + if (mario.p.vy<=0 && MKB_getKeyState(MK_JUMP)==2 && coyote_time<4) // n'a pas sauté alors que la touche était enfoncée et coyote time =4 frames = 0.2 sec + { + if (mario.p.vx*sgn(mario.p.vx)>=6) mario.p.vy=9; + else mario.p.vy=8; + } + // n'a pas sauté alors que la touche était enfoncée + else if (mario.p.vy<=0 && MKB_getKeyState(MK_JUMP)==2) jump_buffering=5; // Jump buffering during 5-1 frames = 0.2 sec } - // n'a pas sauté alors que la touche était enfoncée - else if (mario.p.vy<=0 && MKB_getKeyState(MK_JUMP)==2) jump_buffering=5; // Jump buffering during 5-1 frames = 0.2 sec + + if (jump_buffering) jump_buffering--; + + for (int i=0; i=2 && MKB_getKeyState(MK_JUMP)==0) mario.p.vy-=2; // Custom jump height } - if (jump_buffering) jump_buffering--; - for (int i=0; i4) mario.p.vx-=sgn(mario.p.vx); + } + else mario.p.vx-=sgn(mario.p.vx); + } + + { // last vx sign determination + if (vx>0 && (c1==CTG_SOIL || c2==CTG_SOIL)) last_vx_sign=1; + if (vx<0 && (c1==CTG_SOIL || c2==CTG_SOIL)) last_vx_sign=0; + } + + if (mario.p.x+mario.p.vx=2 && MKB_getKeyState(MK_JUMP)==0) mario.p.vy-=2; // Custom jump height + boxMove(&mario.p); // apply gravity - int vx=sgn(MKB_getKeyState(MK_RIGHT)-MKB_getKeyState(MK_LEFT)); // Mario wanted dir (arrows) + if (mario.p.y<0) mario_dead=1; // die if out of the map - int c1=worldGetCellCategory(mario.p.x, mario.p.y-1/*+mario.p.h*/); - int c2=worldGetCellCategory(mario.p.x+mario.p.w-1, mario.p.y-1/*+mario.p.h*/); + {// take coins that mario touchs + coin_t* c; + c=(coin_t*)worldGetCell(mario.p.x, mario.p.y); + if (c->type==COIN && c->taken==0) {coinAdd();c->taken=1;} - mario_timeAccel=1-mario_timeAccel; - if (vx==-sgn(mario.p.vx)) mario_timeAccel=1; - if (mario_timeAccel) - { - if (vx) + c=(coin_t*)worldGetCell(mario.p.x+mario.p.w-1, mario.p.y); + if (c->type==COIN && c->taken==0) {coinAdd();c->taken=1;} + + c=(coin_t*)worldGetCell(mario.p.x, mario.p.y+mario.p.h-1); + if (c->type==COIN && c->taken==0) {coinAdd();c->taken=1;} + + c=(coin_t*)worldGetCell(mario.p.x+mario.p.w-1, mario.p.y+mario.p.h-1); + if (c->type==COIN && c->taken==0) {coinAdd();c->taken=1;} + } + + {// End level flag detection + end_level_t *e1=(end_level_t*)worldGetCell(mario.p.x, mario.p.y), *e2=(end_level_t*)worldGetCell(mario.p.x+mario.p.w-1, mario.p.y); + if (e1->type==END_LEVEL) { - // sprinte et est sur le sol - if (MKB_getKeyState(MK_RUN) && (c1==CTG_SOIL || c2==CTG_SOIL) && (abs(mario.p.vx)<=7 || sgn(mario.p.vx)!=vx)) mario.p.vx+=vx; - else if (abs(mario.p.vx+vx) <= 4) mario.p.vx+=vx; - // ralentissement si au dela de la vitesse sans sprint - else if (MKB_getKeyState(MK_RUN)==0 && abs(mario.p.vx)>4) mario.p.vx-=sgn(mario.p.vx); + finish_level=1; + scoreAdd(400*e1->bonus); } - else mario.p.vx-=sgn(mario.p.vx); - } - - if (vx>0 && (c1==CTG_SOIL || c2==CTG_SOIL)) - last_vx_sign=1; - if (vx<0 && (c1==CTG_SOIL || c2==CTG_SOIL)) - last_vx_sign=0; - - if (mario.p.x+mario.p.vx + gravity - - if (mario.p.y<0) - mario_dead=1; - if (mario.p.vx==0) - mario_timeAccel=0; - - // coins - coin_t* c; - c=(coin_t*)worldGetCell(mario.p.x, mario.p.y); - if (c->type==COIN && c->taken==0) - {coinAdd();c->taken=1;} - c=(coin_t*)worldGetCell(mario.p.x+mario.p.w-1, mario.p.y); - if (c->type==COIN && c->taken==0) - {coinAdd();c->taken=1;} - c=(coin_t*)worldGetCell(mario.p.x, mario.p.y+mario.p.h-1); - if (c->type==COIN && c->taken==0) - {coinAdd();c->taken=1;} - c=(coin_t*)worldGetCell(mario.p.x+mario.p.w-1, mario.p.y+mario.p.h-1); - if (c->type==COIN && c->taken==0) - {coinAdd();c->taken=1;} - - end_level_t *e1=(end_level_t*)worldGetCell(mario.p.x, mario.p.y), *e2=(end_level_t*)worldGetCell(mario.p.x+mario.p.w-1, mario.p.y); - if (e1->type==END_LEVEL) - { - finish_level=1; - scoreAdd(400*e1->bonus); - } - if (e2->type==END_LEVEL) - { - finish_level=1; - scoreAdd(400*e2->bonus); - } - - - //if ((mario.p.x+mario.p.w/2)/8==(mario.p.x+mario.p.w/2-1)/8) - //{ - gift_t* t=(gift_t*)worldGetCell((mario.p.x+mario.p.w/2),mario.p.y+mario.p.h); - - if (t->type==GIFT || t->type==BRICK) - { - brick_t *c=(brick_t*)t; - if (c->time_hit_id==0 && mario.p.last_vy>0) + if (e2->type==END_LEVEL) + { + finish_level=1; + scoreAdd(400*e2->bonus); + } + } + + + {// mario box auto hit + gift_t* c=(gift_t*)worldGetCell((mario.p.x+mario.p.w/2),mario.p.y+mario.p.h); + + if ((c->type==GIFT || c->type==BRICK) && (c->time_hit_id==0 && mario.p.last_vy>0)) { - //mario.p.vy=0; - if (c->content==0 || c->number) - { - c->time_hit_id=1; - mario.p.last_vy=0; - } - if (c->content==1 && c->number) - { - c->number--; - coinAdd(); - } - else if (c->content==2 && c->number) - { - c->number--; - bonusSet(BONUS_CHAMPI,((mario.p.x+mario.p.w/2)/8)*8,mario.p.y+mario.p.h+8); - } - else if (c->content==3 && c->number) - { - c->number--; - bonusSet(BONUS_1UP,((mario.p.x+mario.p.w/2)/8)*8,mario.p.y+mario.p.h+8); - } - else if (c->content==4 && c->number) - { - c->number--; - bonusSet(BONUS_STAR,((mario.p.x+mario.p.w/2)/8)*8,mario.p.y+mario.p.h+8); - } - else if (c->content==0 && mario.size==M_BIG && c->type==BRICK) - { - c->state=1; - mario.p.vy=0; - } c->hidden=0; + mario.p.last_vy=0; + if (c->number) switch (c->content) + { + case 0: c->time_hit_id=1; break; + + case 1: c->number--; coinAdd(); break; + + case 2: c->number--; bonusSet(BONUS_CHAMPI,((mario.p.x+mario.p.w/2)/8)*8,mario.p.y+mario.p.h+8); break; + + case 3: c->number--; bonusSet(BONUS_1UP,((mario.p.x+mario.p.w/2)/8)*8,mario.p.y+mario.p.h+8); break; + + case 4: c->number--; bonusSet(BONUS_STAR,((mario.p.x+mario.p.w/2)/8)*8,mario.p.y+mario.p.h+8); break; + } + else if (c->content==0 && mario.size==M_BIG && c->type==BRICK) c->state=1; } } - - //} - } diff --git a/src/tuyau.c b/src/tuyau.c index 957c9d1..b1efb82 100644 --- a/src/tuyau.c +++ b/src/tuyau.c @@ -51,7 +51,7 @@ void teleportersActive() } /* End of animated section */ - resetMarioJump(); + marioResetJump(); mario.p.x=t.tx*8+4; mario.p.y=t.ty*8; // Move Mario mario.p.vx=0; mario.p.vy=0; // Disables every move of mario cameraAdjust();