mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-05 06:31:25 +00:00
monkey: add another room
This commit is contained in:
parent
5233e24790
commit
11544b0eb4
@ -52,4 +52,4 @@ MONKEY_MANSION = 10
|
||||
MONKEY_ZIPLINE = 11
|
||||
MONKEY_VOODOO1 = 12
|
||||
MONKEY_VOODOO2 = 13
|
||||
|
||||
MONKEY_BAR_INSIDE3 = 14
|
||||
|
@ -10,7 +10,8 @@ all: graphics.inc
|
||||
|
||||
graphics.inc: \
|
||||
lookout.lzsa poster.lzsa dock.lzsa bar.lzsa town.lzsa map.lzsa \
|
||||
bar_inside1.lzsa bar_inside2.lzsa zipline.lzsa \
|
||||
bar_inside1.lzsa bar_inside2.lzsa bar_inside3.lzsa \
|
||||
zipline.lzsa \
|
||||
church.lzsa mansion.lzsa mansion_path.lzsa \
|
||||
voodoo1.lzsa voodoo2.lzsa \
|
||||
part1.lzsa lechuck_ship.lzsa lechuck_cabin.lzsa
|
||||
@ -22,6 +23,7 @@ graphics.inc: \
|
||||
echo "map_lzsa: .incbin \"map.lzsa\"" >> graphics.inc
|
||||
echo "bar_inside1_lzsa: .incbin \"bar_inside1.lzsa\"" >> graphics.inc
|
||||
echo "bar_inside2_lzsa: .incbin \"bar_inside2.lzsa\"" >> graphics.inc
|
||||
echo "bar_inside3_lzsa: .incbin \"bar_inside3.lzsa\"" >> graphics.inc
|
||||
echo "zipline_lzsa: .incbin \"zipline.lzsa\"" >> graphics.inc
|
||||
echo "church_lzsa: .incbin \"church.lzsa\"" >> graphics.inc
|
||||
echo "mansion_lzsa: .incbin \"mansion.lzsa\"" >> graphics.inc
|
||||
|
BIN
monkey/graphics/bar_inside3.png
Normal file
BIN
monkey/graphics/bar_inside3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
@ -6,7 +6,7 @@ locations:
|
||||
.word location0,location1,location2,location3
|
||||
.word location4,location5,location6,location7
|
||||
.word location8,location9,location10,location11
|
||||
.word location12,location13
|
||||
.word location12,location13,location14
|
||||
|
||||
; MONKEY_LOOKOUT -- lookout tower
|
||||
location0:
|
||||
@ -383,6 +383,21 @@ location13:
|
||||
.word voodoo_lady_string ; name
|
||||
.word voodoo_lady_action-1 ; action
|
||||
|
||||
|
||||
; MONKEY_BAR_INSIDE3 -- kitchen
|
||||
location14:
|
||||
.word bar_inside3_lzsa ; background
|
||||
.word bar_inside3_adjust_destination ; destination
|
||||
.word bar_inside3_check_exit ; exit
|
||||
.word bar_inside3_check_bounds ; bounds check
|
||||
.byte GUYBRUSH_BIG ; size
|
||||
.byte 1 ; num areas
|
||||
|
||||
.byte 0,3 ; x
|
||||
.byte 12,34 ; y
|
||||
.word curtain_string ; name
|
||||
.word curtain_action-1 ; action
|
||||
|
||||
; common strings
|
||||
|
||||
door_string: .byte 20,20,"DOOR",0
|
||||
|
@ -356,6 +356,7 @@ really_exit:
|
||||
.include "monkey_mansion_path.s"
|
||||
.include "monkey_bar_inside1.s"
|
||||
.include "monkey_bar_inside2.s"
|
||||
.include "monkey_bar_inside3.s"
|
||||
.include "monkey_voodoo1.s"
|
||||
.include "monkey_voodoo2.s"
|
||||
|
||||
|
@ -7,8 +7,8 @@ bar_inside2_check_exit:
|
||||
lda GUYBRUSH_X
|
||||
cmp #4
|
||||
bcc bar_inside2_to_bar_inside1
|
||||
; cmp #35
|
||||
; bcs bar_inside2_to_bar
|
||||
cmp #33
|
||||
bcs bar_inside2_to_bar_inside3
|
||||
bcs bar_inside2_no_exit
|
||||
|
||||
|
||||
@ -28,6 +28,23 @@ bar_inside2_to_bar_inside1:
|
||||
jsr change_location
|
||||
jmp bar_inside2_no_exit
|
||||
|
||||
bar_inside2_to_bar_inside3:
|
||||
lda GUYBRUSH_DIRECTION
|
||||
cmp #DIR_RIGHT
|
||||
bne bar_inside2_no_exit
|
||||
|
||||
lda #MONKEY_BAR_INSIDE3
|
||||
sta LOCATION
|
||||
lda #5
|
||||
sta GUYBRUSH_X
|
||||
sta DESTINATION_X
|
||||
lda #24
|
||||
sta GUYBRUSH_Y
|
||||
sta DESTINATION_Y
|
||||
jsr change_location
|
||||
jmp bar_inside2_no_exit
|
||||
|
||||
|
||||
bar_inside2_no_exit:
|
||||
rts
|
||||
|
||||
@ -42,12 +59,12 @@ bar_inside2_adjust_destination:
|
||||
lda #24
|
||||
sta DESTINATION_Y
|
||||
|
||||
lda DESTINATION_X
|
||||
cmp #33
|
||||
; lda DESTINATION_X
|
||||
; cmp #33
|
||||
bcc done_mb2_adjust
|
||||
|
||||
lda #33
|
||||
sta DESTINATION_X
|
||||
; lda #33
|
||||
; sta DESTINATION_X
|
||||
|
||||
|
||||
done_mb2_adjust:
|
||||
|
204
monkey/monkey_bar_inside3.s
Normal file
204
monkey/monkey_bar_inside3.s
Normal file
@ -0,0 +1,204 @@
|
||||
; stuff regarding 3d room of scumm bar
|
||||
|
||||
; if x<4 goto MONKEY_BAR_INSIDE2 at 34,24
|
||||
|
||||
bar_inside3_check_exit:
|
||||
|
||||
lda GUYBRUSH_X
|
||||
cmp #4
|
||||
bcc bar_inside3_to_bar_inside2
|
||||
; cmp #35
|
||||
; bcs bar_inside3_to_bar
|
||||
bcs bar_inside3_no_exit
|
||||
|
||||
|
||||
bar_inside3_to_bar_inside2:
|
||||
lda GUYBRUSH_DIRECTION
|
||||
cmp #DIR_LEFT
|
||||
bne bar_inside3_no_exit
|
||||
|
||||
lda #MONKEY_BAR_INSIDE2
|
||||
sta LOCATION
|
||||
lda #34
|
||||
sta GUYBRUSH_X
|
||||
sta DESTINATION_X
|
||||
lda #24
|
||||
sta GUYBRUSH_Y
|
||||
sta DESTINATION_Y
|
||||
jsr change_location
|
||||
jmp bar_inside3_no_exit
|
||||
|
||||
bar_inside3_no_exit:
|
||||
rts
|
||||
|
||||
;================================
|
||||
;================================
|
||||
; bar_inside3 adjust destination
|
||||
;================================
|
||||
;================================
|
||||
bar_inside3_adjust_destination:
|
||||
; just make Y always 24
|
||||
|
||||
lda #24
|
||||
sta DESTINATION_Y
|
||||
|
||||
lda DESTINATION_X
|
||||
cmp #33
|
||||
bcc done_mb3_adjust
|
||||
|
||||
lda #33
|
||||
sta DESTINATION_X
|
||||
|
||||
|
||||
done_mb3_adjust:
|
||||
rts
|
||||
|
||||
|
||||
;================================
|
||||
;================================
|
||||
; bar_inside3 check bounds
|
||||
;================================
|
||||
;================================
|
||||
bar_inside3_check_bounds:
|
||||
; just make Y always 20
|
||||
|
||||
rts
|
||||
|
||||
;draw_house:
|
||||
|
||||
; lda #<wall_sprite
|
||||
; sta INL
|
||||
; lda #>wall_sprite
|
||||
; sta INH
|
||||
|
||||
; lda #18
|
||||
; sta XPOS
|
||||
; lda #22
|
||||
; sta YPOS
|
||||
|
||||
; jsr put_sprite_crop
|
||||
|
||||
; rts
|
||||
|
||||
;house_sprite:
|
||||
|
||||
|
||||
;===================================
|
||||
;===================================
|
||||
; actions
|
||||
;===================================
|
||||
;===================================
|
||||
|
||||
|
||||
;=============================
|
||||
bar3_door_action:
|
||||
bar3_door_nothing:
|
||||
lda #VERB_WALK
|
||||
sta CURRENT_VERB
|
||||
rts
|
||||
|
||||
.if 0
|
||||
;=============================
|
||||
fireplace_action:
|
||||
lda CURRENT_VERB
|
||||
asl
|
||||
tay
|
||||
|
||||
lda fireplace_actions,Y
|
||||
cmp #$ff
|
||||
beq fireplace_nothing
|
||||
|
||||
sta MESSAGE_L
|
||||
lda fireplace_actions+1,Y
|
||||
sta MESSAGE_H
|
||||
|
||||
jmp do_display_message
|
||||
|
||||
fireplace_nothing:
|
||||
lda #VERB_WALK
|
||||
sta CURRENT_VERB
|
||||
rts
|
||||
|
||||
fireplace_actions:
|
||||
.word $FFFF ; give
|
||||
.word doesnt_open ; open
|
||||
.word doesnt_work ; close
|
||||
.word cant_pick_up ; pick_up
|
||||
.word fireplace_look ; look_at
|
||||
.word $FFFF ; talk_to
|
||||
.word for_what ; use
|
||||
.word icant_move ; push
|
||||
.word icant_move ; pull
|
||||
|
||||
fireplace_look:
|
||||
.byte 18,21,"COZY.",0
|
||||
|
||||
|
||||
;=============================
|
||||
impt_pirate_action:
|
||||
lda CURRENT_VERB
|
||||
asl
|
||||
tay
|
||||
|
||||
lda impt_pirate_actions,Y
|
||||
cmp #$ff
|
||||
beq impt_pirate_nothing
|
||||
|
||||
sta MESSAGE_L
|
||||
lda impt_pirate_actions+1,Y
|
||||
sta MESSAGE_H
|
||||
|
||||
jmp do_display_message
|
||||
|
||||
impt_pirate_nothing:
|
||||
lda #VERB_WALK
|
||||
sta CURRENT_VERB
|
||||
rts
|
||||
|
||||
impt_pirate_actions:
|
||||
.word $FFFF ; give
|
||||
.word $FFFF ; open
|
||||
.word $FFFF ; close
|
||||
.word $FFFF ; pick_up
|
||||
.word impt_pirate_look ; look_at
|
||||
.word impt_pirate_look ; talk_to
|
||||
.word $FFFF ; use
|
||||
.word $FFFF ; push
|
||||
.word $FFFF ; pull
|
||||
|
||||
impt_pirate_look:
|
||||
.byte 8,21,"WHAT BE YE WANTIN' BOY?",0
|
||||
|
||||
;=============================
|
||||
curtain_action:
|
||||
lda CURRENT_VERB
|
||||
asl
|
||||
tay
|
||||
|
||||
lda curtain_actions,Y
|
||||
cmp #$ff
|
||||
beq curtain_nothing
|
||||
|
||||
sta MESSAGE_L
|
||||
lda curtain_actions+1,Y
|
||||
sta MESSAGE_H
|
||||
|
||||
jmp do_display_message
|
||||
|
||||
curtain_nothing:
|
||||
lda #VERB_WALK
|
||||
sta CURRENT_VERB
|
||||
rts
|
||||
|
||||
curtain_actions:
|
||||
.word $FFFF ; give
|
||||
.word doesnt_open ; open
|
||||
.word doesnt_work ; close
|
||||
.word cant_pick_up ; pick_up
|
||||
.word not_special ; look_at
|
||||
.word $FFFF ; talk_to
|
||||
.word for_what ; use
|
||||
.word icant_move ; push
|
||||
.word icant_move ; pull
|
||||
|
||||
.endif
|
Loading…
x
Reference in New Issue
Block a user