mist: can open bookshelf and go down hallway
@ -82,6 +82,7 @@ octagon.o: octagon.s zp.inc hardware.inc common_defines.inc \
|
||||
keyboard.s \
|
||||
draw_pointer.s \
|
||||
end_level.s \
|
||||
octagon_bookshelf.s \
|
||||
gr_copy.s audio.s text_print.s decompress_fast_v2.s
|
||||
ca65 -o octagon.o octagon.s -l octagon.lst
|
||||
|
||||
|
@ -124,6 +124,8 @@ OCTAGON_FRAME_DOOR = 9
|
||||
OCTAGON_BLUE_BOOKSHELF = 10
|
||||
OCTAGON_TOWER_ROTATION = 11
|
||||
OCTAGON_BOOKSHELF_CLOSE = 12
|
||||
OCTAGON_TOWER_HALL1 = 13
|
||||
OCTAGON_TOWER_HALL2 = 14
|
||||
|
||||
; Mechanical Engineering
|
||||
|
||||
|
@ -11,8 +11,10 @@ all: octagon_graphics.inc
|
||||
|
||||
octagon_graphics.inc: \
|
||||
temple_door_n.lzsa temple_door_s.lzsa \
|
||||
temple_door_closed_s.lzsa temple_door_closed_n.lzsa \
|
||||
temple_center_n.lzsa temple_center_s.lzsa temple_center_e.lzsa \
|
||||
temple_center_w.lzsa temple_center_up.lzsa \
|
||||
temple_center_open_n.lzsa temple_center_closed_s.lzsa \
|
||||
red_book_shelf.lzsa \
|
||||
red_book_open.lzsa red_book_closed.lzsa \
|
||||
red_book_static.lzsa red_book_static2.lzsa \
|
||||
@ -21,14 +23,21 @@ octagon_graphics.inc: \
|
||||
frame_door_open.lzsa \
|
||||
frame_bookcase_open.lzsa \
|
||||
blue_book_shelf.lzsa \
|
||||
bookshelf_n.lzsa bookshelf_close_n.lzsa \
|
||||
map.lzsa tower_rotation.lzsa
|
||||
bookshelf_n.lzsa bookshelf_open_n.lzsa \
|
||||
bookshelf_close_n.lzsa \
|
||||
map.lzsa tower_rotation.lzsa \
|
||||
tower_hall1_n.lzsa tower_hall1_s.lzsa \
|
||||
tower_hall2_n.lzsa tower_hall2_s.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
|
||||
echo "temple_door_closed_n_lzsa: .incbin \"temple_door_closed_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_n_lzsa: .incbin \"temple_center_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_s_lzsa: .incbin \"temple_center_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_e_lzsa: .incbin \"temple_center_e.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_w_lzsa: .incbin \"temple_center_w.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_open_n_lzsa: .incbin \"temple_center_open_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_closed_s_lzsa: .incbin \"temple_center_closed_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_up_lzsa: .incbin \"temple_center_up.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_open_lzsa: .incbin \"red_book_open.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_closed_lzsa: .incbin \"red_book_closed.lzsa\"" >> octagon_graphics.inc
|
||||
@ -42,9 +51,16 @@ octagon_graphics.inc: \
|
||||
echo "frame_bookcase_open_lzsa: .incbin \"frame_bookcase_open.lzsa\"" >> octagon_graphics.inc
|
||||
echo "blue_book_shelf_lzsa: .incbin \"blue_book_shelf.lzsa\"" >> octagon_graphics.inc
|
||||
echo "bookshelf_n_lzsa: .incbin \"bookshelf_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "bookshelf_open_n_lzsa: .incbin \"bookshelf_open_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "bookshelf_close_n_lzsa: .incbin \"bookshelf_close_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "map_lzsa: .incbin \"map.lzsa\"" >> octagon_graphics.inc
|
||||
echo "tower_rotation_lzsa: .incbin \"tower_rotation.lzsa\"" >> octagon_graphics.inc
|
||||
echo "tower_hall1_n_lzsa: .incbin \"tower_hall1_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "tower_hall1_s_lzsa: .incbin \"tower_hall1_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "tower_hall2_n_lzsa: .incbin \"tower_hall2_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "tower_hall2_s_lzsa: .incbin \"tower_hall2_s.lzsa\"" >> octagon_graphics.inc
|
||||
|
||||
|
||||
|
||||
%.gr: %.png
|
||||
$(PNG2GR) $< $@
|
||||
|
BIN
mist/graphics_octagon/bookshelf_open_n.png
Normal file
After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 842 B After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 887 B After Width: | Height: | Size: 13 KiB |
BIN
mist/graphics_octagon/temple_center_closed_s.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
mist/graphics_octagon/temple_center_open_n.png
Normal file
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 16 KiB |
BIN
mist/graphics_octagon/temple_door_closed_n.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
mist/graphics_octagon/temple_door_closed_s.png
Normal file
After Width: | Height: | Size: 9.6 KiB |
BIN
mist/graphics_octagon/tower_hall1_n.png
Normal file
After Width: | Height: | Size: 896 B |
BIN
mist/graphics_octagon/tower_hall1_s.png
Normal file
After Width: | Height: | Size: 908 B |
BIN
mist/graphics_octagon/tower_hall2_n.png
Normal file
After Width: | Height: | Size: 836 B |
BIN
mist/graphics_octagon/tower_hall2_s.png
Normal file
After Width: | Height: | Size: 881 B |
@ -7,7 +7,7 @@ locations:
|
||||
.word location0, location1, location2, location3
|
||||
.word location4, location5, location6, location7
|
||||
.word location8, location9, location10,location11
|
||||
.word location12
|
||||
.word location12,location13,location14
|
||||
|
||||
; OCTAGON_TEMPLE_DOORWAY -- temple doorway
|
||||
location0:
|
||||
@ -154,7 +154,10 @@ location7:
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH
|
||||
.byte $ff
|
||||
.byte DIRECTION_N ; special exit
|
||||
.byte 15,25 ; special x
|
||||
.byte 12,28 ; special y
|
||||
.word open_bookshelf-1 ; special function
|
||||
|
||||
|
||||
; OCTAGON_BOOKSHELF -- the bookcase
|
||||
@ -189,7 +192,11 @@ location9:
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH
|
||||
.byte $ff
|
||||
.byte DIRECTION_N ; special exit
|
||||
.byte 15,25 ; special x
|
||||
.byte 12,28 ; special y
|
||||
.word close_bookshelf-1 ; special function
|
||||
|
||||
|
||||
; OCTAGON_BLUE_BOOKSHELF -- the blue bookshelf
|
||||
location10:
|
||||
@ -241,3 +248,38 @@ location12:
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH
|
||||
.byte $ff
|
||||
|
||||
; OCTAGON_TOWER_HALL1 -- hallway to tower
|
||||
location13:
|
||||
.byte OCTAGON_TOWER_HALL2 ; north exit
|
||||
.byte OCTAGON_TEMPLE_CENTER ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word tower_hall1_n_lzsa ; north bg
|
||||
.word tower_hall1_s_lzsa ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH|BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; OCTAGON_TOWER_HALL2 -- hallway to tower
|
||||
location14:
|
||||
.byte $ff ; north exit
|
||||
.byte OCTAGON_TOWER_HALL1 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word tower_hall2_n_lzsa ; north bg
|
||||
.word tower_hall2_s_lzsa ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH|BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
|
@ -230,6 +230,8 @@ done_goto:
|
||||
|
||||
.include "brother_books.s"
|
||||
|
||||
.include "octagon_bookshelf.s"
|
||||
|
||||
; linking books
|
||||
|
||||
; letters
|
||||
|
111
mist/octagon_bookshelf.s
Normal file
@ -0,0 +1,111 @@
|
||||
|
||||
open_bookshelf:
|
||||
|
||||
; change background of center room N
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<temple_center_open_n_lzsa
|
||||
sta location1,Y
|
||||
lda #>temple_center_open_n_lzsa
|
||||
sta location1+1,Y
|
||||
|
||||
; change background of bookshelf N
|
||||
|
||||
lda #<bookshelf_open_n_lzsa
|
||||
sta location8,Y
|
||||
lda #>bookshelf_open_n_lzsa
|
||||
sta location8+1,Y
|
||||
|
||||
; change background of door N
|
||||
|
||||
lda #<temple_door_closed_n_lzsa
|
||||
sta location0,Y
|
||||
lda #>temple_door_closed_n_lzsa
|
||||
sta location0+1,Y
|
||||
|
||||
; change background of center room S
|
||||
|
||||
ldy #LOCATION_SOUTH_BG
|
||||
lda #<temple_center_closed_s_lzsa
|
||||
sta location1,Y
|
||||
lda #>temple_center_closed_s_lzsa
|
||||
sta location1+1,Y
|
||||
|
||||
; change background of door S
|
||||
|
||||
lda #<temple_door_closed_s_lzsa
|
||||
sta location0,Y
|
||||
lda #>temple_door_closed_s_lzsa
|
||||
sta location0+1,Y
|
||||
|
||||
; disable exit to S
|
||||
ldy #LOCATION_SPECIAL_EXIT
|
||||
lda #$ff
|
||||
sta location0,Y
|
||||
|
||||
; enable exit to N
|
||||
|
||||
ldy #LOCATION_NORTH_EXIT
|
||||
lda #OCTAGON_TOWER_HALL1
|
||||
sta location8,Y
|
||||
|
||||
; start animation
|
||||
|
||||
rts
|
||||
|
||||
|
||||
|
||||
close_bookshelf:
|
||||
|
||||
; change background of center room N
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<temple_center_n_lzsa
|
||||
sta location1,Y
|
||||
lda #>temple_center_n_lzsa
|
||||
sta location1+1,Y
|
||||
|
||||
; change background of bookshelf N
|
||||
|
||||
lda #<bookshelf_n_lzsa
|
||||
sta location8,Y
|
||||
lda #>bookshelf_n_lzsa
|
||||
sta location8+1,Y
|
||||
|
||||
; change background of door N
|
||||
|
||||
lda #<temple_door_n_lzsa
|
||||
sta location0,Y
|
||||
lda #>temple_door_n_lzsa
|
||||
sta location0+1,Y
|
||||
|
||||
; change background of center room S
|
||||
|
||||
ldy #LOCATION_SOUTH_BG
|
||||
lda #<temple_center_s_lzsa
|
||||
sta location1,Y
|
||||
lda #>temple_center_s_lzsa
|
||||
sta location1+1,Y
|
||||
|
||||
; change background of door S
|
||||
|
||||
lda #<temple_door_s_lzsa
|
||||
sta location0,Y
|
||||
lda #>temple_door_s_lzsa
|
||||
sta location0+1,Y
|
||||
|
||||
; re-enable exit to S
|
||||
ldy #LOCATION_SPECIAL_EXIT
|
||||
lda #DIRECTION_S
|
||||
sta location0,Y
|
||||
|
||||
; disable exit to N
|
||||
|
||||
ldy #LOCATION_NORTH_EXIT
|
||||
lda #OCTAGON_BOOKSHELF_CLOSE
|
||||
sta location8,Y
|
||||
|
||||
; start animation
|
||||
|
||||
rts
|
||||
|