Recently, we introduced a preprocessor for PLMs which allows us to define some meta PLMs for non-standard things. At the moment, we support:
- $0001 = Jump to another PLM list
- $0002 = Skip this PLM
We should add support for another meta PLM that checks a flag to determine whether or not we should skip the next n PLM's. I'm thinking:
- $0003 = Check 24-bit flag with number of PLM's to skip in last byte. Ex:
dw $0003 : dl $DFB822 : db $02 skips the next two PLMs if $DFB822 is zero
This meta PLM should allow us to setup area/recall changes without the need for another patch.
CustomPLMs_GreenElevator:
dw $C842 : db $0E,$06 : dw $9CAF ; flashing door cap
dw $0001,$0000,PLMList1GreenElevator ; run vanilla list
pushpc
if !AREA == 1
; Green Elevator - Room $9938
org RoomState1GreenElevator
skip 20 : dw CustomPLMs_GreenElevator
endif
pullpc
could become
CustomPLMs_GreenElevator:
dw $0003 : dl EnableAreaMods : db $01 ; skip to vanilla w/o area
dw $C842 : db $0E,$06 : dw $9CAF ; flashing door cap
dw $0001,$0000,PLMList1GreenElevator ; run vanilla list
pushpc
; Green Elevator - Room $9938
org RoomState1GreenElevator
skip 20 : dw CustomPLMs_GreenElevator
pullpc
Recently, we introduced a preprocessor for PLMs which allows us to define some meta PLMs for non-standard things. At the moment, we support:
We should add support for another meta PLM that checks a flag to determine whether or not we should skip the next n PLM's. I'm thinking:
dw $0003 : dl $DFB822 : db $02skips the next two PLMs if$DFB822is zeroThis meta PLM should allow us to setup area/recall changes without the need for another patch.
could become