lemm: add animation to level6

This commit is contained in:
Vince Weaver 2022-04-09 01:05:11 -04:00
parent bc60bee478
commit 64041dcd32
4 changed files with 100 additions and 2 deletions

View File

@ -230,7 +230,7 @@ LEVEL6: level6.o
level6.o: level6.s zp.inc hardware.inc qload.inc lemm.inc \
release_lemming.s \
graphics/graphics_level6.inc
graphics/graphics_level6.inc graphics/l6_animation.inc
ca65 -o level6.o level6.s -l level6.lst

View File

@ -16,7 +16,8 @@ all: graphics_test.inc \
graphics_level8.inc \
graphics_level9.inc \
graphics_level10.inc \
sprites.inc
sprites.inc \
l6_animation.inc
@ -92,6 +93,18 @@ graphics_level10.inc: \
echo "level10_preview_lzsa: .incbin \"level10_preview.lzsa\"" >> graphics_level10.inc
###
l6_animation.inc: level_animations.png
$(HGR_SPRITE) -s -l flame0_sprite level_animations.png 42 3 62 11 > l6_animation.inc
$(HGR_SPRITE) -s -l flame1_sprite level_animations.png 28 14 62 23 >> l6_animation.inc
$(HGR_SPRITE) -s -l flame2_sprite level_animations.png 21 25 62 38 >> l6_animation.inc
$(HGR_SPRITE) -s -l flame3_sprite level_animations.png 21 42 62 52 >> l6_animation.inc
$(HGR_SPRITE) -s -l flame4_sprite level_animations.png 14 56 41 63 >> l6_animation.inc
$(HGR_SPRITE) -s -l flame5_sprite level_animations.png 14 68 34 77 >> l6_animation.inc
$(HGR_SPRITE) -s -l flame6_sprite level_animations.png 0 85 27 93 >> l6_animation.inc
$(HGR_SPRITE) -s -l flame7_sprite level_animations.png 28 86 34 87 >> l6_animation.inc
###

Binary file not shown.

After

Width:  |  Height:  |  Size: 917 B

View File

@ -228,9 +228,21 @@ l6_door_is_open:
jsr draw_flames
;=====================
; draw level animation
;=====================
jsr flame_thrower
;====================
; update timer
;====================
jsr update_timer
;====================
; main drawing loop
;====================
jsr erase_lemming
@ -304,3 +316,76 @@ level6_intro_text:
.byte 13,18,"TIME 5 MINUTES",0
.byte 15,20,"RATING FUN",0
.byte 8,23,"PRESS RETURN TO CONTINUE",0
.include "graphics/l6_animation.inc"
;======================
; flame thrower
;======================
flame_thrower:
; erase old
; X a->x, savey1->savey2
lda #21
sta SAVED_Y1
lda #36
sta SAVED_Y2
lda #11
ldx #19
jsr hgr_partial_restore
; draw new
lda FRAMEL
and #$7
tay
lda flame_sprites_l,Y
sta INL
lda flame_sprites_h,Y
sta INH
lda flame_sprites_x,Y
sta XPOS
lda flame_sprites_y,Y
sta YPOS
jsr hgr_draw_sprite
rts
flame_sprites_l:
.byte <flame0_sprite,<flame1_sprite
.byte <flame2_sprite,<flame3_sprite
.byte <flame4_sprite,<flame5_sprite
.byte <flame6_sprite,<flame7_sprite
flame_sprites_h:
.byte >flame0_sprite,>flame1_sprite
.byte >flame2_sprite,>flame3_sprite
.byte >flame4_sprite,>flame5_sprite
.byte >flame6_sprite,>flame7_sprite
flame_sprites_x:
; .byte 15,13
; .byte 12,12
; .byte 11,11
; .byte 11,11
.byte 16,14
.byte 13,13
.byte 12,12
.byte 10,12
flame_sprites_y:
.byte 27,26
.byte 24,25
.byte 26,23
.byte 21,21