ootw: oops, level1 was broken due to level edge changes in level2

This commit is contained in:
Vince Weaver 2019-07-19 17:00:25 -04:00
parent 0b7ba21242
commit 1c39ab0f8a
4 changed files with 78 additions and 55 deletions

View File

@ -19,9 +19,9 @@ ootw_cavern:
;======================
; setup room boundaries
lda #(0+128)
lda #(-4+128)
sta LEFT_LIMIT
lda #(38+128)
lda #(39+128)
sta RIGHT_LIMIT
;=============================

View File

@ -33,7 +33,7 @@ beast_not_out_yet:
sta RIGHT_LIMIT
mesa_left:
lda #(128-3)
lda #(128-4)
sta LEFT_LIMIT
;=============================
@ -202,6 +202,47 @@ level1_ending:
mesa_frame_no_oflo:
;========================================
;========================================
; check if triggering beast
;========================================
;========================================
lda BEAST_OUT
bne mesa_done_check_beast
lda PHYSICIST_X
cmp #19
bne mesa_done_check_beast ; blt
trigger_beast:
;=======================
; trigger beast emerging
lda #1
sta BEAST_OUT
lda #0
sta BEAST_DIRECTION
sta BEAST_GAIT
sta BEAST_STATE ; B_STANDING
sta GAME_OVER
sta PHYSICIST_STATE ; stop in tracks
lda #50
sta BEAST_COUNT
lda #30
sta BEAST_X
lda #(39+128) ; update right side of screen
sta RIGHT_LIMIT ; this is mostly for testing
jsr beast_cutscene
jmp not_done_mesa
mesa_done_check_beast:
;========================================
;========================================
; check if at edge of screen or game over
@ -225,11 +266,6 @@ mesa_check_right:
;=====================
; off screen to right
lda BEAST_OUT ; if beast out trigger end
beq trigger_beast ; otherwise trigger beast
;=====================
; trigger ending
lda #MAX_PROGRESSION
@ -243,32 +279,7 @@ mesa_check_right:
jmp not_done_mesa
trigger_beast:
;=======================
; trigger beast emerging
lda #1
sta BEAST_OUT
lda #0
sta BEAST_DIRECTION
sta BEAST_GAIT
sta BEAST_STATE ; B_STANDING
sta GAME_OVER
sta PHYSICIST_STATE ; stop in tracks
lda #50
sta BEAST_COUNT
lda #30
sta BEAST_X
lda #(39+128) ; update right side of screen
sta RIGHT_LIMIT ; this is mostly for testing
jsr beast_cutscene
jmp not_done_mesa
mesa_check_left:
cmp #$1

View File

@ -1,14 +1,14 @@
; Ootw Pool Party
ootw_pool:
;===========================
;================
; Enable graphics
bit LORES
bit SET_GR
bit FULLGR
;=============
;===================
; disable earthquake
lda #0
@ -25,9 +25,9 @@ ootw_pool:
;===========================
; Setup right/left exit paramaters
lda #(40+128)
lda #(39+128)
sta RIGHT_LIMIT
lda #(-5+128)
lda #(-4+128)
sta LEFT_LIMIT
;=============================

View File

@ -253,6 +253,36 @@ hes_swinging:
rope_frame_no_oflo:
;===================
; check cliff's edge
lda PHYSICIST_X
cmp #11
bcs already_swung
lda BEFORE_SWING
beq already_swung
lda #0
sta BEFORE_SWING
; FIXME: check for jump
lda #80
sta SWING_PROGRESS
lda #11
sta PHYSICIST_X
lda #P_SWINGING
sta PHYSICIST_STATE
jmp not_done_rope
already_swung:
;=========================
; check if done this room
;=========================
@ -283,24 +313,6 @@ check_cliff_edge:
lda #0
sta GAME_OVER
;===================
; at cliff's edge
lda #0
sta BEFORE_SWING
; FIXME: check for jump
lda #80
sta SWING_PROGRESS
lda #11
sta PHYSICIST_X
lda #P_SWINGING
sta PHYSICIST_STATE
jmp not_done_rope
check_swung_off:
cmp #$5