mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-26 11:30:12 +00:00
mist: meche: add rest of the blue secret room
also electric jolt, which could be a lot better
This commit is contained in:
parent
8916a0bd30
commit
c0c0918c16
@ -26,23 +26,23 @@ mist.dsk: HELLO LOADER MIST_TITLE MIST OCTAGON VIEWER \
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x2000 SHIP
|
||||
# $(DOS33) -y mist.dsk BSAVE -a 0x9000 ./audio/link_noise.btc LINK_NOISE.BTC
|
||||
|
||||
mist_side2.dsk: HELLO_DISK2 CHANNEL ARBOR NIBEL CABIN
|
||||
mist_side2.dsk: HELLO_DISK2 CHANNEL ARBOR NIBEL CABIN GENERATOR
|
||||
cp empty.dsk mist_side2.dsk
|
||||
$(DOS33) -y mist_side2.dsk SAVE A HELLO_DISK2 HELLO
|
||||
$(DOS33) -y mist_side2.dsk BSAVE -a 0x2000 CHANNEL
|
||||
$(DOS33) -y mist_side2.dsk BSAVE -a 0x2000 ARBOR
|
||||
$(DOS33) -y mist_side2.dsk BSAVE -a 0x2000 NIBEL
|
||||
$(DOS33) -y mist_side2.dsk BSAVE -a 0x2000 CABIN
|
||||
$(DOS33) -y mist_side2.dsk BSAVE -a 0x2000 GENERATOR
|
||||
|
||||
|
||||
|
||||
mist_side3.dsk: HELLO_DISK2 MECHE SELENA STONEY GENERATOR SUB
|
||||
mist_side3.dsk: HELLO_DISK2 MECHE SELENA STONEY SUB
|
||||
cp empty.dsk mist_side3.dsk
|
||||
$(DOS33) -y mist_side3.dsk SAVE A HELLO_DISK2 HELLO
|
||||
$(DOS33) -y mist_side3.dsk BSAVE -a 0x2000 MECHE
|
||||
$(DOS33) -y mist_side3.dsk BSAVE -a 0x2000 SELENA
|
||||
$(DOS33) -y mist_side3.dsk BSAVE -a 0x2000 STONEY
|
||||
$(DOS33) -y mist_side3.dsk BSAVE -a 0x2000 GENERATOR
|
||||
$(DOS33) -y mist_side3.dsk BSAVE -a 0x2000 SUB
|
||||
|
||||
|
||||
|
@ -47,13 +47,13 @@ Sizes:
|
||||
ARBOR 31591 -> 31744 -> 124 8
|
||||
NIBEL 15467 -> 15616 -> 61 4
|
||||
CABIN 15398 -> 15616 -> 61 4
|
||||
GENERATOR 8434 -> 8448 -> 33 3
|
||||
======== ===
|
||||
381+4= 385 = 98k 25
|
||||
414+5= 419 = 104k 28
|
||||
disk3:
|
||||
MECHE 28857 -> 28928 -> 113 8
|
||||
SELENA 36912 -> 37120 -> 145 10
|
||||
STONEY 40195 -> 40448 -> 158 10
|
||||
GENERATOR 8434 -> 8448 -> 33 3
|
||||
SUB 13786 -> 13824 -> 54 4
|
||||
======== ====
|
||||
503+5=508 = 127k 35
|
||||
|
@ -55,7 +55,9 @@ meche_graphics.inc: \
|
||||
book_stairs_n.lzsa book_stairs_s.lzsa \
|
||||
book_room_n.lzsa \
|
||||
book_open_n.lzsa book_closed_n.lzsa \
|
||||
blue_secret_door_w.lzsa blue_secret_room_w.lzsa \
|
||||
blue_secret_door_w.lzsa \
|
||||
blue_secret_room_n.lzsa blue_secret_room_s.lzsa blue_secret_room_e.lzsa blue_secret_room_w.lzsa \
|
||||
blue_secret_room_jolt_n.lzsa \
|
||||
red_secret_door_s.lzsa red_secret_room_s.lzsa
|
||||
echo "departure_e_lzsa: .incbin \"departure_e.lzsa\"" > meche_graphics.inc
|
||||
echo "arrival_w_lzsa: .incbin \"arrival_w.lzsa\"" >> meche_graphics.inc
|
||||
@ -148,12 +150,13 @@ meche_graphics.inc: \
|
||||
echo "book_closed_n_lzsa: .incbin \"book_closed_n.lzsa\"" >> meche_graphics.inc
|
||||
echo "blue_secret_door_w_lzsa: .incbin \"blue_secret_door_w.lzsa\"" >> meche_graphics.inc
|
||||
echo "blue_secret_room_w_lzsa: .incbin \"blue_secret_room_w.lzsa\"" >> meche_graphics.inc
|
||||
echo "blue_secret_room_jolt_n_lzsa: .incbin \"blue_secret_room_jolt_n.lzsa\"" >> meche_graphics.inc
|
||||
echo "blue_secret_room_e_lzsa: .incbin \"blue_secret_room_e.lzsa\"" >> meche_graphics.inc
|
||||
echo "blue_secret_room_n_lzsa: .incbin \"blue_secret_room_n.lzsa\"" >> meche_graphics.inc
|
||||
echo "blue_secret_room_s_lzsa: .incbin \"blue_secret_room_s.lzsa\"" >> meche_graphics.inc
|
||||
echo "red_secret_door_s_lzsa: .incbin \"red_secret_door_s.lzsa\"" >> meche_graphics.inc
|
||||
echo "red_secret_room_s_lzsa: .incbin \"red_secret_room_s.lzsa\"" >> meche_graphics.inc
|
||||
|
||||
|
||||
|
||||
|
||||
%.gr: %.png
|
||||
$(PNG2GR) $< $@
|
||||
|
||||
|
BIN
mist/graphics_meche/blue_secret_room_e.png
Normal file
BIN
mist/graphics_meche/blue_secret_room_e.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 935 B |
BIN
mist/graphics_meche/blue_secret_room_jolt_n.png
Normal file
BIN
mist/graphics_meche/blue_secret_room_jolt_n.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 833 B |
BIN
mist/graphics_meche/blue_secret_room_n.png
Normal file
BIN
mist/graphics_meche/blue_secret_room_n.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 905 B |
BIN
mist/graphics_meche/blue_secret_room_s.png
Normal file
BIN
mist/graphics_meche/blue_secret_room_s.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 882 B |
@ -725,20 +725,20 @@ location38:
|
||||
location39:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MECHE_BLUE_ROOM_CENTER ; west exit
|
||||
.byte MECHE_BLUE_ROOM_CENTER ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word blue_secret_room_n_lzsa ; north bg
|
||||
.word blue_secret_room_s_lzsa ; south bg
|
||||
.word blue_secret_room_e_lzsa ; east bg
|
||||
.word blue_secret_room_w_lzsa ; west bg
|
||||
.byte BG_WEST
|
||||
.byte DIRECTION_W
|
||||
.byte 14,18 ; special x
|
||||
.byte 32,40 ; special y
|
||||
.byte BG_NORTH | BG_SOUTH | BG_EAST | BG_WEST
|
||||
.byte DIRECTION_W|DIRECTION_N
|
||||
.byte 8,18 ; special x
|
||||
.byte 22,40 ; special y
|
||||
.word meche_take_blue_page-1 ; special function
|
||||
|
||||
; MECHE_RED_SECRET_DOOR -- red room secret door
|
||||
|
@ -169,7 +169,7 @@ which_disk:
|
||||
.byte '2' ; ARBOR
|
||||
.byte '2' ; NIBEL
|
||||
.byte '1' ; SHIP
|
||||
.byte '3' ; GENERATOR
|
||||
.byte '2' ; GENERATOR
|
||||
.byte '1' ; D'NI
|
||||
.byte '3' ; SUB
|
||||
|
||||
|
54
mist/meche.s
54
mist/meche.s
@ -239,7 +239,40 @@ draw_red_page:
|
||||
jmp put_sprite_crop ; tail call
|
||||
|
||||
|
||||
;========================
|
||||
; draw blue page
|
||||
;========================
|
||||
; also handle jolt
|
||||
|
||||
draw_blue_page:
|
||||
lda DIRECTION
|
||||
cmp #DIRECTION_W
|
||||
beq actually_draw_blue_page
|
||||
|
||||
; else, jolting
|
||||
lda ANIMATE_FRAME
|
||||
beq not_done_jolt
|
||||
|
||||
lda FRAMEL
|
||||
and #$f
|
||||
bne not_done_jolt
|
||||
|
||||
lda #0
|
||||
sta ANIMATE_FRAME
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<blue_secret_room_n_lzsa
|
||||
sta location39,Y ; MECHE_BLUE_SECRET_ROOM
|
||||
lda #>blue_secret_room_n_lzsa
|
||||
sta location39+1,Y ; MECHE_BLUE_SECRET_ROOM
|
||||
|
||||
jsr change_direction
|
||||
|
||||
not_done_jolt:
|
||||
|
||||
rts
|
||||
|
||||
actually_draw_blue_page:
|
||||
|
||||
lda BLUE_PAGES_TAKEN
|
||||
and #MECHE_PAGE
|
||||
@ -265,6 +298,27 @@ meche_take_red_page:
|
||||
jmp take_red_page
|
||||
|
||||
meche_take_blue_page:
|
||||
lda DIRECTION
|
||||
cmp #DIRECTION_W
|
||||
beq actually_take_blue_page
|
||||
|
||||
; if not, jolt time
|
||||
lda #1
|
||||
sta ANIMATE_FRAME
|
||||
lda #0
|
||||
sta FRAMEL
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<blue_secret_room_jolt_n_lzsa
|
||||
sta location39,Y ; MECHE_BLUE_SECRET_ROOM
|
||||
lda #>blue_secret_room_jolt_n_lzsa
|
||||
sta location39+1,Y ; MECHE_BLUE_SECRET_ROOM
|
||||
|
||||
jmp change_direction
|
||||
|
||||
|
||||
actually_take_blue_page:
|
||||
|
||||
lda #MECHE_PAGE
|
||||
jmp take_blue_page
|
||||
|
||||
|
@ -53,9 +53,9 @@
|
||||
.byte $00 ; MECHE_LOCK4 = $A8
|
||||
.byte $00 ; HOLDING_PAGE = $A9
|
||||
|
||||
.byte $3
|
||||
.byte $4
|
||||
; RED_PAGE_COUNT = $AA
|
||||
.byte $3
|
||||
.byte $4
|
||||
; BLUE_PAGE_COUNT = $AB
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user