From 1083cf24bfa38d2356a7d0f643d8183c1c0f9958 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sat, 19 Aug 2023 15:33:20 +0200 Subject: [PATCH] Opty --- scorch.bin | Bin 32768 -> 32768 bytes scorch.xex | Bin 56624 -> 56594 bytes weapons.asm | 50 +++++++++++++++++++++++++++++--------------------- 3 files changed, 29 insertions(+), 21 deletions(-) diff --git a/scorch.bin b/scorch.bin index 1d910e07a1e83ee488652c7ed2431b381f3939d1..61433e1a949cbe604b384c4e95e592b10ad8ce8a 100644 GIT binary patch delta 2326 zcmZuy4Ny~87S2t=k6~X3R9AisTrkqaKb$HBSs5&-1bB+nh(wV@x7{h}N>NeA{!C)% zlgN(*E)b##%V?i+Yej0DS()vd-R|zB^JuGY9NOw`mmRHjH?`JmYwLD9>Yf+vZacg4 z=Dl<8Ip6uY=bdw|%cXR=l;aHy(vz)B0rC>U7!f6JG4ob@(}%wsV5`^RQ-msleT?A) z-Ff>LGZ_4=4{vi!7cxQ@BW6WYMSWC@f7uCQWaowGjstZN6g*x=tkTLtX z61hU}<-C>%WaoTNg=#~07hO(7YeUkLKaWF=p=B#pBQza)v7{F{D}3zlTLrI%YZ0tT z+|D;!Dj)Q=*m0fjgace^MkflK=80uav;DBs?+iLmI!`%2bzXM{UB&|o5A1gCcBZ=1 z-Fo*cZS8G2?gj3A_bRv9z20qcm$W_Awz|#Vw!1CV-s;@_s+}fs0etn$i8m&x;<_WM z3KlYxI?_?9%`E0)+(NOmV zhRy`6qWca*neK~>G?%KR2u+YarAUg0wUWG0wixA-;j-EKD}!Sfm<|(?W)=w&6Hx~x zM!3vG6v4|3J4r5;5I$~6&obQ<@hIH@28TIX2;@k zlrNG4F}FiV0huQy##SY<03lf?+4bbt*T`>X`?ll_|XL`b8Q5Bm^erH}< ze4rBtEl|8C9Q>S7lRBC+WKv2h_Fl*7`iWFXXLA90)F`9`njP$d z<4K+oZuo7C971$@eKwhu~%sPxZ^toN;VFY9~k7 zzas@{TWdo*$R}%`MNU$=E5}*g>{zSWw^~f@Kq@WuJ7=g)rIzFft7dOEkFe2p)nd9!%y$Q3MYL}hI39(6#*c`pFdFN8IDur<>D5;T=^|2EHw#shjddfC z$#3dN;!a=pFk{Cq(z_`)?vFn6#2?7{O(sLcry1%TYVq&)zvG{Eh_ z?bgMafGP8{eM2(1%uf}N$XN1@K;xgX=FeL(EXI$=!A02xf&CbBG=TGli}+)aC&-)D z43fS%dGU|XpT#Ub^T^`Sz=#?fhxudBn*4F-SiB-sw|N#)M~>nq^1_xSDK$rn_^C)7 zHx-_Oo23=F<69QMVEcHBNu45tW;85Gi5yMirwziPuN9+ze<~E4?W*Jkn(SU800(v delta 2317 zcmZ8i4^&g<73WI=#Kac@s|rNqgTYKx{>+L{3r7Zs5uQ*aN+SOP7FX~TQ8PVux?r-0 zNI;?=e~c!PgMG;BDr8O1T6&t+?VN@^tTlRYr#qh6NjqEX=H50vbZ4FHzG%00CnxWI z_uk*V_xtYs?)^GDC7qoTUmb;>C-qbgnjnPIqG|Fjm7f0$!3jfjc?ISP7vVWgrQKA& zZGNzb!uDa@)OI_U3iML^3L%b95>&Xy0cvDs1H#IX6zfQm>ISm-1y!yZ{oAiiz92zf z|A#5B%7N@##YoX!|9r;BawUq5cKp8C0&lQV97XL9WI87|_pHbLsi zrDoKmXQQgh$Z)aDMCcz}0yDwM7L-%@&E_vocxs2G-8%((N| znR}7Uj8780f=hZK5h_jv*oQ-0B;%%Q$)_9BWeShqY`2&Oe>xr0+>?Nb4q|3 znc!rokBeaD*bzaBTZYYIOdNeIk8Qk{$~1y&GjQ>2V`~Z1=#<3r{IMu2HsAizYcuM(kFHUG%a+n_5nPPb z5MRM9g|CcD4%^Yi85nl4`#9{!Ey_aj@Tx%64#8P2((S}moQ6Ij?-lz|i0m(USG8Bn zZsf>|7+0F%aQT}Y5@i?RH))f58FSb?g5j8p*wB8LW4R9|LXRLF7tQz+qAt~=y~I?y z8yWqVOVtR?lk1yDpgH#Iweq#y!3jZ1XOL0-vm4Gku*U%ReyojMKCY7qDQ9$&kd)Rq zF2&sE7hrYu1V0}pY?AJMK034rD?4yyBb`rTwqUE1q}8jXxP)*~_>KY2ag*NX;B8=_ z?cuwD?CRkeAR8RKG8E6aaK3?c@o7$qZP>EFG(e5qV4&N`ON8yb9DvXD@G>AD_V7_a zj`qM+kkW@7d?XN!gQtL)9J~rhtAl=&(#^V(wzMN4{!rcA4u?gl6BJW$>X>!g6ZZK1Mn z)6=A(?E8yA|E9+j2V75C;lA%D1(rZau z`4Q;F&&vl8OODWApcSNLYa?=y54N@-4_RH2rTp1Rb}l5v{fFtzq@`keywDG)oJ$*2 zOKDd>8wiO+T$39WE9KsPK3xzQRJjfvChIG=p%!wYaxu#9Fa}lx>?$ z{@pOnaM8P6V{Ipc)M!LkTUY&`gOrdO$fblN+)WCqSLbw-fT4y_(d*l|H8AJif%%zM zm#x6Qv-npq(gitg3a>huL5Nmo?hR6Sfq1G@Q31JJy+Qc}fS^D6_u~Q*X;>924q#|L zcc6gcp9w|bYEo!eow$6EZXS4gkD|xLJ9K1#O%#4gHxtI7LpR8zA!oUKkds0&N1=jv zZ3jFb_^<(|57AWvxcc<=Q>c)f-d?S_HyAGWq5Tkd97@KH@Nt3^20u#+qUQy!3%Urn1g?(hes6}6qfKdb2Mi;I9XhEsPI8oAGumAuo-NBJV*7Wcx&zKfZ11Ll?~ zEAu-TdDzd3PyI}}M`XCv%Z@^Wu@|84@J@f;&Lv0|?Z(GRRc-dtm(S&~v+&r=24~^% zu;AnFw42#EGmAH&E@z|c-0MM#4XCBv>Z@kOYcn$erAHr7c=YB3 zkHhnZ=N9}_UX}Nj$2`vLD=RBwI;J8LUhR0!WfU6dA`)A_r!dErM=AafLGITlF4z253olJLR0Md% w;6dZ@r!@Rp`9|A>6!ntHmj~oWIOgx{R|!W+d3!>%lk=R9pJM%c+6QC*1EI^}&Hw-a diff --git a/scorch.xex b/scorch.xex index 2ee3451134754c8339a03f1fd0a966498035a0c7..2fb60686f3b73c646f9e2c55d85efe55bd624631 100644 GIT binary patch delta 2303 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 bne babymissile.GoXmissile ; jmp xmissile .endp ; ------------------------ .proc nuke - mva #30 ExplosionRadius + lda #30 ; ExplosionRadius bne babynuke.GoBabyNukeSFX ; jmp xmissile .endp ; ------------------------ .proc leapfrog - mva #17 ExplosionRadius + lda #17 ; ExplosionRadius ; mva #sfx_baby_missile sfx_effect ; jsr xmissile jsr babymissile.GoBabyMissileSFX @@ -237,16 +239,17 @@ GoXmissileWithSaveXYdraw .endp ; ------------------------ .proc napalm - mva #0 HotNapalmFlag ; in this weapon - flag: 0 - napalm, 1 - hotnapalm + lda #0 ; in this weapon - flag: 0 - napalm, 1 - hotnapalm beq xnapalm .endp ; ------------------------ .proc hotnapalm - mva #1 HotNapalmFlag ; in this weapon - flag: 0 - napalm, 1 - hotnapalm + lda #1 ; in this weapon - flag: 0 - napalm, 1 - hotnapalm ; jmp xnapalm .endp ; ------------------------ .proc xnapalm + sta HotNapalmFlag mva #sfx_napalm sfx_effect mva #(napalmRadius+4) ExplosionRadius ; real radius + 4 pixels (half characrer width) jsr CalculateExplosionRange @@ -344,40 +347,43 @@ EndNurnedCheckLoop .endp ; ------------------------ .proc babyroller - mva #11 ExplosionRadius + lda #11 ; ExplosionRadius GoRoller + sta ExplosionRadius jmp xroller .endp ; ------------------------ .proc roller ; - mva #21 ExplosionRadius + lda #21 ; ExplosionRadius bne babyroller.GoRoller ; 1 byte saved ; jmp xroller .endp ; ------------------------ .proc heavyroller - mva #30 ExplosionRadius + lda #30 ; ExplosionRadius bne babyroller.GoRoller ; 1 byte saved ; jmp xroller .endp ; ------------------------ .proc riotbomb - mva #17 ExplosionRadius + lda #17 ; ExplosionRadius GoRiotBomb + sta ExplosionRadius jsr CalculateExplosionRange jmp xriotbomb .endp ; ------------------------ .proc heavyriotbomb - mva #29 ExplosionRadius + lda #29 ; ExplosionRadius bne riotbomb.GoRiotBomb ; 4 bytes saved - optimization :) ; jsr CalculateExplosionRange ; jmp xriotbomb .endp ; ------------------------ .proc babydigger - mva #1 diggery ; how many branches (-1) + lda #1 ; diggery ; how many branches (-1) GoBabydiggerSFX + sta diggery mva #sfx_digger sfx_effect mva #0 sandhogflag mva #13 DigLong @@ -385,28 +391,29 @@ GoBabydiggerSFX .endp ; ------------------------ .proc digger ; - mva #3 diggery ; how many branches (-1) + lda #3 ; diggery ; how many branches (-1) bne babydigger.GoBabydiggerSFX .endp ; ------------------------ .proc heavydigger - mva #7 diggery ; how many branches (-1) + lda #7 ; diggery ; how many branches (-1) bne babydigger.GoBabydiggerSFX .endp ; ------------------------ .proc babysandhog - mva #1 diggery ; how many branches (-1) + lda #1 ; diggery ; how many branches (-1) bne heavysandhog.GoHeavysandhogSFX .endp ; ------------------------ .proc sandhog - mva #3 diggery ; how many branches (-1) + lda #3 ; diggery ; how many branches (-1) bne heavysandhog.GoHeavysandhogSFX .endp ; ------------------------ .proc heavysandhog - mva #5 diggery ; how many branches (-1) + lda #5 ; diggery ; how many branches (-1) GoHeavysandhogSFX + sta diggery mva #sfx_sandhog sfx_effect mva #char_sandhog_offset sandhogflag mva #13 DigLong @@ -522,22 +529,23 @@ DiggerCharacter .endp ; ------------------------ .proc dirtclod - mva #12 ExplosionRadius + lda #12 ; ExplosionRadius bne xdirt .endp ; ------------------------ .proc dirtball - mva #22 ExplosionRadius + lda #22 ; ExplosionRadius bne xdirt .endp ; ------------------------ .proc tonofdirt - mva #31 ExplosionRadius + lda #31 ; ExplosionRadius ; jmp xdirt .endp ; ----------------- .proc xdirt ; ; ----------------- + sta ExplosionRadius jsr CalculateExplosionRange mva #sfx_dirt_charge sfx_effect lda #1