lemm: digging vaguely works
This commit is contained in:
parent
235c676020
commit
1836502a67
|
@ -8,8 +8,10 @@
|
||||||
90 PRINT "DISK CODE : QKUMBA"
|
90 PRINT "DISK CODE : QKUMBA"
|
||||||
94 PRINT "LZSA CODE : EMMANUEL MARTY"
|
94 PRINT "LZSA CODE : EMMANUEL MARTY"
|
||||||
95 PRINT
|
95 PRINT
|
||||||
100 PRINT " ______"
|
100 PRINT "WASD/ARROWS MOVE, ENTER ACTION"
|
||||||
110 PRINT " A \/\/\/ SOFTWARE PRODUCTION"
|
105 PRINT "J TOGGLE JOYSTICK"
|
||||||
115 PRINT
|
125 PRINT " ______"
|
||||||
120 PRINT " HTTP://WWW.DEATER.NET/WEAVE/VMWPROD"
|
130 PRINT " A \/\/\/ SOFTWARE PRODUCTION"
|
||||||
130 PRINT CHR$(4)"BRUN LEMM"
|
135 PRINT
|
||||||
|
140 PRINT " HTTP://WWW.DEATER.NET/WEAVE/VMWPROD"
|
||||||
|
150 PRINT CHR$(4)"BRUN LEMM"
|
||||||
|
|
|
@ -112,7 +112,7 @@ level1_win_text:
|
||||||
.byte 2, 6,"SUPERB! YOU RESCUED EVERY LEMMING ON",0
|
.byte 2, 6,"SUPERB! YOU RESCUED EVERY LEMMING ON",0
|
||||||
.byte 2, 7,"THAT LEVEL. CAN YOU DO IT AGAIN...",0
|
.byte 2, 7,"THAT LEVEL. CAN YOU DO IT AGAIN...",0
|
||||||
.byte 6,15,"YOUR ACCESS CODE FOR LEVEL 2",0
|
.byte 6,15,"YOUR ACCESS CODE FOR LEVEL 2",0
|
||||||
.byte 12,16,"IS PLZNOTATARI",0
|
.byte 14,16,"IS WEH8ATARI",0
|
||||||
.byte 6,20,"PRESS RETURN FOR NEXT LEVEL",0
|
.byte 6,20,"PRESS RETURN FOR NEXT LEVEL",0
|
||||||
.byte 9,21,"PRESS ESCAPE FOR MENU",0
|
.byte 9,21,"PRESS ESCAPE FOR MENU",0
|
||||||
|
|
||||||
|
|
|
@ -190,50 +190,12 @@ check_return:
|
||||||
|
|
||||||
return_pressed:
|
return_pressed:
|
||||||
|
|
||||||
; lda IN_SPECIAL
|
; TODO: actually check if over
|
||||||
; beq not_special_return
|
|
||||||
|
|
||||||
special_return:
|
lda #LEMMING_DIGGING
|
||||||
; jsr handle_special
|
sta lemming_status
|
||||||
|
|
||||||
; special case, don't make cursor visible
|
jmp done_keypress
|
||||||
; jmp no_keypress
|
|
||||||
|
|
||||||
;not_special_return:
|
|
||||||
;
|
|
||||||
; lda IN_RIGHT
|
|
||||||
; beq not_right_return
|
|
||||||
|
|
||||||
; cmp #1
|
|
||||||
; beq right_return
|
|
||||||
|
|
||||||
;right_uturn:
|
|
||||||
; jsr uturn
|
|
||||||
; jmp no_keypress
|
|
||||||
|
|
||||||
;right_return:
|
|
||||||
; jsr turn_right
|
|
||||||
; jmp no_keypress
|
|
||||||
|
|
||||||
;not_right_return:
|
|
||||||
|
|
||||||
; lda IN_LEFT
|
|
||||||
; beq not_left_return
|
|
||||||
|
|
||||||
; cmp #1
|
|
||||||
; beq left_return
|
|
||||||
;left_uturn:
|
|
||||||
; jsr uturn
|
|
||||||
; jmp no_keypress
|
|
||||||
|
|
||||||
;left_return:
|
|
||||||
; jsr turn_left
|
|
||||||
; jmp no_keypress
|
|
||||||
|
|
||||||
;not_left_return:
|
|
||||||
|
|
||||||
; jsr go_forward
|
|
||||||
jmp no_keypress
|
|
||||||
|
|
||||||
done_keypress:
|
done_keypress:
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
|
|
||||||
move_lemmings:
|
move_lemmings:
|
||||||
|
|
||||||
lda lemming_out
|
ldy #0
|
||||||
beq done_move_lemming
|
lda lemming_out,Y
|
||||||
|
|
||||||
|
bne really_move_lemming
|
||||||
|
jmp done_move_lemming
|
||||||
|
|
||||||
|
really_move_lemming:
|
||||||
lda lemming_status
|
lda lemming_status
|
||||||
cmp #LEMMING_FALLING
|
cmp #LEMMING_FALLING
|
||||||
beq do_lemming_falling
|
beq do_lemming_falling
|
||||||
|
@ -21,14 +25,79 @@ do_lemming_falling:
|
||||||
jmp done_move_lemming
|
jmp done_move_lemming
|
||||||
|
|
||||||
do_lemming_walking:
|
do_lemming_walking:
|
||||||
|
|
||||||
|
|
||||||
|
lda lemming_y
|
||||||
|
clc
|
||||||
|
adc #3 ; waist-high?
|
||||||
|
tay
|
||||||
|
|
||||||
|
lda hposn_high,Y
|
||||||
|
sta GBASH
|
||||||
|
lda hposn_low,Y
|
||||||
|
sta GBASL
|
||||||
|
|
||||||
clc
|
clc
|
||||||
lda lemming_x
|
lda lemming_x
|
||||||
adc lemming_direction
|
adc lemming_direction
|
||||||
|
tay
|
||||||
|
|
||||||
|
lda (GBASL),Y
|
||||||
|
and #$7f
|
||||||
|
beq walking_no_wall
|
||||||
|
|
||||||
|
walking_yes_wall:
|
||||||
|
|
||||||
|
lda lemming_direction
|
||||||
|
eor #$ff
|
||||||
|
clc
|
||||||
|
adc #1
|
||||||
|
sta lemming_direction
|
||||||
|
|
||||||
|
lda lemming_x
|
||||||
|
|
||||||
|
walking_no_wall:
|
||||||
|
tya
|
||||||
|
|
||||||
|
walking_done:
|
||||||
sta lemming_x
|
sta lemming_x
|
||||||
|
|
||||||
jsr collision_check_ground
|
jsr collision_check_ground
|
||||||
|
|
||||||
|
jmp done_move_lemming
|
||||||
|
|
||||||
do_lemming_digging:
|
do_lemming_digging:
|
||||||
|
lda lemming_y
|
||||||
|
clc
|
||||||
|
adc #9
|
||||||
|
tay
|
||||||
|
|
||||||
|
lda hposn_high,Y
|
||||||
|
sta GBASH
|
||||||
|
lda hposn_low,Y
|
||||||
|
sta GBASL
|
||||||
|
|
||||||
|
ldy lemming_x
|
||||||
|
lda (GBASL),Y
|
||||||
|
and #$7f
|
||||||
|
beq digging_falling
|
||||||
|
digging_digging:
|
||||||
|
lda #$0
|
||||||
|
sta (GBASL),Y
|
||||||
|
lda GBASH
|
||||||
|
adc #$20
|
||||||
|
sta GBASH
|
||||||
|
lda #$0
|
||||||
|
sta (GBASL),Y
|
||||||
|
|
||||||
|
inc lemming_y
|
||||||
|
|
||||||
|
jmp done_digging
|
||||||
|
digging_falling:
|
||||||
|
lda #LEMMING_FALLING
|
||||||
|
sta lemming_status
|
||||||
|
done_digging:
|
||||||
|
|
||||||
|
|
||||||
done_move_lemming:
|
done_move_lemming:
|
||||||
rts
|
rts
|
||||||
|
|
Loading…
Reference in New Issue