ootw: we not have ceiling slugs

need to make them fall
This commit is contained in:
Vince Weaver 2019-01-24 22:58:21 -05:00
parent e4ec339e95
commit 11289ce300
6 changed files with 93 additions and 52 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@ -1,37 +1,37 @@
cavern2_rle: .byte $28 ; ysize=48
.byte $A8,$22, $A3,$82, $22,$22, $82, $A5,$88, $82,$82, $22,$22
.byte $A3,$62, $68, $88,$88, $F8, $68,$68, $A8,$66, $88
.byte $22, $66,$66, $A3,$22, $68,$68, $88, $F8, $62
.byte $22, $A3,$88, $68,$68, $A3,$66, $22,$22, $A5,$66, $6F
.byte $FF,$FF, $A9,$66, $88, $22, $66,$66, $A3,$22, $66,$66
.byte $88, $66, $6F, $22, $F8, $88, $AF,$66
.byte $FF, $F6, $A8,$66, $88, $22, $66,$66, $22,$22
.byte $A3,$66, $68, $66,$66, $22, $66, $68, $6F
.byte $F6, $AE,$66, $FF, $F6, $A8,$66, $22, $66,$66
.byte $22,$22, $A6,$66, $22, $A4,$66, $6F,$6F, $F6, $AC,$66
.byte $FF, $F6, $A6,$56, $66, $22, $66,$66, $22,$22
.byte $AE,$66, $6F,$6F, $F6,$F6, $A9,$66, $6F, $A6,$55, $F6,$F6
.byte $66,$66, $22,$22, $A0,$12,$66, $6F, $F6,$F6, $A7,$66, $A6,$55
.byte $66, $A3,$6F, $22,$22, $A4,$F6, $A0,$11,$66, $6F,$6F, $F6,$F6
.byte $A3,$66, $A6,$55, $A4,$66, $22,$22, $A3,$66, $A4,$6F, $FF
.byte $A4,$F6, $AD,$66, $6F,$6F, $F6, $A6,$55, $A4,$66, $22,$22
.byte $AB,$66, $A4,$6F, $FF, $A4,$F6, $A8,$66, $A6,$55, $2F
.byte $A3,$6F, $22,$22, $A4,$F6, $88, $55, $A4,$F6, $A0,$12,$66
.byte $A6,$55, $22, $A3,$66, $22,$22, $A4,$66, $88, $55
.byte $66,$66, $86, $AA,$6F, $A3,$66, $76, $86,$86, $87
.byte $88, $A7,$55, $22, $76,$76, $77, $22,$22, $77
.byte $A3,$76, $88, $57, $56, $76, $88, $A5,$76
.byte $77,$77, $76, $77, $87,$87, $A7,$88, $A7,$55, $22
.byte $88,$88, $87, $22,$22, $87, $A6,$88, $85, $88,$88
.byte $57,$57, $58, $A5,$88, $58,$58, $78,$78, $A5,$88, $A7,$55
.byte $22, $88, $58,$58, $22,$22, $78,$78, $88, $28
.byte $A5,$88, $58, $A3,$55, $77, $A3,$88, $A5,$55, $58
.byte $A3,$88, $A8,$55, $22, $A3,$55, $22,$22, $55, $57,$57
.byte $22, $A0,$1E,$55, $22,$22, $55,$55, $22,$22, $A3,$55, $22
.byte $AA,$55, $5A, $A0,$13,$55, $22,$22, $55,$55, $A3,$22, $25
.byte $55, $22, $AA,$55, $5A, $A0,$13,$55, $22, $82
.byte $85, $22, $A7,$82, $88,$88, $A0,$12,$85, $A0,$1C,$88, $A8,$28
.byte $A4,$88, $28, $AA,$88, $22, $A3,$88, $28, $A3,$22
.byte $28, $88, $22, $88,$88, $28, $A3,$52, $A8,$55
.byte $52,$52, $28,$28, $A9,$88, $A0,$78,$00
.byte $A8,$22, $A3,$82, $22,$22, $82, $A5,$88, $82,$82, $A5,$22
.byte $A5,$88, $68, $A8,$66, $88, $22, $62,$62, $A3,$22
.byte $68,$68, $88, $F8, $62, $22, $A3,$88, $68,$68
.byte $A3,$66, $22,$22, $A4,$66, $68,$68, $FF,$FF, $A9,$66, $88
.byte $22, $66,$66, $A3,$22, $66,$66, $88, $66, $6F
.byte $22, $F8, $88, $AF,$66, $FF, $F6, $A8,$66
.byte $88, $22, $66,$66, $22,$22, $A3,$66, $68, $66,$66
.byte $22, $66, $68, $6F, $F6, $AE,$66, $FF
.byte $F6, $A8,$66, $22, $66,$66, $22,$22, $A6,$66, $22
.byte $A4,$66, $6F,$6F, $F6, $AC,$66, $FF, $F6, $A6,$56
.byte $66, $22, $66,$66, $22,$22, $AE,$66, $6F,$6F, $F6,$F6
.byte $A9,$66, $6F, $A6,$55, $F6,$F6, $66,$66, $22,$22, $A0,$12,$66
.byte $6F, $F6,$F6, $A7,$66, $A6,$55, $66, $A3,$6F, $22,$22
.byte $A4,$F6, $A0,$11,$66, $6F,$6F, $F6,$F6, $A3,$66, $A6,$55, $A4,$66
.byte $22,$22, $A3,$66, $A4,$6F, $FF, $A4,$F6, $AD,$66, $6F,$6F
.byte $F6, $A6,$55, $A4,$66, $22,$22, $AB,$66, $A4,$6F, $FF
.byte $A4,$F6, $A8,$66, $A6,$55, $2F, $A3,$6F, $22,$22, $A4,$F6
.byte $88, $55, $A4,$F6, $A0,$12,$66, $A6,$55, $22, $A3,$66
.byte $22,$22, $A4,$66, $88, $55, $66,$66, $86, $AA,$6F
.byte $A3,$66, $76, $86,$86, $87, $88, $A7,$55, $22
.byte $76,$76, $77, $22,$22, $77, $A3,$76, $88, $57
.byte $56, $76, $88, $A5,$76, $77,$77, $76, $77
.byte $87,$87, $A7,$88, $A7,$55, $22, $88,$88, $87, $22,$22
.byte $87, $A6,$88, $85, $88,$88, $57,$57, $58, $A5,$88
.byte $58,$58, $78,$78, $A5,$88, $A7,$55, $22, $88, $58,$58
.byte $22,$22, $78,$78, $88, $28, $A5,$88, $58, $A3,$55
.byte $77, $A3,$88, $A5,$55, $58, $A3,$88, $A8,$55, $22
.byte $A3,$55, $22,$22, $55, $57,$57, $22, $A0,$1E,$55, $22,$22
.byte $55,$55, $22,$22, $A3,$55, $22, $AA,$55, $5A, $A0,$13,$55
.byte $22,$22, $55,$55, $A3,$22, $25, $55, $22, $AA,$55
.byte $5A, $A0,$13,$55, $22, $82, $85, $22, $A7,$82
.byte $88,$88, $A0,$12,$85, $A0,$1C,$88, $A8,$28, $A4,$88, $28, $AA,$88
.byte $22, $A3,$88, $28, $A3,$22, $28, $88, $22
.byte $88,$88, $28, $A3,$52, $A8,$55, $52,$52, $28,$28, $A9,$88
.byte $A0,$78,$00
.byte $A1

View File

@ -14,17 +14,17 @@ cavern3_rle: .byte $28 ; ysize=48
.byte $AA,$66, $46, $66,$66, $A8,$22, $A6,$55, $A4,$22, $55
.byte $22, $77, $78, $A3,$88, $85,$85, $55, $6F,$6F
.byte $A4,$F6, $66,$66, $A3,$44, $26, $A7,$22, $52, $55,$55
.byte $05, $A3,$55, $A4,$22, $55, $22, $25, $77
.byte $85, $A3,$55, $A4,$22, $55, $22, $25, $77
.byte $A7,$88, $8F, $5F,$5F, $A4,$6F, $88,$88, $28, $A8,$22
.byte $55,$55, $00, $A4,$55, $A4,$22, $55, $22, $25
.byte $57, $78, $A8,$88, $85, $8A, $EA,$EA, $E8,$E8
.byte $28, $A9,$22, $55, $05, $50, $A4,$55, $A4,$22
.byte $55,$55, $88, $A4,$55, $A4,$22, $55, $22, $25
.byte $57, $78, $A8,$88, $85, $8A, $7A,$7A, $78,$78
.byte $28, $A9,$22, $55, $85, $58, $A4,$55, $A4,$22
.byte $55, $22,$22, $52, $77, $A5,$88, $28, $22
.byte $27, $77, $88,$88, $28, $AB,$22, $55,$55, $00
.byte $27, $77, $88,$88, $28, $AB,$22, $55,$55, $88
.byte $A5,$55, $A5,$22, $25, $22,$22, $27,$27, $A4,$28, $A4,$22
.byte $28, $AD,$22, $55, $00, $A6,$55, $A0,$1E,$22, $52
.byte $55,$55, $00, $A5,$55, $00, $A7,$22, $02,$02, $A0,$12,$22
.byte $52,$52, $A3,$55, $50, $A6,$55, $00, $52,$52, $02
.byte $28, $AD,$22, $55, $88, $A6,$55, $A0,$1E,$22, $52
.byte $55,$55, $88, $A5,$55, $88, $A7,$22, $02,$02, $A0,$12,$22
.byte $52,$52, $A3,$55, $58, $A6,$55, $88, $52,$52, $02
.byte $00, $52,$52, $A5,$50, $AE,$52, $A0,$3F,$55, $A3,$05, $A3,$00
.byte $05, $A4,$55, $50, $A9,$55, $00,$00, $05, $A8,$55
.byte $A0,$A0,$00

View File

@ -43,7 +43,7 @@ slugg2_out: .byte 1
slugg2_attack: .byte 0
slugg2_dying: .byte 0
slugg2_x: .byte 30
slugg2_y: .byte 0
slugg2_y: .byte 2
slugg2_dir: .byte $ff
slugg2_gait: .byte 0
slugg2_falling: .byte 0
@ -80,7 +80,7 @@ slugg6_out: .byte 1
slugg6_attack: .byte 0
slugg6_dying: .byte 0
slugg6_x: .byte 30
slugg6_y: .byte 0
slugg6_y: .byte 2
slugg6_dir: .byte $ff
slugg6_gait: .byte 0
slugg6_falling: .byte 0
@ -89,7 +89,7 @@ slugg7_out: .byte 1
slugg7_attack: .byte 0
slugg7_dying: .byte 0
slugg7_x: .byte 30
slugg7_y: .byte 0
slugg7_y: .byte 2
slugg7_dir: .byte $ff
slugg7_gait: .byte 0
slugg7_falling: .byte 0
@ -127,11 +127,11 @@ init_slug_loop:
lda SEEDL
and #$1f
clc
adc #8 ; appear from x = 8..36
adc #8 ; appear from x = 8..32
cmp #36
cmp #32
bcc slugx_not_too_high ; blt
lda #36 ; max out at 36
asl ; div by two if too large
slugx_not_too_high:
sta slugg0_x,X
@ -317,7 +317,7 @@ no_progress:
;==============
check_draw_attacking:
lda slugg0_attack,X
beq slug_normal
beq check_slug_ceiling
slug_attacking:
lda slugg0_gait,X
@ -337,6 +337,35 @@ slug_attacking:
jmp slug_selected
;==============
; if on ceiling
;==============
check_slug_ceiling:
lda slugg0_y,X
cmp #30
beq slug_normal
slug_ceiling:
lda slugg0_gait,X
and #$20
beq slug_ceiling_squinched
slug_ceiling_flat:
lda #<slug_ceiling1
sta INL
lda #>slug_ceiling1
sta INH
bne slug_selected
slug_ceiling_squinched:
lda #<slug_ceiling2
sta INL
lda #>slug_ceiling2
sta INH
jmp slug_selected
;==============
; if normal
;==============
@ -364,7 +393,6 @@ slug_squinched:
slug_selected:
lda slugg0_x,X
sta XPOS

View File

@ -1,6 +1,6 @@
;=========================
; slug creatures
; going left
; going left on ground
slug1:
.byte $4,$4
@ -16,6 +16,19 @@ slug2:
.byte $aa,$aa,$aa
.byte $0a,$a0,$0a
;=========================
; slug creatures
; going left on roof
slug_ceiling1:
.byte $4,$1
.byte $a0,$a0,$a0,$a0
slug_ceiling2:
.byte $3,$1
.byte $a0,$0a,$a0
;===============
;===============
; slug on roof