keen: hook up more of level7

don't have quite enough tiles :(
This commit is contained in:
Vince Weaver 2024-04-22 22:16:01 -04:00
parent 62763967d6
commit a6a9c0ce28
6 changed files with 52 additions and 42 deletions

View File

@ -226,7 +226,7 @@ ENGINE: engine.o
engine.o: engine.s zp.inc hardware.inc \
text_help.s gr_fast_clear.s text_quit_yn.s text_drawbox.s \
level1_enemies.s engine_items.s \
engine_enemies.s engine_items.s \
graphics/keen_graphics.inc sprites/keen_sprites.inc \
status_bar.s draw_keen.s move_keen.s gr_putsprite_crop.s \
draw_tilemap.s tilemap_lookup.s \

View File

@ -121,7 +121,7 @@ level_start:
;====================================
; load level1 tilemap
; load tilemap
;====================================
lda #<level_data_zx02
@ -216,10 +216,10 @@ done_with_keen:
lda LEVEL_OVER
cmp #NEXT_LEVEL
beq level1_levelover
beq level_over
cmp #GAME_OVER
beq level1_gameover
beq game_over
; got here, touched enemy
@ -281,16 +281,16 @@ skip_end_sound:
dec KEENS
bpl level1_levelover
bpl level_over
level1_gameover:
game_over:
; mars plays the sound
lda #GAME_OVER
sta LEVEL_OVER
level1_levelover:
level_over:
lda #LOAD_MARS
sta WHICH_LOAD
@ -322,7 +322,7 @@ level1_levelover:
.include "move_keen.s"
.include "handle_laser.s"
.include "draw_tilemap.s"
.include "level1_enemies.s"
.include "engine_enemies.s"
.include "engine_items.s"
.include "level1_sfx.s"
@ -331,8 +331,3 @@ level1_levelover:
.include "random16.s"
.include "tilemap_lookup.s"
;level1_data_zx02:
; .incbin "maps/level1_map.zx02"
;oracle_message:

View File

@ -7,6 +7,9 @@ ITEM_SPECIAL = 25
ITEM_KEYCARD = 32
FIRST_ENEMY = 20
LAST_ENEMY = 23
; POGO= 24
; SPECIAL = 25 (ship part or oracle)
; GUN = 26
@ -299,13 +302,15 @@ was_ship_part:
; check if touching enemy
;=============================
; level1 at least you can't touch with head?
; level7 you can...
check_enemy:
ldy #0
lda (INL),Y
cmp #21 ; green tentacles
beq touched_enemy
cmp #22 ; clam thing
bne done_check_enemy
cmp #FIRST_ENEMY ;
bcc done_check_enemy ; if less then, not enemy
cmp #LAST_ENEMY+1 ;
bcs done_check_enemy
touched_enemy:

View File

@ -5,19 +5,19 @@
; at $6000
level7_data:
.byte 116 ;MAX_TILE_X = 116 ; 116 wide
.byte 20 ;MAX_TILE_Y = 16 ; 20 tall
.byte 124 ;MAX_TILE_X
.byte 60 ;MAX_TILE_Y
.byte 4 ;START_KEEN_TILEX = 4
.byte 16 ;START_KEEN_TILEY = 16
.byte 2 ;START_KEEN_TILEX
.byte 48 ;START_KEEN_TILEY
.byte 0 ;START_TILEMAP_X = 0
.byte 8 ;START_TILEMAP_Y = 8
.byte 0 ;START_TILEMAP_X
.byte 40 ;START_TILEMAP_Y
.byte 0 ;NUM_ENEMIES = 8
.byte 8 ;NUM_ENEMIES
.byte 32 ;HARDTOP_TILES = 32 ; start at 32
.byte 40 ;ALLHARD_TILES = 40 ; start at 40
.byte 40 ;HARDTOP_TILES
.byte 48 ;ALLHARD_TILES
.align $100
@ -28,29 +28,39 @@ enemy_data:
enemy_data_out: .byte 1, 0, 0, 0, 0, 0, 0, 0
enemy_data_exploding: .byte 0, 0, 0, 0, 0, 0, 0, 0
enemy_data_type: .byte YORP, YORP, YORP, YORP, YORP, YORP,YORP,YORP
enemy_data_direction: .byte RIGHT, LEFT, LEFT, RIGHT, LEFT, RIGHT,LEFT,LEFT
enemy_data_tilex: .byte 16, 19, 23, 14, 14, 16, 42, 70
enemy_data_tiley: .byte 9, 9, 9, 45, 38, 43, 44, 34
enemy_data_direction: .byte LEFT, LEFT, LEFT, LEFT, LEFT, LEFT,RIGHT,LEFT
enemy_data_tilex: .byte 61, 78, 16, 63, 31, 28, 112, 36
enemy_data_tiley: .byte 4, 4, 15, 15, 28, 27, 54, 56
enemy_data_x: .byte 0, 0, 0, 0, 0, 0, 0, 0
enemy_data_y: .byte 0, 0, 0, 0, 0, 0, 0, 0
enemy_data_state: .byte 0, 0, 0, 0, 0, 0, 0, 0
enemy_data_count: .byte 8, 8, 8, 8, 8, 8, 8, 8
; FIXME: this is not correct
; enemy1: yorp @16,9, right
; enemy2: yorp @19,9 left
; enemy3: yorp @23,9 left
; enemy4: yorp @14,45 right
; enemy5: yorp @14,38 left
; enemy6: yorp @16,43 right
; enemy7: yorp @42,44 left
; enemy8: yorp @70,34 left
; enemy0: yorp @61,4, left
; enemy1: yorp @78,4 left
; enemy2: yorp @16,15 left
; enemy3: yorp @63,15 left
; enemy4: yorp @31,28 left
; enemy5: yorp @28,27 left
; enemy6: yorp @112,54 right
; enemy7: yorp @36,56 left
; enemy9: garg @50,31 right
; enemy10: garg @63,45 right
; enemy8: garg @36,4 right
; enemy9: garg @39,4 right
; enemy10: garg @105,2 left
; enemy11: garg @102,11 right
; enemy12: garg @105,17 left
; enemy13: garg @96,21 left
; enemy14: garg @22,33 right
; enemy15: garg @34,34 right
; enemy16: garg @52,49 right
; enemy17: butler robot@91,39 right
; enemy18: butler robot@86,39 right
; enemy19: butler robot@31,39 left
; enemy?: big robot@93,56 right
; enemy?: butler robot@27,7 left
; enemy?: vorticon @53,8 right
.align $100

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB