mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-14 13:33:48 +00:00
mist: can solve puzzle, also draw bridge from other screen
This commit is contained in:
parent
4a4b0b0255
commit
05ec65861d
@ -8,6 +8,7 @@ clock_inside_reset:
|
||||
sta CLOCK_MIDDLE
|
||||
sta CLOCK_BOTTOM
|
||||
sta CLOCK_COUNT
|
||||
sta CLOCK_LAST
|
||||
rts
|
||||
|
||||
|
||||
@ -36,16 +37,39 @@ inside_not_reset:
|
||||
|
||||
inside_left:
|
||||
inc CLOCK_MIDDLE
|
||||
|
||||
lda CLOCK_LAST
|
||||
cmp #1
|
||||
bne left_spin_bottom
|
||||
lda YPOS
|
||||
cmp #24
|
||||
bcs left_nospin_bottom
|
||||
|
||||
left_spin_bottom:
|
||||
inc CLOCK_BOTTOM
|
||||
inc CLOCK_COUNT
|
||||
|
||||
left_nospin_bottom:
|
||||
lda #1
|
||||
jmp wrap_wheels
|
||||
|
||||
inside_right:
|
||||
inc CLOCK_MIDDLE
|
||||
|
||||
lda CLOCK_LAST
|
||||
cmp #2
|
||||
bne right_spin_top
|
||||
lda YPOS
|
||||
cmp #24
|
||||
bcs right_nospin_top
|
||||
|
||||
right_spin_top:
|
||||
inc CLOCK_TOP
|
||||
inc CLOCK_COUNT
|
||||
right_nospin_top:
|
||||
lda #2
|
||||
|
||||
wrap_wheels:
|
||||
sta CLOCK_LAST
|
||||
inc CLOCK_COUNT
|
||||
|
||||
ldx #0
|
||||
wrap_wheels_loop:
|
||||
@ -83,7 +107,7 @@ draw_clock_inside:
|
||||
asl
|
||||
asl
|
||||
clc
|
||||
adc #6
|
||||
adc #4
|
||||
sta YPOS
|
||||
jsr put_sprite_crop
|
||||
|
||||
@ -170,6 +194,12 @@ raise_bridge:
|
||||
lda #>clock_puzzle_bridge_lzsa
|
||||
sta location25+1,Y
|
||||
|
||||
; draw it on other too
|
||||
lda #<clock_bridge_lzsa
|
||||
sta location15,Y
|
||||
lda #>clock_bridge_lzsa
|
||||
sta location15+1,Y
|
||||
|
||||
jmp done_clock_bridge
|
||||
|
||||
lower_bridge:
|
||||
@ -188,6 +218,12 @@ lower_bridge:
|
||||
lda #>clock_puzzle_s_lzsa
|
||||
sta location25+1,Y
|
||||
|
||||
; lower on other too
|
||||
|
||||
lda #<clock_s_lzsa
|
||||
sta location15,Y
|
||||
lda #>clock_s_lzsa
|
||||
sta location15+1,Y
|
||||
|
||||
done_clock_bridge:
|
||||
jsr change_location
|
||||
|
@ -26,7 +26,7 @@ mist_graphics.inc: \
|
||||
red_book_shelf.lzsa \
|
||||
red_book_closed.lzsa \
|
||||
pool_s.lzsa \
|
||||
clock_s.lzsa \
|
||||
clock_s.lzsa clock_bridge.lzsa \
|
||||
spaceship_far_e.lzsa spaceship_far_n.lzsa \
|
||||
red_book_open.lzsa red_book_static.lzsa red_book_static2.lzsa \
|
||||
tree2_n.lzsa \
|
||||
@ -78,6 +78,7 @@ mist_graphics.inc: \
|
||||
echo "red_book_shelf_lzsa: .incbin \"red_book_shelf.lzsa\"" >> mist_graphics.inc
|
||||
echo "pool_s_lzsa: .incbin \"pool_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "clock_s_lzsa: .incbin \"clock_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "clock_bridge_lzsa: .incbin \"clock_bridge.lzsa\"" >> mist_graphics.inc
|
||||
echo "spaceship_far_n_lzsa: .incbin \"spaceship_far_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "spaceship_far_e_lzsa: .incbin \"spaceship_far_e.lzsa\"" >> mist_graphics.inc
|
||||
echo "red_book_open_lzsa: .incbin \"red_book_open.lzsa\"" >> mist_graphics.inc
|
||||
|
@ -34,6 +34,7 @@ red_book_closed_lzsa: .incbin "red_book_closed.lzsa"
|
||||
red_book_shelf_lzsa: .incbin "red_book_shelf.lzsa"
|
||||
pool_s_lzsa: .incbin "pool_s.lzsa"
|
||||
clock_s_lzsa: .incbin "clock_s.lzsa"
|
||||
clock_bridge_lzsa: .incbin "clock_bridge.lzsa"
|
||||
spaceship_far_n_lzsa: .incbin "spaceship_far_n.lzsa"
|
||||
spaceship_far_e_lzsa: .incbin "spaceship_far_e.lzsa"
|
||||
red_book_open_lzsa: .incbin "red_book_open.lzsa"
|
||||
|
@ -547,7 +547,7 @@ location27:
|
||||
.byte BG_SOUTH
|
||||
.byte DIRECTION_S ; special exit
|
||||
.byte 12,30 ; special x
|
||||
.byte 8,42 ; special y
|
||||
.byte 8,32 ; special y
|
||||
.word clock_inside_puzzle-1 ; special function
|
||||
|
||||
; fireplace
|
||||
|
@ -67,7 +67,7 @@ CLOCK_COUNT = $8E
|
||||
CLOCK_TOP = $8F
|
||||
CLOCK_MIDDLE = $90
|
||||
CLOCK_BOTTOM = $91
|
||||
|
||||
CLOCK_LAST = $92
|
||||
|
||||
DISP_PAGE = $ED ; ALL
|
||||
DRAW_PAGE = $EE ; ALL
|
||||
|
Loading…
x
Reference in New Issue
Block a user