diff --git a/mist/TODO b/mist/TODO index 49009cee..084539de 100644 --- a/mist/TODO +++ b/mist/TODO @@ -24,9 +24,13 @@ For release 1.0 -- allow coming at steps from an angle -- if space allows, lighten floor of compass rose when right button pressed - -- hook up pump - -- have the bottom blank out and print PUMPING NOISES -- hook up key/trunk puzzle + -- outside looking in can see trunk if up + (either add support or remove graphic) + -- if click on steps when looking N, move to look at steps + -- stop holding key if leave the two rooms where matters + [actual game it drops to floor of basement?] + -- rotate plug when open/closed + CHANNEL -- from path can still see down elev1 even if up @@ -37,6 +41,7 @@ For release 1.0 + NIBEL -- turn on sprite crop in the viewer part + [harder to do this than you might think] + MECHE -- animations for elevator diff --git a/mist/graphics_stoney/Makefile b/mist/graphics_stoney/Makefile index 708898ad..d8a14f56 100644 --- a/mist/graphics_stoney/Makefile +++ b/mist/graphics_stoney/Makefile @@ -14,7 +14,9 @@ stoney_graphics.inc: \ umbrella_path_e.lzsa umbrella_path_w.lzsa \ lighthouse_path_e.lzsa lighthouse_path_w.lzsa \ lighthouse_door_e.lzsa lighthouse_door_w.lzsa \ - lighthouse_inside_e.lzsa lighthouse_inside_w.lzsa lighthouse_inside_n.lzsa \ + lighthouse_inside_e.lzsa lighthouse_inside_w.lzsa \ + lighthouse_inside_n.lzsa \ + lighthouse_inside_nowater_n.lzsa lighthouse_inside_notrunk_n.lzsa \ lighthouse_upstairs_e.lzsa lighthouse_upstairs_w.lzsa \ lighthouse_battery_w.lzsa \ lighthouse_downladder_e.lzsa \ @@ -66,6 +68,8 @@ stoney_graphics.inc: \ echo "lighthouse_inside_e_lzsa: .incbin \"lighthouse_inside_e.lzsa\"" >> stoney_graphics.inc echo "lighthouse_inside_w_lzsa: .incbin \"lighthouse_inside_w.lzsa\"" >> stoney_graphics.inc echo "lighthouse_inside_n_lzsa: .incbin \"lighthouse_inside_n.lzsa\"" >> stoney_graphics.inc + echo "lighthouse_inside_nowater_n_lzsa: .incbin \"lighthouse_inside_nowater_n.lzsa\"" >> stoney_graphics.inc + echo "lighthouse_inside_notrunk_n_lzsa: .incbin \"lighthouse_inside_notrunk_n.lzsa\"" >> stoney_graphics.inc echo "lighthouse_upstairs_e_lzsa: .incbin \"lighthouse_upstairs_e.lzsa\"" >> stoney_graphics.inc echo "lighthouse_upstairs_w_lzsa: .incbin \"lighthouse_upstairs_w.lzsa\"" >> stoney_graphics.inc echo "lighthouse_battery_w_lzsa: .incbin \"lighthouse_battery_w.lzsa\"" >> stoney_graphics.inc diff --git a/mist/graphics_stoney/lighthouse_inside_notrunk_n.png b/mist/graphics_stoney/lighthouse_inside_notrunk_n.png new file mode 100644 index 00000000..931dee92 Binary files /dev/null and b/mist/graphics_stoney/lighthouse_inside_notrunk_n.png differ diff --git a/mist/graphics_stoney/lighthouse_inside_nowater_n.png b/mist/graphics_stoney/lighthouse_inside_nowater_n.png new file mode 100644 index 00000000..d668a998 Binary files /dev/null and b/mist/graphics_stoney/lighthouse_inside_nowater_n.png differ diff --git a/mist/leveldata_stoney.inc b/mist/leveldata_stoney.inc index 0e6771e5..bd357a81 100644 --- a/mist/leveldata_stoney.inc +++ b/mist/leveldata_stoney.inc @@ -951,6 +951,7 @@ location51: .word $0000 ; east bg .word $0000 ; west bg .byte BG_NORTH - .byte $ff - - + .byte DIRECTION_N ; special exit + .byte 7,13 ; special x + .byte 36,46 ; special y + .word trunk_open_plug-1 diff --git a/mist/stoney.s b/mist/stoney.s index 6b763b9c..de8077fe 100644 --- a/mist/stoney.s +++ b/mist/stoney.s @@ -35,9 +35,7 @@ stoney_start: sta DRAW_PAGE sta LEVEL_OVER - ; resets if you leave - ; FIXME: temp debug - lda #$7 + ; resets if you leave and come back sta BATTERY_CHARGE ; init cursor diff --git a/mist/stoney_puzzles.s b/mist/stoney_puzzles.s index 2cec53b1..14de08c8 100644 --- a/mist/stoney_puzzles.s +++ b/mist/stoney_puzzles.s @@ -411,6 +411,32 @@ update_pump_state: ; flood lighthouse sta location5,Y ; STONEY_LIGHTHOUSE_INSIDE + ldy #LOCATION_NORTH_BG + + ; if TRUNK_WATER_DRAINED=1 and TRUNK_VALVE_OPEN=0 then show trunk + + lda TRUNK_STATE + and #(TRUNK_WATER_DRAINED|TRUNK_VALVE_OPEN) + cmp #(TRUNK_WATER_DRAINED) + beq draw_trunk + +draw_notrunk: + lda #lighthouse_inside_notrunk_n_lzsa + sta location5+1,Y ; STONEY_LIGHTHOUSE_INSIDE + bne done_draw_trunk ; bra + +draw_trunk: + lda #lighthouse_inside_n_lzsa + sta location5+1,Y ; STONEY_LIGHTHOUSE_INSIDE + +done_draw_trunk: + + + lda PUMP_STATE beq done_update_pump_state cmp #DRAINED_EXIT @@ -435,6 +461,13 @@ drain_tunnels: jmp done_update_pump_state drain_lighthouse: + + ldy #LOCATION_NORTH_BG + lda #lighthouse_inside_nowater_n_lzsa + sta location5+1,Y ; STONEY_LIGHTHOUSE_INSIDE + ldy #LOCATION_NORTH_EXIT lda #STONEY_LIGHTHOUSE_SPIRAL sta location5,Y ; STONEY_LIGHTHOUSE_INSIDE @@ -1403,8 +1436,26 @@ doorway2_water_list: ; trunk ;====================================== +; States: originally FULL OF WATER, PLUG CLOSED +; open plug: EMPTY OF WATER, PLUG OPEN +; water raises: FULL OF WATER, PLUG OPEN +; close plug: EMPTY OF WATER, PLUG CLOSED + goto_trunk: lda #STONEY_TRUNK_CLOSE sta LOCATION jmp change_location + + +trunk_open_plug: + ; TOGGLE TRUNK_VALVE_OPEN + ; CLEAR FULL_OF_WATER + + ; FIXME: start animation? + + lda TRUNK_STATE + eor #TRUNK_VALVE_OPEN + ora #TRUNK_WATER_DRAINED + sta TRUNK_STATE + rts