From 3d728340ab82afdefb208f0230dd7ef37887cc99 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 25 Jun 2023 13:05:26 +0200 Subject: [PATCH] Faster status line updates after AI uses defensives --- ai.asm | 47 +++++++++++++++-------------------------------- scorch.bin | Bin 32768 -> 32768 bytes scorch.xex | Bin 58224 -> 58195 bytes scorchC64.prg | Bin 40058 -> 40029 bytes 4 files changed, 15 insertions(+), 32 deletions(-) diff --git a/ai.asm b/ai.asm index 985793b..4a6e736 100644 --- a/ai.asm +++ b/ai.asm @@ -242,7 +242,7 @@ LowBatteries sta ActiveDefenceWeapon,x jsr PutTankNr ; and draw tank witch Flag EnoughEnergy - jsr DisplayStatus.DisplayEnergy +; jsr DisplayStatus.DisplayEnergy ; not necessary - status update after othher defensives rts .endp ; @@ -276,37 +276,9 @@ NoBatteries ; but not allways randomize 1 3 cmp #1 - bne NoUseDefensive - ; first check check if any is in use - lda ActiveDefenceWeapon,x - bne DefensiveInUse - ldy #last_real_defensive+1 ;the last defensive weapon -@ - dey - cpy #ind_Hovercraft ;first defensive weapon (White Flag, Battery and Hovercraft - never use) - beq NoUseDefensive - lda (temp),y ; has address of TanksWeaponsTable - beq @- - ; decrease in inventory - sec - sbc #1 - sta (temp),y ; has address of TanksWeaponsTable - ; activate defensive weapon - tya ; number of selectet defensive weapon - sta ActiveDefenceWeapon,x - lda DefensiveEnergy,y - sta ShieldEnergy,x -NoUseDefensive -DefensiveInUse - rts -.endp -;---------------------------------------------- -.proc Tosser - jsr UseBatteryOrFlag - ; use best defensive :) - jsr TosserDefensives - ; Toosser is like Poolshark but allways uses defensives - jmp Poolshark.firstShoot + bne UseBattery.NoBatteries ; nearest RTS + ; now use defensive like Tosser + jmp TosserDefensives .endp ;---------------------------------------------- .proc TosserDefensives @@ -333,9 +305,20 @@ DefensiveInUse sta ShieldEnergy,x DefensiveInUse NoUseDefensive +DefensiveStatusLine + ; update status line + jsr DisplayStatus rts .endp ;---------------------------------------------- +.proc Tosser + jsr UseBatteryOrFlag + ; use best defensive :) + jsr TosserDefensives + ; Toosser is like Poolshark but allways uses defensives + jmp Poolshark.firstShoot +.endp +;---------------------------------------------- .proc Chooser ; like cyborg but more randomizing force jsr UseBatteryOrFlag diff --git a/scorch.bin b/scorch.bin index c88a492c52d4eaade24a1767965449192e5ebf2d..f4611449931befd144d1e3902e94f413f4479588 100644 GIT binary patch delta 704 zcmZ9GUr1A77>9S}Ic`l3&VS4eoZpIwG(@aS%P6!!))^6t=A7CtBygswBt}=$_&`d+ z{7gLad^K{X`bOo^b5RoOMmTfQg%=&D3vUGp)}}-j5uHs-iudN_`91HCHyG3hgL)}# zr=s$vecnPjj(QVDJ0ITtE*`^ttx;2t8nlo2#$w;-G%I@sJoV95j7`Q!hcOvwp(6+y_=47KYc7jbbNXD>ZzCWRt4gd?EA&is<*ggXA z1PhA#kkxyXPH`?CxxD2LP#N%NN?klRIlZ$Go%V6|%MeIo6!lgeG(1Y=N(|BAF?QGf zEAlL$)}p~@YfsT0)=2C9lm7&xdo4}6EH0kr5lOn(byPmUDCXR;?yUEh=J zHfi6wstl&g94%zNW8kc$S0akaMUk(qnu?>bwyLx5LoXCod}q!XHGlA%qAM%0H$rpl zwb1NWggSf`k81N)n^Ek44hNi0C+uI;StI@RQ!S|u?u&qav;`X01VY21m!{7NYW#a5 zU-}Bx1Z8M7>3`atfesB;>_U>eCzfRx3b)&iWpr~gR>YeAOS4?7(IV$g^rvhYCEKmk uvTW?w&O=gH*+Sq|4&_F3J(I>J0yo8N>p66x*J|(({J3=Sy4>CSu;4cr7CK4* delta 697 zcmZo@U}|V!+VD}1@%ZLXavQ}N?KUqlOJikB*vxI?%E^U z%~I%|yprJqheAA<)zCU^B|~d$LeDW?g(sUQ1UEB@>$h%Nxx97r%9Pd{K&hK6}D#=n>;PT%aU(iR#8<` z*Q8mCgrt{fg223`i|6L?E?qLWgjYdjvU$`WmM60nVkV!A zmXqHgDzWrxChN%s8~j_Z`UK6kSbFs(YwOixS68yOmIBqV#mI3@;5>HqSm_4=pZ>{n zqBU7WAbNEKpUej9ZN2&op;}!~agN2(#XvI_Z(usMcqG&X3V^csXm$ zG2W&71eiMnt|V}+I(2IA)j1w}ugvjCcswU`Zq3}KKzIWPm(ERC(OTr?<<(lalRx~VYC#28 zvLO`8A}ic0%j8Njhq+@)M{XZK%ayPVhN;#9-3W6i#RVI|Nrm%oiC-?K4>=i zmJcMAVP7@}tV*nJr3myYq0l)82rIVO5dgL+?%Q7r?S4^+O8J4WJpr zi5rYN3R^`O6k!sNPk3tGQD4`^zU#rzoh>EXEA|~Y>{07jy;07Il|2pUR=FJd#dPA3 zH^Cj96p|ndD>`wby5F7>;v();OCdbu^QNV7QTR5zI#7#waOTJ`bmMnwb!l5v&ypR~ zLI&71c%7M!m`urJb=5zNJ1wN`Yo6&y%nqBQ(kSt>Qk-01VH@t5{B7qWa0urn_)@u$ zlZ^8YJtm((hAsm+lTKT|^P`t}Ff*e%Nt2pKn!G$2 zBx7XJd6X2VkZ$bB1A7S1smG(6mCO z^3~=%@DMl5-`o|Z=!f*HI6}!!PJP3r%5*SSqKw`0&B)70w0%_T_?=vY1YBvG+IWK9SsiB<+7+>#KI zoigvXGgo@66G^u&q${t}f?KnsSq`j+A|HfGWCWvxgzjV|$$2@y@Avcj@Ov+-6S7*k z=>|!$*PX=xvl!}F%mqE7&*##DVNo4A41h(fx%F+6#=|)#QTfpE{G<Ao}E#u55&ZF#BvBP9(n2oSuePGuEN)e=AK!B z3&D|VR6`KfaqtEQlPEl5w>AXb&F4F=dVRMyQLmDAA!LUyR&ktdoV?0_CF zm1u>vaC;Mh*h|BrCfMgjR%t&lqbA8rIa9_-&hfoBHRhy8qEc>NzS9pI&_k)z+#ZZ( z3RZHlQ#|QfbM5OifBl>eHUtKu7~!LB1cKq4@!PmWJ)<*ywMKEdWI{A2Fe} z$a(|uTln}_EgP5PM9a1)P2re{>Ruzq<(7orF^3|NLQSK8d86213ov~Av_j9V&^rxn z0Sn)+IQoSQc|eXkOz70uUSLCLtmI&o|A9>Nqk46xe%eXhpO}#L;A*KDS37NZ5KrSJ z<&_1?f=k$Wk8QTw?W`xPG7fmGN9z(N9rfPv#;RIOG;Hf2^)3p!7o$2M32U+38e4GQ zX-tI$O1L{6lFSt_|1XF>jc+!lR`d(fMw(hhppWBuTPpvxRJvCwR;U;%McwmtI`9f@ wow~kjn6N+iU&b)OKN;yIlPHLSSf13!Fc;r4%*boz+#7=XnD7^IX6l0B4{fkV^8f$< diff --git a/scorchC64.prg b/scorchC64.prg index 0a3c4ffa5eef8060586e859b0c15ef05b848e56c..916abbf53254b021bbe1b37818a926420897b4f1 100644 GIT binary patch delta 4994 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