mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-11-18 21:06:31 +00:00
ootw: c2: initial teleport support
This commit is contained in:
parent
64d1570fee
commit
e20492e2fa
@ -148,7 +148,7 @@ jail5:
|
|||||||
cmp #5
|
cmp #5
|
||||||
bne jail6
|
bne jail6
|
||||||
|
|
||||||
lda #(-4+128)
|
lda #(30+128)
|
||||||
sta LEFT_LIMIT
|
sta LEFT_LIMIT
|
||||||
lda #(39+128)
|
lda #(39+128)
|
||||||
sta RIGHT_LIMIT
|
sta RIGHT_LIMIT
|
||||||
@ -226,7 +226,7 @@ ootw_jail_already_set:
|
|||||||
sta GAME_OVER
|
sta GAME_OVER
|
||||||
|
|
||||||
;============================
|
;============================
|
||||||
; Cage Loop
|
; Jail Loop
|
||||||
;============================
|
;============================
|
||||||
jail_loop:
|
jail_loop:
|
||||||
|
|
||||||
@ -237,7 +237,6 @@ jail_loop:
|
|||||||
|
|
||||||
;==================================
|
;==================================
|
||||||
; draw background action
|
; draw background action
|
||||||
; FIXME
|
|
||||||
|
|
||||||
lda WHICH_JAIL
|
lda WHICH_JAIL
|
||||||
cmp #6
|
cmp #6
|
||||||
@ -424,6 +423,74 @@ dude_not_out:
|
|||||||
inc FRAMEH
|
inc FRAMEH
|
||||||
jail_frame_no_oflo:
|
jail_frame_no_oflo:
|
||||||
|
|
||||||
|
|
||||||
|
;====================
|
||||||
|
; handle teleporters
|
||||||
|
|
||||||
|
lda WHICH_JAIL
|
||||||
|
cmp #4
|
||||||
|
bne no_teleporters
|
||||||
|
|
||||||
|
lda PHYSICIST_X
|
||||||
|
cmp #14
|
||||||
|
bcs no_teleporters ; bge
|
||||||
|
|
||||||
|
cmp #11
|
||||||
|
bcc no_teleporters ; blt
|
||||||
|
|
||||||
|
lda #1
|
||||||
|
bne save_teleporters ; bra
|
||||||
|
|
||||||
|
no_teleporters:
|
||||||
|
lda #0
|
||||||
|
save_teleporters:
|
||||||
|
sta ON_ELEVATOR
|
||||||
|
|
||||||
|
;==========================
|
||||||
|
; handle teleporting
|
||||||
|
;==========================
|
||||||
|
|
||||||
|
lda PHYSICIST_STATE
|
||||||
|
teleporter_check_up:
|
||||||
|
cmp #P_ELEVATING_UP
|
||||||
|
bne teleporter_check_down
|
||||||
|
|
||||||
|
teleporting_up:
|
||||||
|
jsr teleport
|
||||||
|
|
||||||
|
lda #8
|
||||||
|
sta PHYSICIST_Y
|
||||||
|
|
||||||
|
lda #(10+128)
|
||||||
|
sta LEFT_LIMIT
|
||||||
|
|
||||||
|
lda #(39+128)
|
||||||
|
sta RIGHT_LIMIT
|
||||||
|
|
||||||
|
jmp done_teleport
|
||||||
|
|
||||||
|
teleporter_check_down:
|
||||||
|
|
||||||
|
cmp #P_ELEVATING_DOWN
|
||||||
|
bne not_teleporting_today
|
||||||
|
|
||||||
|
teleporting_down:
|
||||||
|
jsr teleport
|
||||||
|
|
||||||
|
lda #30
|
||||||
|
sta PHYSICIST_Y
|
||||||
|
|
||||||
|
lda #(-4+128)
|
||||||
|
sta LEFT_LIMIT
|
||||||
|
|
||||||
|
lda #(28+128)
|
||||||
|
sta RIGHT_LIMIT
|
||||||
|
|
||||||
|
|
||||||
|
done_teleport:
|
||||||
|
|
||||||
|
not_teleporting_today:
|
||||||
|
|
||||||
;==========================
|
;==========================
|
||||||
; check if done this level
|
; check if done this level
|
||||||
;==========================
|
;==========================
|
||||||
@ -544,5 +611,11 @@ walking_dude2: .byte 6,6
|
|||||||
.byte $AA,$00,$77,$77,$77,$00
|
.byte $AA,$00,$77,$77,$77,$00
|
||||||
|
|
||||||
|
|
||||||
|
;=============================
|
||||||
|
; do the teleport
|
||||||
|
|
||||||
|
teleport:
|
||||||
|
lda #0
|
||||||
|
sta PHYSICIST_STATE
|
||||||
|
|
||||||
|
rts
|
||||||
|
Loading…
Reference in New Issue
Block a user