dos33fsprogs/monkey/monkey_bar.s

107 lines
1.2 KiB
ArmAsm
Raw Normal View History

2020-09-18 02:53:00 +00:00
; if x<5 goto DOCK at 34,20
2020-09-18 01:37:50 +00:00
bar_check_exit:
2020-09-18 02:53:00 +00:00
lda GUYBRUSH_X
cmp #5
bcc bar_to_dock
2020-09-19 05:36:48 +00:00
cmp #35
bcs bar_to_town
bcc bar_no_exit
2020-09-18 02:53:00 +00:00
bar_to_dock:
lda #MONKEY_DOCK
sta LOCATION
lda #34
sta GUYBRUSH_X
sta DESTINATION_X
lda #20
sta GUYBRUSH_Y
sta DESTINATION_Y
jsr change_location
2020-09-19 05:36:48 +00:00
jmp bar_no_exit
bar_to_town:
lda #MONKEY_TOWN
sta LOCATION
lda #34
sta GUYBRUSH_X
sta DESTINATION_X
lda #20
sta GUYBRUSH_Y
lda #26
sta DESTINATION_Y
lda #DIR_DOWN
sta GUYBRUSH_DIRECTION
jsr change_location
2020-09-18 01:37:50 +00:00
bar_no_exit:
rts
bar_adjust_destination:
2020-09-18 02:53:00 +00:00
; if x<21, y=20
; if x<25, y=18
2020-09-19 05:36:48 +00:00
; else y=`6
2020-09-18 02:53:00 +00:00
2020-09-18 01:37:50 +00:00
br_check_x:
2020-09-18 02:53:00 +00:00
lda DESTINATION_X
cmp #25
bcs br_x_too_big
cmp #21
bcc br_x_small
bcs br_x_medium
2020-09-18 01:37:50 +00:00
br_x_too_big:
2020-09-19 05:36:48 +00:00
; lda #25
; sta DESTINATION_X
lda #16
2020-09-18 02:53:00 +00:00
sta DESTINATION_Y
bne done_br_adjust
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
br_x_medium:
lda #18
sta DESTINATION_Y
bne done_br_adjust
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
br_x_small:
lda #20
sta DESTINATION_Y
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
done_br_adjust:
2020-09-18 01:37:50 +00:00
rts
2020-09-18 02:53:00 +00:00
draw_bar_door:
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
lda BAR_DOOR_OPEN
beq done_draw_bar_door
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
lda #<door_sprite
sta INL
lda #>door_sprite
sta INH
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
lda #11
sta XPOS
lda #22
sta YPOS
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
jsr put_sprite_crop
done_draw_bar_door:
rts
2020-09-18 01:37:50 +00:00
2020-09-18 02:53:00 +00:00
door_sprite:
.byte 2,5
.byte $d2,$d2
.byte $88,$DD
.byte $88,$DD
.byte $88,$DD
.byte $5d,$5D
2020-09-18 01:37:50 +00:00