From 222366f92f3b61f1a06d30886fa6893ecc276005 Mon Sep 17 00:00:00 2001 From: Dave Bernazzani Date: Sun, 20 Oct 2024 17:04:58 -0400 Subject: [PATCH] Version 5.8 hotfix with tweak to collision detection at the top boarder. --- NINTV-DS.nds | Bin 725504 -> 725504 bytes arm9/source/emucore/AY38900.cpp | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/NINTV-DS.nds b/NINTV-DS.nds index 086f3f75f01eb82a0156e845fbda96bb30c2687c..71f1c958e143916969bccbd0e0829d3c4d5a882e 100644 GIT binary patch delta 2768 zcmaKu4^R}>9mn5q@Alwcz#I`I)HobM#72xq-~@xnF`@+26e`Al{8LGZ5(WGNC?ID5 z!2}e#W*#OTSdbK{q)Kj>)mU3H>O_oItY{!D>F(imNUn}xbS#$i`df{SIw?2v-Ou~| zdB68=_wDb_+8SbQ4XF!(n)=x>T;PTJEu&B*#BxTP6|CU>`xnB$JCv~PUvsOzFwQ^x zk8+RPwTo@untl&&A35=&$rwH5!?(@ZCtht?b)#qUdK(yA5jIzREys&R1Zr&ciM~Pb zxzN6aLAel{dkRv7?{kM>s-WcMaKv4BJ^y96V=K)M1UPDI-Wmu#>)pDYBvVv+T&{03 zaC{4yW*gWx2f)jw-+>wDbw6gD!?BuiMu;u=5^8OJg<${|VOdeOeg=jvU?@m9UDO2Q zLfX#1!&zJOt{8yrLTPcfehuI4R99JLyIGtw9sVk;ZVZDz3$=~GerMwd7+)ih6i*;> zDS^HO0)*_LP-BYF1qS`jmw@#AWA8?EvrjgN~U4AQ!%6 z9|b@TT$a41!!s1BrD-8ho&kAM^LtPT`jizoW0s4nkpgNV0z4ntd2is|m)_hDZaS|g zd@EId=|K>1{Fw8!lp;^u!FC;Kr#RqFpT8R(l7k&&QETNB&@v?>ysG9*?1L_DW zlO5{g@fos{eSDNx)`BOaL5#n~N8mQ2uVGTJly;5ZrUh?yWq{v+&(Hi7AEAL1wt0|W z2?lm<5KD|?KUv}}=Jho{6=q7azvi3bz)*E*x(?-ra+fYm*FSq(KQf6pm%>3u3UheV zK-eMaeJCz-ODgrF&M9Rx^P3#RDk{LOlR1m1SV@%(NupA`z~a&hgPRR*$LF`-{et~)qll?h2zLJ0XC zUw7RBb^ByJNmpi~&5_hH#e;~=91%MKos&ed8AP#Dj|DWDn|k$`o4PrpMfM;Td2hFf z#S_(HLm(&0r&Cr#=>a?TwtMQy4)-FzRRiZCj6I84jmDd zboRcPW`G~NYo>FcfxS4FUS4FoALDGnzCuXykOv{ujCLd1w{Y@rkfS_t9z&`Hito9c zDm}+t&Qs`HFy?X!NIcyU^wh>AJb6Vk30PktV8L<4O9V{F=VxJmLUtexNJ|LzCuART z1ase-O+ZGDBYTl`FB9lS2F)RG9C-pMBA1#lhRkAVku=wnS}aa5h(k-E!QsXRBJp7T zTKYbcGI!7ZXp2*C5EV6aO=^y%Lr~TbPGBN+V0$_K1{ zF%4XC6+=Nj4@2s-9<@}sI!$ALRPN+srH-lbz(@I8rXXe$wwBJ{cEx!K)JI=kxE7^;-bQf)jf<6t}UOr(XdfmJ5b zws{Rv_-IkXDDV0BD~(D;Sy4w&mS_T*s6U`?pggckhoh|0n@i{c4V;tizE1xHutMre zqA?zDlHEQdTuR2)})oR{t0MJG&JC delta 2780 zcmaKudsGzH9mnr)c4vXhqPqcN@NqzqkVI50tUv)-#7aa=P)>YARH%B4l?cQK2q>r^ zSOZFj_NQsf&RPuOG2i2{f&94r{#~&eDCjZ zAG`P7-%NFDOm%C_mKdmM8kr`%c(ZBgZ8$BZ3lXkrsD_XOF&}0$?}`ho9XzC~V#k4F z+cKPAxIzr)%^{-U7hklyb6c*C3X==o3|tae?u>DP#h2jnWi|-n)-nb)uBNO3!{NBp zz7%1dlwNcQa;3*by)aPHikApJKk1EJPlx(w7OzZz$~%TtIsmSb)#a*Ft{kqYKem`si7r0taAc`!LKvO&SVgu z&7gY{1I9L(?n_-Qk}( z^%>s`-M_jSB;mQ-Aqdj<{p)8ln&a?RXfug=yIxuBfN1gAv7Y#yt&nN>Cg(;Q906!m z_O(MDi2A(sn7W&m--_+K;Wtk_h04@DkRXAqY)lh24}@zN_O=iS8m8)U9t(6ig|)gI z$97!~W0x)+cw3j<7&@C|J0|I}4d>{x1=s3QhdXpxgC}%Zfj4w1L~9<&e8rY0#JvE` z%HpNMJ@5_cT$6(9LAZ#Ue z5_!0-N2EQ(gFRxhHGkZ*(FhdJiV3h2Q_oV;NoCGiahVY;c>01kpZ3poQA{vE4!(Oy zoB?J$c8P|#zUbK@7NGUAI0%L-BQJ}N31F`48fGH=2!Ew(SU~?f0XO?GZ#Fc0a?umQ zBVoA`5Xxzqe<`cOxc9}X;Ux|atClqo3REFS)~Z>Z3U*nm7-#p2FDz8`8@85wrDWfV z=+=y}-JV;PbD9vlUImt`*%-Tcr?XoV)o#xnc1|;^jVfbvwbA4^#-8&4G(nb~Aj|t0InA-Mlf}yWOf*2hE%UogTjqC~^D|VYW~duu zWsR}iUa(}TLT46DBWoLIaiKI(?feaD=9)TpO-7??%&BvmhE8;wN+!71MbxTw#kK16 z&GqhnIqTK^v3Ion_Ip}zimZi<38sY&V*HH#yw=ZNL#tk{85w&U)JC^R3%IM)j^P6Y z7=yo#;~5ZvnlAk@DxSXyk8njiS=aEOE*J1|JWqhXpv}f}t>Yj1yv#25#!qv2Oib41 z;Wite2LthejgO{t`07}GDy-vSns++DTA}`3RmP}LmIpf7e(yf11f-WSCb?}IFuV52Hbyh8l1fj*%D zp6BVj9*XN+SEf$j;ZRjPmL}|jqZI3llmyy}KFFs2eUJtBsq;?a`G=kn}{ zbRLMom^6{6*^VaKy{#d#=0_)N_yW587H}UTpKgQ2Hr?@lsfT8?$&@QgbqGAaRAT zq|mFEm`PL;twc&HgFNCRLM8mE^u`jE%HqjT zXj{rp0iamKkI?)2L=jya_yBJd)BkW8LrX{sF;$mMxKNiUY|v#d9?<2aa;b!e8=)B= zui#a%2v@JkG#rv1a`HL{tSiHZkfXFZJN^xpIN27M+P&k8?A}Hvu35uZhO&syJ=MVukHFTs&6d-i%1DQ&34^M58@!|(sN&%U z*pFw|(NCMDSl3e-hJRy04gEC_QLEu2sI~^x^60RR_vjo^O%j>hYmR7e8)n#_eBg~& brquEQ2IG~L43xrpP9HbL;Q!%IdHsI@@SD8S diff --git a/arm9/source/emucore/AY38900.cpp b/arm9/source/emucore/AY38900.cpp index 2acefd0..245b3df 100644 --- a/arm9/source/emucore/AY38900.cpp +++ b/arm9/source/emucore/AY38900.cpp @@ -1258,7 +1258,7 @@ ITCM_CODE BOOL AY38900::mobsCollide(int mobNum0, int mobNum1) // Since we've already determined a collision, we only need to check one of the MOB rectangles to see // if it is off-screen as the other one would be likewise... In theory, we should check outside bottom too. // --------------------------------------------------------------------------------------------------------- - if ((r0->y + (offsetYr0 + y + verticalOffset)) >= 0) return TRUE; + if ((r0->y + ((offsetYr0/2) + (y/2) + verticalOffset)) >= 0) return TRUE; } }