riven_hgr: hookup some more graphics

This commit is contained in:
Vince Weaver 2024-05-17 22:49:43 -04:00
parent e41ebd4bdc
commit e7cba11d5a
8 changed files with 78 additions and 5 deletions

View File

@ -53,6 +53,7 @@ LOCATION_SPECIAL_FUNC=22 ; pointer-1 of function to call on click
; Outside
RIVEN_MAGLEV1 = 0
RIVEN_MAGPATH = 1
; Projector

View File

@ -8,11 +8,15 @@ HGR_SPRITE = ../../../utils/hgr-utils/hgr_make_sprite
all: outside_graphics.inc
outside_graphics.inc: \
maglev1_n.hgr.zx02 maglev1_s.hgr.zx02 maglev1_e.hgr.zx02 maglev1_w.hgr.zx02
maglev1_n.hgr.zx02 maglev1_s.hgr.zx02 maglev1_e.hgr.zx02 maglev1_w.hgr.zx02 \
magpath_n.hgr.zx02 magpath_s.hgr.zx02
echo "maglev1_n_zx02: .incbin \"maglev1_n.hgr.zx02\"" > outside_graphics.inc
echo "maglev1_s_zx02: .incbin \"maglev1_s.hgr.zx02\"" >> outside_graphics.inc
echo "maglev1_e_zx02: .incbin \"maglev1_e.hgr.zx02\"" >> outside_graphics.inc
echo "maglev1_w_zx02: .incbin \"maglev1_w.hgr.zx02\"" >> outside_graphics.inc
echo "magpath_n_zx02: .incbin \"magpath_n.hgr.zx02\"" >> outside_graphics.inc
echo "magpath_s_zx02: .incbin \"magpath_s.hgr.zx02\"" >> outside_graphics.inc
####

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@ -3,12 +3,12 @@
;===============================================
locations:
.word location0
.word location0,location1
; RIVEN_MAGLEV1 -- maglev steps
location0:
.byte LOAD_MAGSTEPS<<4|RIVEN_MAGSTEPS2 ; north exit
.byte LOAD_PROJECTOR<<4|RIVEN_PROJ_DOOR ; south exit
.byte RIVEN_MAGPATH ; south exit
.byte $ff ; east exit
.byte $ff ; west exit
.byte DIRECTION_N ; north exit_dir
@ -25,4 +25,20 @@ location0:
.byte 136,154 ; special y
.word call_button_clicked-1
; RIVEN_MAGPATH -- path to maglev
location1:
.byte RIVEN_MAGLEV1 ; north exit
.byte LOAD_PROJECTOR<<4|RIVEN_PROJ_DOOR ; 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 magpath_n_zx02 ; north bg
.word magpath_s_zx02 ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte BG_NORTH|BG_SOUTH
.byte $ff ; special exit

View File

@ -24,7 +24,7 @@ location0:
; RIVEN_PROJ_DOOR -- doorway to projector room
location1:
.byte LOAD_OUTSIDE<<4 | RIVEN_MAGLEV1 ; north exit
.byte LOAD_OUTSIDE<<4 | RIVEN_MAGPATH ; north exit
.byte RIVEN_PROJECTOR ; south exit
.byte $ff ; east exit
.byte $ff ; west exit

View File

@ -33,6 +33,18 @@ movie1_start:
jsr full_decomp
lda #<overlay
sta ZX0_src
lda #>overlay
sta ZX0_src+1
lda #$0c
jsr full_decomp
jsr do_overlay
.if 0
lda #num_scenes
@ -88,11 +100,51 @@ done_movie1:
rts
;===============================
do_overlay:
lda #$c
sta overlayin_smc+2
lda #$4
sta overlayout_smc+2
do_overlay_outer:
ldy #0
do_overlay_inner:
overlayin_smc:
lda $c00,Y
cmp #$AA ; both pixels transparent
beq skip_write
overlayout_smc:
sta $400,Y
skip_write:
dey
bne do_overlay_inner
inc overlayin_smc+2
inc overlayout_smc+2
lda overlayin_smc+2
cmp #$10
bne do_overlay_inner
rts
;===================================
; .include "../wait_keypress.s"
; .include "draw_boxes.s"
.include "movie1/movie1.inc"
.include "zx02_optim.s"
.include "movie1/movie1.inc"
overlay:
.incbin "movie1/overlays/maglev_overlay.gr.zx02"