Backport terrorpin ai fix from enemizer. (and fix a bug with it.)
This commit is contained in:
@@ -213,6 +213,7 @@ incsrc elder.asm
|
|||||||
incsrc toast.asm
|
incsrc toast.asm
|
||||||
incsrc darkroomitems.asm
|
incsrc darkroomitems.asm
|
||||||
incsrc multiworld.asm
|
incsrc multiworld.asm
|
||||||
|
incsrc terrorpin.asm
|
||||||
warnpc $A58000
|
warnpc $A58000
|
||||||
|
|
||||||
;org $228000 ; contrib area
|
;org $228000 ; contrib area
|
||||||
|
|||||||
@@ -2560,3 +2560,12 @@ CheckIfReading:
|
|||||||
CPX #$04
|
CPX #$04
|
||||||
RTS
|
RTS
|
||||||
;================================================================================
|
;================================================================================
|
||||||
|
|
||||||
|
;================================================================================
|
||||||
|
; Terrorpin AI fix
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
org $1EB2B1 ; sprite_terrorpin.asm(57) : AND.b #$03 : STA $0DE0, X ; 5 bytes
|
||||||
|
JSL FixTerrorpin ; 4 bytes
|
||||||
|
NOP ; 1 byte
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
@@ -1824,6 +1824,10 @@ org $30E36D ; PC 0x18636D
|
|||||||
;BerserkerMulti.world Seed GUID
|
;BerserkerMulti.world Seed GUID
|
||||||
db #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00
|
db #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00
|
||||||
|
|
||||||
|
org $30E37D ; PC 0x18637D
|
||||||
|
Enable_TerrorPin_AI_Fix:
|
||||||
|
db #$01
|
||||||
|
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
; 0x186380 - 187FFF (unused)
|
; 0x186380 - 187FFF (unused)
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|||||||
19
terrorpin.asm
Normal file
19
terrorpin.asm
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
;================================================================================
|
||||||
|
; Terrorpin AI Fixes
|
||||||
|
;================================================================================
|
||||||
|
FixTerrorpin:
|
||||||
|
{
|
||||||
|
PHA ;save A so that checking the option doesn't smoke A
|
||||||
|
LDA.b Enable_TerrorPin_AI_Fix : BNE .new ; check if option is on
|
||||||
|
PLA ;restore A
|
||||||
|
; do the old code that smokes A
|
||||||
|
AND.b #$03 : STA $0DE0, X
|
||||||
|
RTL
|
||||||
|
|
||||||
|
.new
|
||||||
|
PLA ; Restore A
|
||||||
|
PHA ; save A so the orignal code doesn't kill it
|
||||||
|
AND.b #$03 : STA $0DE0, X ; restore what we overwrote
|
||||||
|
PLA ; restore A so the AND/BNE in the original code actually does something
|
||||||
|
RTL
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user