mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-09-17 08:54:50 +00:00
ootw: c4: add some doorways to hide behind
This commit is contained in:
parent
bf05fade0f
commit
db20da5738
@ -250,20 +250,41 @@ city_loop:
|
|||||||
; draw split screen if falling into pit
|
; draw split screen if falling into pit
|
||||||
;======================================
|
;======================================
|
||||||
|
|
||||||
|
; only fall in room3
|
||||||
lda WHICH_ROOM
|
lda WHICH_ROOM
|
||||||
cmp #3
|
cmp #3
|
||||||
bne nothing_fancy
|
bne nothing_fancy
|
||||||
|
|
||||||
lda PHYSICIST_STATE
|
|
||||||
cmp #P_FALLING_SIDEWAYS
|
|
||||||
beq scroll_bg
|
|
||||||
cmp #P_FALLING_DOWN
|
|
||||||
bne nothing_fancy
|
|
||||||
|
|
||||||
;======================
|
;======================
|
||||||
; falling
|
; falling
|
||||||
|
|
||||||
scroll_bg:
|
; only fall if falling sideways/down
|
||||||
|
lda PHYSICIST_STATE
|
||||||
|
cmp #P_FALLING_SIDEWAYS
|
||||||
|
beq falling_sideways
|
||||||
|
cmp #P_FALLING_DOWN
|
||||||
|
beq falling_down
|
||||||
|
|
||||||
|
jmp nothing_fancy
|
||||||
|
|
||||||
|
falling_sideways:
|
||||||
|
; if falling sideways, and Y>=22, then crouch
|
||||||
|
lda PHYSICIST_Y
|
||||||
|
cmp #30
|
||||||
|
bcc scroll_check ; blt
|
||||||
|
|
||||||
|
lda #P_CROUCHING
|
||||||
|
sta PHYSICIST_STATE
|
||||||
|
|
||||||
|
lda #4
|
||||||
|
sta WHICH_ROOM
|
||||||
|
sta GAME_OVER
|
||||||
|
|
||||||
|
jmp scroll_check
|
||||||
|
|
||||||
|
falling_down:
|
||||||
|
check_done_falling_down:
|
||||||
|
; if falling down, and Y>=32, then impale
|
||||||
lda PHYSICIST_Y
|
lda PHYSICIST_Y
|
||||||
cmp #32
|
cmp #32
|
||||||
bcc scroll_check ; blt
|
bcc scroll_check ; blt
|
||||||
@ -280,6 +301,7 @@ scroll_bg:
|
|||||||
lda #P_IMPALED
|
lda #P_IMPALED
|
||||||
sta PHYSICIST_STATE
|
sta PHYSICIST_STATE
|
||||||
|
|
||||||
|
|
||||||
scroll_check:
|
scroll_check:
|
||||||
lda BG_SCROLL ; if done scrolling, re-enable falling
|
lda BG_SCROLL ; if done scrolling, re-enable falling
|
||||||
cmp #48
|
cmp #48
|
||||||
@ -310,12 +332,6 @@ not_far_enough:
|
|||||||
inc BG_SCROLL
|
inc BG_SCROLL
|
||||||
inc BG_SCROLL
|
inc BG_SCROLL
|
||||||
|
|
||||||
; ldy BG_SCROLL
|
|
||||||
; cpy #44
|
|
||||||
; bne no_scroll_progress
|
|
||||||
|
|
||||||
; lda #P_IMPALED
|
|
||||||
; sta PHYSICIST_STATE
|
|
||||||
|
|
||||||
no_scroll_progress:
|
no_scroll_progress:
|
||||||
|
|
||||||
@ -416,18 +432,33 @@ c4_no_bg_action:
|
|||||||
|
|
||||||
jsr check_screen_limit
|
jsr check_screen_limit
|
||||||
|
|
||||||
|
;===================
|
||||||
;===================
|
;===================
|
||||||
; extra room limits
|
; extra room limits
|
||||||
;===================
|
;===================
|
||||||
|
;===================
|
||||||
|
|
||||||
|
; only fall in room#3
|
||||||
lda WHICH_ROOM
|
lda WHICH_ROOM
|
||||||
cmp #3
|
cmp #3
|
||||||
bne regular_room
|
bne regular_room
|
||||||
|
|
||||||
|
; don't fall if impaled or already falling
|
||||||
|
lda PHYSICIST_STATE
|
||||||
|
cmp #P_IMPALED
|
||||||
|
beq regular_room
|
||||||
|
cmp #P_FALLING_DOWN
|
||||||
|
beq regular_room
|
||||||
|
cmp #P_FALLING_SIDEWAYS
|
||||||
|
beq regular_room
|
||||||
|
|
||||||
|
|
||||||
|
; only start falling if y>=18
|
||||||
lda PHYSICIST_Y
|
lda PHYSICIST_Y
|
||||||
cmp #18
|
cmp #18
|
||||||
bne regular_room ; blt
|
bcc regular_room ; blt
|
||||||
|
|
||||||
|
; only start falling if x>=8
|
||||||
lda PHYSICIST_X
|
lda PHYSICIST_X
|
||||||
cmp #8
|
cmp #8
|
||||||
bcc regular_room ; blt
|
bcc regular_room ; blt
|
||||||
@ -456,13 +487,51 @@ regular_room:
|
|||||||
|
|
||||||
|
|
||||||
;========================
|
;========================
|
||||||
; draw foreground action
|
; draw foreground cover
|
||||||
|
|
||||||
lda WHICH_ROOM
|
lda WHICH_ROOM
|
||||||
cmp #2
|
cmp #2
|
||||||
bne c4_no_fg_action
|
beq c4_room2_cover
|
||||||
|
|
||||||
;c2_draw_cart:
|
cmp #4
|
||||||
|
beq c4_room4_cover
|
||||||
|
|
||||||
|
jmp c4_no_fg_cover
|
||||||
|
c4_room2_cover:
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta XPOS
|
||||||
|
lda #18
|
||||||
|
sta YPOS
|
||||||
|
|
||||||
|
lda #<causeway_door_cover
|
||||||
|
sta INL
|
||||||
|
lda #>causeway_door_cover
|
||||||
|
sta INH
|
||||||
|
|
||||||
|
jsr put_sprite
|
||||||
|
|
||||||
|
|
||||||
|
jmp c4_no_fg_cover
|
||||||
|
c4_room4_cover:
|
||||||
|
|
||||||
|
lda #30
|
||||||
|
sta XPOS
|
||||||
|
lda #8
|
||||||
|
sta YPOS
|
||||||
|
|
||||||
|
lda #<pit_door_cover
|
||||||
|
sta INL
|
||||||
|
lda #>pit_door_cover
|
||||||
|
sta INH
|
||||||
|
|
||||||
|
jsr put_sprite
|
||||||
|
|
||||||
|
c4_no_fg_cover:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;c2_draw_doorway:
|
||||||
;
|
;
|
||||||
; lda CART_X
|
; lda CART_X
|
||||||
; sta XPOS
|
; sta XPOS
|
||||||
@ -535,7 +604,7 @@ city_frame_no_oflo:
|
|||||||
bne regular_exit_check
|
bne regular_exit_check
|
||||||
|
|
||||||
lda PHYSICIST_X
|
lda PHYSICIST_X
|
||||||
cmp #35
|
cmp #32
|
||||||
bcc regular_exit_check ; blt
|
bcc regular_exit_check ; blt
|
||||||
|
|
||||||
lda #5
|
lda #5
|
||||||
@ -715,3 +784,26 @@ recharge_bg4:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; 0x18
|
||||||
|
causeway_door_cover:
|
||||||
|
.byte 8,8
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$22,$AA
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$22,$AA
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$22,$AA
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$02,$2A
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$22
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$22
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$22
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$22
|
||||||
|
|
||||||
|
; 30x8
|
||||||
|
pit_door_cover:
|
||||||
|
.byte 8,8
|
||||||
|
.byte $02,$22,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $20,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $22,$02,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $22,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 469 B After Width: | Height: | Size: 8.6 KiB |
@ -76,45 +76,45 @@ causeway1_rle: .byte $28 ; ysize=48
|
|||||||
.byte $22, $77, $A4,$66, $02,$02, $77, $A5,$66, $22
|
.byte $22, $77, $A4,$66, $02,$02, $77, $A5,$66, $22
|
||||||
.byte $A9,$00, $22,$22, $70, $A3,$00, $22, $00, $22
|
.byte $A9,$00, $22,$22, $70, $A3,$00, $22, $00, $22
|
||||||
.byte $27, $A5,$66, $00, $22, $77, $A4,$66, $06
|
.byte $27, $A5,$66, $00, $22, $77, $A4,$66, $06
|
||||||
.byte $22, $77, $A5,$66, $22, $A9,$00, $22,$22, $77
|
.byte $22, $77, $A5,$66, $22, $A7,$00, $20, $00
|
||||||
.byte $A3,$00, $22, $00, $22,$22, $56, $A4,$66, $00
|
.byte $22,$22, $77, $A3,$00, $22, $00, $22,$22, $56
|
||||||
.byte $27, $77, $A4,$22, $00, $22, $77, $A3,$66
|
.byte $A4,$66, $00, $27, $77, $A4,$22, $00, $22
|
||||||
.byte $56, $66, $22, $A6,$00, $22, $00,$00, $22,$22
|
.byte $77, $A3,$66, $56, $66, $22, $A6,$00, $22
|
||||||
.byte $77, $A3,$00, $22, $00, $22,$22, $55, $66
|
.byte $00,$00, $22,$22, $77, $A3,$00, $22, $00, $22,$22
|
||||||
.byte $56, $66,$66, $00, $22, $77, $A3,$22, $02
|
.byte $55, $66, $56, $66,$66, $00, $22, $77
|
||||||
.byte $00, $22, $77, $A3,$66, $55, $66, $22
|
.byte $A3,$22, $02, $00, $22, $77, $A3,$66, $55
|
||||||
.byte $A6,$00, $22, $00,$00, $22,$22, $77, $A3,$00, $22
|
.byte $66, $22, $A6,$00, $22, $00,$00, $22,$22, $77
|
||||||
.byte $00, $22,$22, $A3,$55, $56, $55, $00, $22
|
.byte $A3,$00, $22, $00, $22,$22, $A3,$55, $56, $55
|
||||||
.byte $77, $22,$22, $02, $00,$00, $22, $77, $66
|
.byte $00, $22, $77, $22,$22, $02, $00,$00, $22
|
||||||
.byte $56, $66, $55,$55, $22, $A6,$00, $22, $00,$00
|
.byte $77, $66, $56, $66, $55,$55, $22, $A6,$00
|
||||||
.byte $22,$22, $77, $A3,$00, $22, $00, $22,$22, $25
|
.byte $22, $00,$00, $22,$22, $77, $A3,$00, $22, $00
|
||||||
.byte $22, $25, $05,$05, $00, $22, $77, $02
|
.byte $22,$22, $25, $22, $25, $05,$05, $00, $22
|
||||||
.byte $A4,$00, $22, $77, $A4,$25, $05, $22, $A6,$00
|
.byte $77, $02, $A4,$00, $22, $77, $A4,$25, $05
|
||||||
.byte $02, $20, $00,$00, $22, $77, $A3,$00, $22
|
.byte $22, $A6,$00, $02, $20, $00,$00, $22, $77
|
||||||
.byte $00, $A0,$02,$A2, $72,$72, $02, $A3,$00, $22, $77
|
.byte $A3,$00, $22, $00, $A0,$02,$A2, $72,$72, $02, $A3,$00
|
||||||
.byte $A5,$00, $22, $77, $A3,$22, $02, $00, $22
|
.byte $22, $77, $A5,$00, $22, $77, $A3,$22, $02
|
||||||
.byte $A7,$00, $22, $00,$00, $22, $A0,$01,$A7, $A0,$02,$A0, $A3,$2A
|
.byte $00, $22, $A7,$00, $22, $00,$00, $22, $A0,$01,$A7
|
||||||
.byte $22, $02, $22, $02, $A4,$00, $22, $77
|
.byte $A0,$02,$A0, $A3,$2A, $22, $02, $22, $02, $A4,$00
|
||||||
.byte $A5,$00, $22, $77, $22, $02, $A3,$00, $22
|
.byte $22, $77, $A5,$00, $22, $77, $22, $02
|
||||||
.byte $A7,$00, $22, $00,$00, $2A,$2A, $02, $22, $02
|
.byte $A3,$00, $22, $A7,$00, $22, $00,$00, $2A,$2A, $02
|
||||||
.byte $22, $00, $22, $00, $22, $A5,$00, $22
|
.byte $22, $02, $22, $00, $22, $00, $22
|
||||||
.byte $27, $A5,$00, $22, $27, $A5,$00, $22, $A7,$00
|
.byte $A5,$00, $22, $27, $A5,$00, $22, $27, $A5,$00
|
||||||
.byte $22, $00,$00, $22, $00,$00, $22, $00, $22
|
.byte $22, $A7,$00, $22, $00,$00, $22, $00,$00, $22
|
||||||
.byte $00, $22, $00, $22, $A5,$00, $22,$22, $A5,$00
|
.byte $00, $22, $00, $22, $00, $22, $A5,$00
|
||||||
.byte $22,$22, $A5,$00, $22, $A7,$00, $22, $80, $88
|
.byte $22,$22, $A5,$00, $22,$22, $A5,$00, $22, $A7,$00, $22
|
||||||
.byte $78, $57, $58, $78, $88, $58,$58, $88
|
.byte $80, $88, $78, $57, $58, $78, $88
|
||||||
.byte $58, $A3,$88, $A5,$85, $A5,$50, $52,$52, $A5,$50, $52
|
.byte $58,$58, $88, $58, $A3,$88, $A5,$85, $A5,$50, $52,$52
|
||||||
.byte $A7,$00, $02, $08,$08, $07, $A8,$08, $A3,$05, $A3,$08
|
.byte $A5,$50, $52, $A7,$00, $02, $08,$08, $07, $A8,$08
|
||||||
.byte $05, $A4,$08, $A5,$88, $A5,$85, $A0,$34,$00, $20,$20, $A7,$00
|
.byte $A3,$05, $A3,$08, $05, $A4,$08, $A5,$88, $A5,$85, $A0,$34,$00
|
||||||
.byte $20, $A5,$00, $20, $22, $72, $50, $A5,$00
|
.byte $20,$20, $A7,$00, $20, $A5,$00, $20, $22, $72
|
||||||
.byte $50, $55, $AD,$00, $20, $22,$22, $A3,$00, $20
|
.byte $50, $A5,$00, $50, $55, $AD,$00, $20, $22,$22
|
||||||
.byte $22,$22, $52,$52, $50, $A3,$00, $50, $55, $25
|
.byte $A3,$00, $20, $22,$22, $52,$52, $50, $A3,$00, $50
|
||||||
.byte $77, $55, $A4,$00, $A4,$55, $AC,$00, $A3,$52, $50
|
.byte $55, $25, $77, $55, $A4,$00, $A4,$55, $AC,$00
|
||||||
.byte $00,$00, $52, $A5,$55, $00,$00, $50, $A5,$55, $A3,$00
|
.byte $A3,$52, $50, $00,$00, $52, $A5,$55, $00,$00, $50
|
||||||
.byte $50, $A4,$55, $50, $AB,$00, $75, $A3,$55, $00,$00
|
.byte $A5,$55, $A3,$00, $50, $A4,$55, $50, $AB,$00, $75
|
||||||
.byte $A6,$55, $00,$00, $55,$55, $A4,$25, $A3,$00, $A6,$55, $AA,$00
|
.byte $A3,$55, $00,$00, $A6,$55, $00,$00, $55,$55, $A4,$25, $A3,$00
|
||||||
.byte $77,$77, $25,$25, $22, $00,$00, $55, $A5,$22, $00,$00
|
.byte $A6,$55, $AA,$00, $77,$77, $25,$25, $22, $00,$00, $55
|
||||||
.byte $A6,$22, $A3,$00, $22,$22, $A4,$25
|
.byte $A5,$22, $00,$00, $A6,$22, $A3,$00, $22,$22, $A4,$25
|
||||||
.byte $A1
|
.byte $A1
|
||||||
causeway2_rle: .byte $28 ; ysize=48
|
causeway2_rle: .byte $28 ; ysize=48
|
||||||
.byte $26, $AD,$66, $06, $26, $56, $AA,$66, $00
|
.byte $26, $AD,$66, $06, $26, $56, $AA,$66, $00
|
||||||
|
@ -119,6 +119,8 @@ LZ4_DONE = $96
|
|||||||
; we try not to conflict with anything DOS, MONITOR or BASIC related
|
; we try not to conflict with anything DOS, MONITOR or BASIC related
|
||||||
|
|
||||||
|
|
||||||
|
GUN_CHARGE = $DC ; 2+
|
||||||
|
|
||||||
MONSTER_AI = $DD ; C1 underwater
|
MONSTER_AI = $DD ; C1 underwater
|
||||||
|
|
||||||
BG_BEAST = $DE ; C1
|
BG_BEAST = $DE ; C1
|
||||||
|
Loading…
Reference in New Issue
Block a user