diff --git a/mist/graphics_octagon/Makefile b/mist/graphics_octagon/Makefile index 8c2fac31..6dedff22 100644 --- a/mist/graphics_octagon/Makefile +++ b/mist/graphics_octagon/Makefile @@ -51,7 +51,8 @@ octagon_graphics.inc: \ elevator_dark_s.lzsa \ red_book_ending.lzsa blue_book_ending.lzsa \ fireplace_shelf.lzsa \ - green_book.lzsa green_book_open.lzsa + green_book.lzsa green_book_open.lzsa \ + dni_n.lzsa dni_s.lzsa dni_e.lzsa dni_w.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 @@ -126,8 +127,10 @@ octagon_graphics.inc: \ echo "fireplace_shelf_lzsa: .incbin \"fireplace_shelf.lzsa\"" >> octagon_graphics.inc echo "green_book_lzsa: .incbin \"green_book.lzsa\"" >> octagon_graphics.inc echo "green_book_open_lzsa: .incbin \"green_book_open.lzsa\"" >> octagon_graphics.inc - - + echo "dni_n_lzsa: .incbin \"dni_n.lzsa\"" >> octagon_graphics.inc + echo "dni_s_lzsa: .incbin \"dni_s.lzsa\"" >> octagon_graphics.inc + echo "dni_e_lzsa: .incbin \"dni_e.lzsa\"" >> octagon_graphics.inc + echo "dni_w_lzsa: .incbin \"dni_w.lzsa\"" >> octagon_graphics.inc %.gr: %.png $(PNG2GR) $< $@ diff --git a/mist/graphics_octagon/dni_e.png b/mist/graphics_octagon/dni_e.png new file mode 100644 index 00000000..612a58f0 Binary files /dev/null and b/mist/graphics_octagon/dni_e.png differ diff --git a/mist/graphics_octagon/dni_n.png b/mist/graphics_octagon/dni_n.png new file mode 100644 index 00000000..a2787c29 Binary files /dev/null and b/mist/graphics_octagon/dni_n.png differ diff --git a/mist/graphics_octagon/dni_s.png b/mist/graphics_octagon/dni_s.png new file mode 100644 index 00000000..8a4bcbd2 Binary files /dev/null and b/mist/graphics_octagon/dni_s.png differ diff --git a/mist/graphics_octagon/dni_w.png b/mist/graphics_octagon/dni_w.png new file mode 100644 index 00000000..13b18af9 Binary files /dev/null and b/mist/graphics_octagon/dni_w.png differ diff --git a/mist/leveldata_octagon.inc b/mist/leveldata_octagon.inc index 1f8af6bf..24c8bc79 100644 --- a/mist/leveldata_octagon.inc +++ b/mist/leveldata_octagon.inc @@ -13,7 +13,7 @@ locations: .word location24,location25,location26,location27 .word location28,location29,location30,location31 .word location32,location33,location34,location35 - .word location36,location37 + .word location36,location37,location38,location39 ; OCTAGON_TEMPLE_DOORWAY -- temple doorway location0: @@ -709,10 +709,41 @@ location37: .word green_book_open_lzsa ; east bg .word $0000 ; west bg .byte BG_EAST + .byte DIRECTION_E ; special exit + .byte 21,31 ; special x + .byte 10,24 ; special y + .word goto_dni-1 ; special function + +; OCTAGON_DNI -- deep underneath New Mexico +location38: + .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 dni_n_lzsa ; north bg + .word dni_s_lzsa ; south bg + .word dni_e_lzsa ; east bg + .word dni_w_lzsa ; west bg + .byte BG_EAST|BG_WEST|BG_SOUTH|BG_NORTH .byte $ff ; special exit - .byte 3,8 ; special x - .byte 22,32 ; special y - .word return_fireplace-1 ; special function - - +; OCTAGON_DNI_DESK -- Atrus' desk +location39: + .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 dni_n_lzsa ; north bg + .word dni_s_lzsa ; south bg + .word dni_e_lzsa ; east bg + .word dni_w_lzsa ; west bg + .byte BG_EAST|BG_WEST|BG_SOUTH|BG_NORTH + .byte $ff ; special exit diff --git a/mist/octagon_fireplace.s b/mist/octagon_fireplace.s index 792ebcb0..c0feed4c 100644 --- a/mist/octagon_fireplace.s +++ b/mist/octagon_fireplace.s @@ -98,3 +98,12 @@ fireplace_grab_blue_page: lda #FINAL_PAGE jmp take_blue_page + +goto_dni: + lda #OCTAGON_DNI + sta LOCATION + + lda #DIRECTION_E + sta DIRECTION + + jmp change_location