mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-05 21:34:30 +00:00
mist: meche: add achenar's letter
This commit is contained in:
parent
edf5a70cfe
commit
37431b046a
@ -59,7 +59,8 @@ meche_graphics.inc: \
|
||||
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_n.lzsa red_secret_room_s.lzsa red_secret_room_e.lzsa red_secret_room_w.lzsa
|
||||
red_secret_room_n.lzsa red_secret_room_s.lzsa red_secret_room_e.lzsa red_secret_room_w.lzsa \
|
||||
achenar_letter.lzsa
|
||||
echo "departure_e_lzsa: .incbin \"departure_e.lzsa\"" > meche_graphics.inc
|
||||
echo "arrival_w_lzsa: .incbin \"arrival_w.lzsa\"" >> meche_graphics.inc
|
||||
echo "entrance_e_lzsa: .incbin \"entrance_e.lzsa\"" >> meche_graphics.inc
|
||||
@ -160,6 +161,8 @@ meche_graphics.inc: \
|
||||
echo "red_secret_room_s_lzsa: .incbin \"red_secret_room_s.lzsa\"" >> meche_graphics.inc
|
||||
echo "red_secret_room_e_lzsa: .incbin \"red_secret_room_e.lzsa\"" >> meche_graphics.inc
|
||||
echo "red_secret_room_w_lzsa: .incbin \"red_secret_room_w.lzsa\"" >> meche_graphics.inc
|
||||
echo "achenar_letter_lzsa: .incbin \"achenar_letter.lzsa\"" >> meche_graphics.inc
|
||||
|
||||
|
||||
%.gr: %.png
|
||||
$(PNG2GR) $< $@
|
||||
|
BIN
mist/graphics_meche/achenar_letter.png
Normal file
BIN
mist/graphics_meche/achenar_letter.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 977 B |
@ -1,5 +1,5 @@
|
||||
5 HOME
|
||||
10 PRINT "LOADING MIST V0.99"
|
||||
10 PRINT "LOADING MIST V0.99.1"
|
||||
20 PRINT:PRINT
|
||||
40 PRINT "CONTROLS: "
|
||||
42 PRINT " MOVE CURSOR : ARROWS OR WASD"
|
||||
|
@ -773,9 +773,9 @@ location41:
|
||||
.word red_secret_room_e_lzsa ; east bg
|
||||
.word red_secret_room_w_lzsa ; west bg
|
||||
.byte BG_NORTH | BG_SOUTH | BG_EAST | BG_WEST
|
||||
.byte DIRECTION_N
|
||||
.byte 22,29 ; special x
|
||||
.byte 14,24 ; special y
|
||||
.byte DIRECTION_N | DIRECTION_S
|
||||
.byte 22,31 ; special x
|
||||
.byte 14,32 ; special y
|
||||
.word meche_take_red_page-1 ; special function
|
||||
|
||||
; MECHE_TOP_FLOOR_UP -- looking above elevator
|
||||
@ -806,11 +806,9 @@ location43:
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word achenar_letter_lzsa ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_SOUTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
|
||||
|
||||
|
33
mist/meche.s
33
mist/meche.s
@ -222,6 +222,10 @@ really_exit:
|
||||
;=============================
|
||||
draw_red_page:
|
||||
|
||||
lda DIRECTION
|
||||
cmp #DIRECTION_N
|
||||
bne done_draw_red_page
|
||||
|
||||
lda RED_PAGES_TAKEN
|
||||
and #MECHE_PAGE
|
||||
bne no_draw_page
|
||||
@ -237,7 +241,8 @@ draw_red_page:
|
||||
sta INH
|
||||
|
||||
jmp put_sprite_crop ; tail call
|
||||
|
||||
done_draw_red_page:
|
||||
rts
|
||||
|
||||
;========================
|
||||
; draw blue page
|
||||
@ -293,10 +298,36 @@ actually_draw_blue_page:
|
||||
no_draw_page:
|
||||
rts
|
||||
|
||||
;==============================
|
||||
; Take red page
|
||||
; or read achenar letter
|
||||
;==============================
|
||||
|
||||
meche_take_red_page:
|
||||
lda DIRECTION
|
||||
cmp #DIRECTION_N
|
||||
beq actually_take_red_page
|
||||
|
||||
; otherwise go to read letter
|
||||
|
||||
lda #MECHE_ACHENAR_LETTER
|
||||
sta LOCATION
|
||||
jsr change_location
|
||||
|
||||
bit SET_TEXT
|
||||
rts
|
||||
|
||||
|
||||
actually_take_red_page:
|
||||
lda #MECHE_PAGE
|
||||
jmp take_red_page
|
||||
|
||||
|
||||
;=============================
|
||||
; Take blue page
|
||||
; or jolt the chair
|
||||
;=============================
|
||||
|
||||
meche_take_blue_page:
|
||||
lda DIRECTION
|
||||
cmp #DIRECTION_W
|
||||
|
@ -4,15 +4,15 @@
|
||||
.byte DIRECTION_S ; DIRECTION = $81
|
||||
.byte OCTAGON_TEMPLE_CENTER ; LOCATION = $82
|
||||
|
||||
.byte (OCTAGON_PAGE|MECHE_PAGE|SELENA_PAGE|CHANNEL_PAGE)
|
||||
.byte (OCTAGON_PAGE|MECHE_PAGE|SELENA_PAGE|CHANNEL_PAGE|STONEY_PAGE)
|
||||
; RED_PAGES_TAKEN = $83
|
||||
.byte (OCTAGON_PAGE|MECHE_PAGE|SELENA_PAGE|CHANNEL_PAGE)
|
||||
.byte (OCTAGON_PAGE|MECHE_PAGE|SELENA_PAGE|CHANNEL_PAGE|STONEY_PAGE)
|
||||
; BLUE_PAGES_TAKEN = $84
|
||||
.byte $1
|
||||
; CLOCK_BRIDGE = $85
|
||||
.byte $1
|
||||
; GEAR_OPEN = $86
|
||||
.byte (MARKER_DOCK|MARKER_GEARS|MARKER_SPACESHIP|MARKER_GENERATOR|MARKER_CLOCK|MARKER_POOL|MARKER_TREE)
|
||||
.byte (MARKER_DOCK|MARKER_GEARS|MARKER_SPACESHIP|MARKER_GENERATOR|MARKER_CLOCK|MARKER_POOL|MARKER_TREE|MARKER_DENTIST)
|
||||
; MARKER_SWITCHES = $87
|
||||
.byte $2
|
||||
; CLOCK_HOUR = $88
|
||||
@ -53,9 +53,9 @@
|
||||
.byte $00 ; MECHE_LOCK4 = $A8
|
||||
.byte $00 ; HOLDING_PAGE = $A9
|
||||
|
||||
.byte $4
|
||||
.byte $5
|
||||
; RED_PAGE_COUNT = $AA
|
||||
.byte $4
|
||||
.byte $5
|
||||
; BLUE_PAGE_COUNT = $AB
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user