mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-05 21:34:30 +00:00
mist: both brothers books more or less working
This commit is contained in:
parent
23c0d54397
commit
97b3bcf3a5
@ -47,6 +47,13 @@ not_red_page:
|
||||
|
||||
open_red_book:
|
||||
|
||||
; DEBUG
|
||||
inc RED_PAGE_COUNT
|
||||
|
||||
lda RED_PAGE_COUNT
|
||||
cmp #6
|
||||
beq red_ending
|
||||
|
||||
lda #OCTAGON_RED_BOOK_OPEN
|
||||
sta LOCATION
|
||||
|
||||
@ -61,6 +68,12 @@ open_book:
|
||||
|
||||
rts
|
||||
|
||||
red_ending:
|
||||
lda #OCTAGON_RED_END
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_W|DIRECTION_SPLIT
|
||||
jmp open_book
|
||||
|
||||
;===========================
|
||||
; Touch the blue book
|
||||
@ -110,12 +123,25 @@ not_blue_page:
|
||||
|
||||
open_blue_book:
|
||||
|
||||
; DEBUG
|
||||
inc BLUE_PAGE_COUNT
|
||||
|
||||
lda BLUE_PAGE_COUNT
|
||||
cmp #6
|
||||
beq blue_ending
|
||||
|
||||
lda #OCTAGON_BLUE_BOOK_OPEN
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_E|DIRECTION_SPLIT
|
||||
jmp open_book
|
||||
|
||||
blue_ending:
|
||||
lda #OCTAGON_BLUE_END
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_E|DIRECTION_SPLIT
|
||||
jmp open_book
|
||||
|
||||
|
||||
;===========================
|
||||
@ -141,18 +167,30 @@ repeat_sirrus_string:
|
||||
lda (OUTL),Y
|
||||
bpl repeat_sirrus_string
|
||||
|
||||
; pick which animation to use
|
||||
|
||||
lda ANIMATE_FRAME
|
||||
asl
|
||||
tay
|
||||
|
||||
lda RED_PAGE_COUNT
|
||||
bne red_show_face
|
||||
|
||||
red_only_static:
|
||||
lda red_book_sprite_sequence0,Y
|
||||
sta INL
|
||||
lda red_book_sprite_sequence0+1,Y
|
||||
jmp common_book_proper
|
||||
|
||||
red_show_face:
|
||||
lda red_book_sprite_sequence1,Y
|
||||
sta INL
|
||||
lda red_book_sprite_sequence1+1,Y
|
||||
|
||||
common_book_proper:
|
||||
sta INH
|
||||
|
||||
lda #23
|
||||
|
||||
advance_red_book:
|
||||
sta XPOS
|
||||
lda #14
|
||||
sta YPOS
|
||||
@ -165,7 +203,7 @@ advance_red_book:
|
||||
|
||||
inc ANIMATE_FRAME
|
||||
lda ANIMATE_FRAME
|
||||
cmp #4
|
||||
cmp #5
|
||||
bne done_animate_red_book
|
||||
lda #1
|
||||
sta ANIMATE_FRAME
|
||||
@ -186,6 +224,55 @@ red_book_done:
|
||||
rts
|
||||
|
||||
|
||||
|
||||
;===========================
|
||||
; Blue book animation
|
||||
;===========================
|
||||
|
||||
blue_book_animation:
|
||||
|
||||
; draw the text
|
||||
lda BLUE_PAGE_COUNT
|
||||
asl
|
||||
tay
|
||||
|
||||
lda achenar_dialog,Y
|
||||
sta OUTL
|
||||
lda achenar_dialog+1,Y
|
||||
sta OUTH
|
||||
|
||||
repeat_achenar_string:
|
||||
jsr move_and_print
|
||||
|
||||
ldy #0
|
||||
lda (OUTL),Y
|
||||
bpl repeat_achenar_string
|
||||
|
||||
; pick which animation to use
|
||||
|
||||
lda ANIMATE_FRAME
|
||||
asl
|
||||
tay
|
||||
|
||||
lda BLUE_PAGE_COUNT
|
||||
bne blue_show_face
|
||||
|
||||
blue_only_static:
|
||||
lda blue_book_sprite_sequence0,Y
|
||||
sta INL
|
||||
lda blue_book_sprite_sequence0+1,Y
|
||||
jmp common_book_proper
|
||||
|
||||
blue_show_face:
|
||||
lda blue_book_sprite_sequence1,Y
|
||||
sta INL
|
||||
lda blue_book_sprite_sequence1+1,Y
|
||||
|
||||
jmp common_book_proper
|
||||
|
||||
|
||||
|
||||
|
||||
;==========================
|
||||
; books sprites
|
||||
;==========================
|
||||
@ -199,11 +286,11 @@ red_book_sprite_sequence0:
|
||||
|
||||
red_book_sprite_sequence1:
|
||||
.word red_book_static1_sprite
|
||||
.word red_book_static2_sprite
|
||||
.word red_book_static1_sprite
|
||||
.word red_book_face_sprite
|
||||
.word red_book_face_sprite
|
||||
.word red_book_static2_sprite
|
||||
|
||||
|
||||
red_book_face_sprite:
|
||||
.byte 9,7
|
||||
.byte $31,$88,$bb,$bb,$bb,$bb,$bb,$88,$13
|
||||
@ -244,7 +331,8 @@ blue_book_sprite_sequence0:
|
||||
|
||||
blue_book_sprite_sequence1:
|
||||
.word blue_book_static1_sprite
|
||||
.word blue_book_static2_sprite
|
||||
.word blue_book_static1_sprite
|
||||
.word blue_book_face_sprite
|
||||
.word blue_book_face_sprite
|
||||
.word blue_book_static2_sprite
|
||||
|
||||
@ -291,7 +379,7 @@ blue_book_static2_sprite:
|
||||
|
||||
sirrus_dialog:
|
||||
.word red_dialog0,red_dialog1,red_dialog2,red_dialog3
|
||||
.word red_dialog4,red_dialog5,red_dialog6
|
||||
.word red_dialog4,red_dialog5
|
||||
|
||||
; red 0
|
||||
; only static
|
||||
@ -306,9 +394,9 @@ red_dialog0:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
red_dialog1:
|
||||
.byte 0,21
|
||||
.byte 6,21
|
||||
.byte "WHO ARE YOU? I CAN'T SEE YOU",0
|
||||
.byte 0,22
|
||||
.byte 4,22
|
||||
.byte "BRING ME A RED PAGE. I AM SIRRUS.",0
|
||||
.byte $80
|
||||
|
||||
@ -321,9 +409,9 @@ red_dialog1:
|
||||
red_dialog2:
|
||||
.byte 0,21
|
||||
.byte "YOU'VE RETURNED. THANK YOU FOR THE PAGE",0
|
||||
.byte 0,22
|
||||
.byte 1,22
|
||||
.byte "I BEG YOU TO FIND REMAINING RED PAGES",0
|
||||
.byte 0,23
|
||||
.byte 1,23
|
||||
.byte "DON'T WASTE TIME ON MY GUILTY BROTHER",0
|
||||
.byte $80
|
||||
|
||||
@ -334,11 +422,11 @@ red_dialog2:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
red_dialog3:
|
||||
.byte 0,21
|
||||
.byte 2,21
|
||||
.byte "FREE ME FROM MY PRISON. I AM SIRRUS.",0
|
||||
.byte 0,22
|
||||
.byte "I NEED MORE PAGES, DON'T TOUCH BLUE ONES",0
|
||||
.byte 0,23
|
||||
.byte 1,23
|
||||
.byte "DO NOT HELP MY WICKED BROTHER ACHENAR",0
|
||||
.byte $80
|
||||
|
||||
@ -349,11 +437,11 @@ red_dialog3:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
red_dialog4:
|
||||
.byte 0,21
|
||||
.byte 2,21
|
||||
.byte "WITH EACH PAGE I CAN SEE MORE CLEARLY",0
|
||||
.byte 0,22
|
||||
.byte 6,22
|
||||
.byte "ACHENAR IS GUILTY OF CONQUEST",0
|
||||
.byte 0,23
|
||||
.byte 6,23
|
||||
.byte "FREE ME AND I WILL REWARD YOU",0
|
||||
.byte $80
|
||||
|
||||
@ -368,13 +456,13 @@ red_dialog4:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
red_dialog5:
|
||||
.byte 0,21
|
||||
.byte 10,20
|
||||
.byte "YOU FINALLY RETURNED.",0
|
||||
.byte 0,22
|
||||
.byte 4,21
|
||||
.byte "YOU MUST THINK ACHENAR IS GUILTY",0
|
||||
.byte 0,23
|
||||
.byte "USE PAGE 158 IN PATTERN BOOK",0
|
||||
.byte 0,24
|
||||
.byte 4,22
|
||||
.byte "USE PAGE 158 IN THE PATTERN BOOK",0
|
||||
.byte 6,24
|
||||
.byte "DO NOT TOUCH THE GREEN BOOK",0
|
||||
.byte $80
|
||||
|
||||
@ -384,21 +472,21 @@ red_dialog5:
|
||||
; I hope you're into books. Goodbye!
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
red_dialog6:
|
||||
.byte 0,21
|
||||
.byte "I AM FREE! THANK YOU, YOU STUPID FOOL!",0
|
||||
.byte 0,22
|
||||
.byte "LET ME RIP SOME PAGES OUT!",0
|
||||
.byte 0,23
|
||||
.byte "I HOPE YOU'RE INTO BOOKS! GOODBYE!",0
|
||||
.byte $80
|
||||
;red_dialog6:
|
||||
; .byte 0,21
|
||||
; .byte "I AM FREE! THANK YOU, YOU STUPID FOOL!",0
|
||||
; .byte 0,22
|
||||
; .byte "LET ME RIP SOME PAGES OUT!",0
|
||||
; .byte 0,23
|
||||
; .byte "I HOPE YOU'RE INTO BOOKS! GOODBYE!",0
|
||||
; .byte $80
|
||||
|
||||
;==========================
|
||||
; blue/Achenar
|
||||
|
||||
achenar_dialog:
|
||||
.word red_dialog0,blue_dialog1,blue_dialog2,blue_dialog3
|
||||
.word blue_dialog4,blue_dialog5,blue_dialog6
|
||||
.word blue_dialog4,blue_dialog5
|
||||
|
||||
; blue 0
|
||||
; only static
|
||||
@ -409,9 +497,9 @@ achenar_dialog:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
blue_dialog1:
|
||||
.byte 0,21
|
||||
.byte 4,21
|
||||
.byte "SIRRUS IS THAT YOU? WHO ARE YOU?",0
|
||||
.byte 0,22
|
||||
.byte 1,22
|
||||
.byte "BRING BLUE PAGES. MUST HAVE BLUE PAGES",0
|
||||
.byte $80
|
||||
|
||||
@ -422,13 +510,13 @@ blue_dialog1:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
blue_dialog2:
|
||||
.byte 0,21
|
||||
.byte 5,20
|
||||
.byte "YOU'VE RETURNED. I'M ACHENAR.",0
|
||||
.byte 0,22
|
||||
.byte 4,21
|
||||
.byte "DON'T LISTEN TO MY LIAR BROTHER",0
|
||||
.byte 0,23
|
||||
.byte 7,22
|
||||
.byte "BRING BLUE PAGES, NOT RED",0
|
||||
.byte 0,24
|
||||
.byte 7,23
|
||||
.byte "I WILL HAVE MY RETRIBUTION",0
|
||||
.byte $80
|
||||
|
||||
@ -439,11 +527,11 @@ blue_dialog2:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
blue_dialog3:
|
||||
.byte 0,21
|
||||
.byte 9,21
|
||||
.byte "YOU'VE RETURNED, GOOD.",0
|
||||
.byte 0,22
|
||||
.byte 6,22
|
||||
.byte "GREEDY SIRRUS TRAPPED ME HERE",0
|
||||
.byte 0,23
|
||||
.byte 1,23
|
||||
.byte "BRING BLUE PAGES, DON'T TOUCH THE RED",0
|
||||
.byte $80
|
||||
|
||||
@ -456,9 +544,9 @@ blue_dialog3:
|
||||
blue_dialog4:
|
||||
.byte 0,21
|
||||
.byte "FRIEND, I SEE YOU THINK SIRRUS IS WRONG",0
|
||||
.byte 0,22
|
||||
.byte 2,22
|
||||
.byte "HAVE YOU OBSERVED HIS LUST FOR RICHES",0
|
||||
.byte 0,23
|
||||
.byte 6,23
|
||||
.byte "PLEASE BRING MORE BLUE PAGES",0
|
||||
.byte $80
|
||||
|
||||
@ -469,11 +557,11 @@ blue_dialog4:
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
blue_dialog5:
|
||||
.byte 0,21
|
||||
.byte 3,21
|
||||
.byte "SIRRUS IS GUILTY, HE LIED TO FATHER",0
|
||||
.byte 0,22
|
||||
.byte 1,22
|
||||
.byte "FIND PATTERN 158 AND USE THE FIREPLACE",0
|
||||
.byte 0,23
|
||||
.byte 7,23
|
||||
.byte "DON'T TOUCH THE GREEN BOOK!",0
|
||||
.byte $80
|
||||
|
||||
@ -484,11 +572,11 @@ blue_dialog5:
|
||||
; Maybe someone will rescue you.
|
||||
|
||||
; 0123456789012345678901234567890123456789
|
||||
blue_dialog6:
|
||||
.byte 0,21
|
||||
.byte "HAHA I AM FREE! I FEEL SO ALIVE!",0
|
||||
.byte 0,22
|
||||
.byte "WHAT HAPPENS IF I RIP THESE PAGES OUT?",0
|
||||
.byte 0,23
|
||||
.byte "MAYBE SOMEONE WILL RESCUE YOU",0
|
||||
.byte $80
|
||||
;blue_dialog6:
|
||||
; .byte 0,21
|
||||
; .byte "HAHA I AM FREE! I FEEL SO ALIVE!",0
|
||||
; .byte 0,22
|
||||
; .byte "WHAT HAPPENS IF I RIP THESE PAGES OUT?",0
|
||||
; .byte 0,23
|
||||
; .byte "MAYBE SOMEONE WILL RESCUE YOU",0
|
||||
; .byte $80
|
||||
|
@ -143,6 +143,8 @@ OCTAGON_RED_BOOK_CLOSED = 27
|
||||
OCTAGON_RED_BOOK_OPEN = 28
|
||||
OCTAGON_BLUE_BOOK_CLOSED= 29
|
||||
OCTAGON_BLUE_BOOK_OPEN = 30
|
||||
OCTAGON_RED_END = 31
|
||||
OCTAGON_BLUE_END = 32
|
||||
|
||||
; Mechanical Engineering
|
||||
|
||||
|
@ -48,7 +48,8 @@ octagon_graphics.inc: \
|
||||
tower_key_view_rocket_hint_n.lzsa tower_key_view_dock_hint_n.lzsa \
|
||||
tower_key_view_gears_hint_n.lzsa tower_key_view_tree_hint_n.lzsa \
|
||||
elevator_door_closed_s.lzsa \
|
||||
elevator_dark_s.lzsa
|
||||
elevator_dark_s.lzsa \
|
||||
red_book_ending.lzsa blue_book_ending.lzsa
|
||||
echo "temple_door_n_lzsa: .incbin \"temple_door_n.lzsa\"" > octagon_graphics.inc
|
||||
echo "temple_door_s_lzsa: .incbin \"temple_door_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_door_closed_s_lzsa: .incbin \"temple_door_closed_s.lzsa\"" >> octagon_graphics.inc
|
||||
@ -118,6 +119,8 @@ octagon_graphics.inc: \
|
||||
echo "tower_key_view_s_lzsa: .incbin \"tower_key_view_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "elevator_door_closed_s_lzsa: .incbin \"elevator_door_closed_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "elevator_dark_s_lzsa: .incbin \"elevator_dark_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_ending_lzsa: .incbin \"red_book_ending.lzsa\"" >> octagon_graphics.inc
|
||||
echo "blue_book_ending_lzsa: .incbin \"blue_book_ending.lzsa\"" >> octagon_graphics.inc
|
||||
|
||||
%.gr: %.png
|
||||
$(PNG2GR) $< $@
|
||||
|
BIN
mist/graphics_octagon/blue_book_ending.png
Normal file
BIN
mist/graphics_octagon/blue_book_ending.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.6 KiB |
Binary file not shown.
Before Width: | Height: | Size: 748 B After Width: | Height: | Size: 7.0 KiB |
@ -11,8 +11,8 @@ locations:
|
||||
.word location16,location17,location18,location19
|
||||
.word location20,location21,location22,location23
|
||||
.word location24,location25,location26,location27
|
||||
.word location28,location29,location30
|
||||
|
||||
.word location28,location29,location30,location31
|
||||
.word location32
|
||||
|
||||
; OCTAGON_TEMPLE_DOORWAY -- temple doorway
|
||||
location0:
|
||||
@ -577,3 +577,37 @@ location30:
|
||||
.word $0000 ; west bg
|
||||
.byte BG_EAST ; east
|
||||
.byte $ff
|
||||
|
||||
; OCTAGON_RED_END -- red ending
|
||||
location31:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word red_book_ending_lzsa ; west bg
|
||||
.byte BG_WEST
|
||||
.byte $ff
|
||||
|
||||
; OCTAGON_BLUE_END -- blue ending
|
||||
location32:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word blue_book_ending_lzsa ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_EAST
|
||||
.byte $ff
|
||||
|
@ -132,7 +132,7 @@ animate_red_book:
|
||||
jmp nothing_special
|
||||
|
||||
animate_blue_book:
|
||||
jsr red_book_animation
|
||||
jsr blue_book_animation
|
||||
jmp nothing_special
|
||||
|
||||
nothing_special:
|
||||
@ -423,5 +423,5 @@ draw_page_close:
|
||||
|
||||
|
||||
;.align $100
|
||||
audio_red_page:
|
||||
.incbin "audio/red_page.btc"
|
||||
;audio_red_page:
|
||||
;.incbin "audio/red_page.btc"
|
||||
|
Loading…
x
Reference in New Issue
Block a user