mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-05 21:34:30 +00:00
lemm: digging vaguely works
This commit is contained in:
parent
235c676020
commit
1836502a67
@ -8,8 +8,10 @@
|
||||
90 PRINT "DISK CODE : QKUMBA"
|
||||
94 PRINT "LZSA CODE : EMMANUEL MARTY"
|
||||
95 PRINT
|
||||
100 PRINT " ______"
|
||||
110 PRINT " A \/\/\/ SOFTWARE PRODUCTION"
|
||||
115 PRINT
|
||||
120 PRINT " HTTP://WWW.DEATER.NET/WEAVE/VMWPROD"
|
||||
130 PRINT CHR$(4)"BRUN LEMM"
|
||||
100 PRINT "WASD/ARROWS MOVE, ENTER ACTION"
|
||||
105 PRINT "J TOGGLE JOYSTICK"
|
||||
125 PRINT " ______"
|
||||
130 PRINT " A \/\/\/ SOFTWARE PRODUCTION"
|
||||
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, 7,"THAT LEVEL. CAN YOU DO IT AGAIN...",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 9,21,"PRESS ESCAPE FOR MENU",0
|
||||
|
||||
|
@ -190,50 +190,12 @@ check_return:
|
||||
|
||||
return_pressed:
|
||||
|
||||
; lda IN_SPECIAL
|
||||
; beq not_special_return
|
||||
; TODO: actually check if over
|
||||
|
||||
special_return:
|
||||
; jsr handle_special
|
||||
lda #LEMMING_DIGGING
|
||||
sta lemming_status
|
||||
|
||||
; special case, don't make cursor visible
|
||||
; 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
|
||||
jmp done_keypress
|
||||
|
||||
done_keypress:
|
||||
|
||||
|
@ -1,9 +1,13 @@
|
||||
|
||||
move_lemmings:
|
||||
|
||||
lda lemming_out
|
||||
beq done_move_lemming
|
||||
ldy #0
|
||||
lda lemming_out,Y
|
||||
|
||||
bne really_move_lemming
|
||||
jmp done_move_lemming
|
||||
|
||||
really_move_lemming:
|
||||
lda lemming_status
|
||||
cmp #LEMMING_FALLING
|
||||
beq do_lemming_falling
|
||||
@ -21,14 +25,79 @@ do_lemming_falling:
|
||||
jmp done_move_lemming
|
||||
|
||||
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
|
||||
lda lemming_x
|
||||
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
|
||||
|
||||
jsr collision_check_ground
|
||||
|
||||
jmp done_move_lemming
|
||||
|
||||
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:
|
||||
rts
|
||||
|
Loading…
x
Reference in New Issue
Block a user