From 1c880dba1d8095e9bf12c75af9b4c6df964d0180 Mon Sep 17 00:00:00 2001 From: blondie7575 Date: Sun, 5 Jan 2020 16:08:59 -0800 Subject: [PATCH] Dirt particle collision, first pass --- dirt.s | 17 ++++++++++++++--- gscats.2mg | Bin 819264 -> 819264 bytes 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/dirt.s b/dirt.s index c91ce8b..abf7b1f 100644 --- a/dirt.s +++ b/dirt.s @@ -195,8 +195,10 @@ updateDirtParticle: SAVE_AXY lda dirtParticles+DP_POSX,y - bmi updateDirtParticleDone ; Particle is dead + bpl updateDirtParticleContinue + jmp updateDirtParticleDone ; Particle is dead +updateDirtParticleContinue: ; Erase old position lda #dirtParticles ; Calculate pointer to struct sta PARAML0 @@ -258,10 +260,19 @@ updateDirtParticle: lsr sta dirtParticles+DP_POSY,y - ; Draw new position + ; Check new position jsr vramPtr ; PARAML0 still holds struct pointer cpx #$ffff - beq updateDirtParticleKill + beq updateDirtParticleKill ; Offscreen, so we're done + lda SHADOWVRAMBANK,x + beq updateDirtParticleStillAlive ; All sky, so carry on + cmp #$11 + bne updateDirtParticleKill ; Not dirt, so we're done + lda dirtParticles+DP_VY,y + bmi updateDirtParticleKill ; +Y velocity on dirt, so we're done + +updateDirtParticleStillAlive: + ; Draw new position lda #$11 sta SHADOWVRAMBANK,x diff --git a/gscats.2mg b/gscats.2mg index 7f1ca3076fb7c4a31f613dac340baaf88b8fcf1d..a41eddbb92622014f9a673659d8d71336570eff7 100644 GIT binary patch delta 414 zcmZvWy-Px26o=1!?KM9NG%6GvY$z;3ZbHpk36as)5;QdgTK_?3s0$H7(BvQ&f-tah z2wFm%lprXG%ZrG}orFRh4Vqlu&eaBo4m@yv@SGo~qD3lNeK_2+4>E-hrPv^Lj&2jds7{#QW?YR{r zTlTW;8G$Yuy@q+eUhVI73??9NsC-s}W^;nn8^y&jHaZzIv6XE3+h0O`zDuSq1f~ww z%>73LI}^76*9Kl%We>q6Y&WAIzOmaAN&-E$jTbD4tQKP9XD0fNx>7f>)WCPpjtB9b z)R4Yer_lwL%zuPB>h-=*#o*gcQ_4=D44`y4>8iKjg&Rr*1+EOVJ}5{@RoV}Ll!pMW gqGOiL@pLrI2pcg(SlLbt6Ar>jxCr-sG(58V3+wTgOaK4? delta 407 zcmX@mV056tXoDgvw;n$O!(#>xRSiA<$vUhuMo4@n1`TI_7gr}oKW|q<0|N#I2DUQ{ zjtqzD7(l8)+Q5v-Rje{lW5E38g{1(^cW4pngh z!OUY-OC@I>fv`_hDR?t1J!inG`JbVInUmrF%v0Md#a?OMfQ$;>iVrt;^Cg zS}#;(BzWA4T6>`CgXkg#hB*hSxfMDjKDxgvuWLXef zqVh!5%o7k5N2-9vKKTFtgWyU*u-Pja8F~*?ft;}N|NohXwsUJTnX*na;A?l#V*+Ak dAZ7t#Rv=~rVs;?r0Afxc<^p2w$