mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-20 17:29:28 +00:00
peasant: more hooking up archery
This commit is contained in:
parent
355d0c34a3
commit
24e90d57e0
|
@ -183,8 +183,9 @@ POINTS IMPLEMENTED: (in order of implementation)
|
||||||
+ 3 (say haldo to dongolev)
|
+ 3 (say haldo to dongolev)
|
||||||
+ 3 (jump in hay)
|
+ 3 (jump in hay)
|
||||||
+ 2 (fall in mud puddle)
|
+ 2 (fall in mud puddle)
|
||||||
|
+ 2 (give trinket to brothers)
|
||||||
======
|
======
|
||||||
50 points
|
52 points
|
||||||
|
|
||||||
|
|
||||||
deaths/endings implemented
|
deaths/endings implemented
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
@ -447,10 +447,55 @@ archery_get_arrow:
|
||||||
;================
|
;================
|
||||||
archery_give:
|
archery_give:
|
||||||
|
|
||||||
; TODO
|
lda CURRENT_NOUN
|
||||||
|
|
||||||
|
cmp #NOUN_TRINKET
|
||||||
|
beq archery_give_trinket
|
||||||
|
|
||||||
jmp parse_common_give
|
jmp parse_common_give
|
||||||
|
|
||||||
|
archery_give_trinket:
|
||||||
|
; only if dongolev there
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #HALDO_TO_DONGOLEV
|
||||||
|
beq archery_no_give
|
||||||
|
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #TRINKET_GIVEN
|
||||||
|
bne archery_give_trinket_again
|
||||||
|
|
||||||
|
lda INVENTORY_2
|
||||||
|
and #INV2_TRINKET
|
||||||
|
bne archery_give_trinket_first
|
||||||
|
|
||||||
|
; otherwise, default
|
||||||
|
archery_no_give:
|
||||||
|
jmp parse_common_give
|
||||||
|
|
||||||
|
archery_give_trinket_first:
|
||||||
|
|
||||||
|
; score 2 points
|
||||||
|
lda #2
|
||||||
|
jsr score_points
|
||||||
|
|
||||||
|
ldx #<archery_give_trinket_message
|
||||||
|
ldy #>archery_give_trinket_message
|
||||||
|
jsr partial_message_step
|
||||||
|
|
||||||
|
jmp do_archery_game
|
||||||
|
|
||||||
|
|
||||||
|
archery_give_trinket_again:
|
||||||
|
ldx #<archery_give_trinket_again_message
|
||||||
|
ldy #>archery_give_trinket_again_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
|
do_archery_game:
|
||||||
|
; play game?
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
;================
|
;================
|
||||||
; haldo
|
; haldo
|
||||||
;================
|
;================
|
||||||
|
@ -551,12 +596,18 @@ archery_talk:
|
||||||
; only talk if close
|
; only talk if close
|
||||||
lda PEASANT_X
|
lda PEASANT_X
|
||||||
cmp #23
|
cmp #23
|
||||||
bcc archery_talk_too_far
|
bcs archery_talk_close
|
||||||
; check Y too?
|
; check Y too?
|
||||||
; probably less than $7D?
|
; probably less than $7D?
|
||||||
; actual game will walk you in if close
|
; actual game will walk you in if close
|
||||||
; will it work from beind?
|
; will it work from beind?
|
||||||
|
|
||||||
|
archery_talk_too_far:
|
||||||
|
ldx #<archery_talk_far_message
|
||||||
|
ldy #>archery_talk_far_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
archery_talk_close:
|
||||||
lda CURRENT_NOUN
|
lda CURRENT_NOUN
|
||||||
|
|
||||||
cmp #NOUN_MAN
|
cmp #NOUN_MAN
|
||||||
|
@ -569,10 +620,60 @@ archery_talk:
|
||||||
beq archery_talk_mendelev
|
beq archery_talk_mendelev
|
||||||
cmp #NOUN_ARCHER
|
cmp #NOUN_ARCHER
|
||||||
beq archery_talk_mendelev
|
beq archery_talk_mendelev
|
||||||
|
cmp #NOUN_DONGOLEV
|
||||||
|
beq archery_talk_dongolev
|
||||||
|
cmp #NOUN_NONE
|
||||||
|
beq archery_talk_mendelev
|
||||||
|
|
||||||
jmp parse_common_unknown
|
jmp parse_common_unknown
|
||||||
|
|
||||||
|
archery_talk_dongolev:
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #HALDO_TO_DONGOLEV
|
||||||
|
bne archery_yes_dongolev
|
||||||
|
|
||||||
|
jmp parse_common_talk
|
||||||
|
|
||||||
archery_talk_mendelev:
|
archery_talk_mendelev:
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #TALKED_TO_MENDELEV
|
||||||
|
beq archery_no_mendelev_yet
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #HALDO_TO_DONGOLEV
|
||||||
|
beq archery_yes_mendelev_no_dongolev
|
||||||
|
|
||||||
|
archery_yes_dongolev:
|
||||||
|
; three options, before trinket, after trinket, after minigame
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #ARROW_BEATEN
|
||||||
|
bne archery_after_minigame
|
||||||
|
|
||||||
|
lda GAME_STATE_0
|
||||||
|
and #TRINKET_GIVEN
|
||||||
|
bne archery_after_trinket
|
||||||
|
|
||||||
|
archery_before_trinket:
|
||||||
|
ldx #<archery_talk_before_minigame_message
|
||||||
|
ldy #>archery_talk_before_minigame_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
archery_after_trinket:
|
||||||
|
jmp archery_play_game
|
||||||
|
|
||||||
|
archery_after_minigame:
|
||||||
|
ldx #<archery_talk_after_minigame_message
|
||||||
|
ldy #>archery_talk_after_minigame_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
|
archery_yes_mendelev_no_dongolev:
|
||||||
|
ldx #<archery_talk_mendelev_between_message
|
||||||
|
ldy #>archery_talk_mendelev_between_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
|
archery_no_mendelev_yet:
|
||||||
|
|
||||||
ldx #<archery_talk_mendelev_message
|
ldx #<archery_talk_mendelev_message
|
||||||
ldy #>archery_talk_mendelev_message
|
ldy #>archery_talk_mendelev_message
|
||||||
jsr partial_message_step
|
jsr partial_message_step
|
||||||
|
@ -606,10 +707,7 @@ archer_score_points:
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
||||||
archery_talk_too_far:
|
|
||||||
ldx #<archery_talk_far_message
|
|
||||||
ldy #>archery_talk_far_message
|
|
||||||
jmp finish_parse_message
|
|
||||||
|
|
||||||
|
|
||||||
;=======================
|
;=======================
|
||||||
|
|
|
@ -215,6 +215,7 @@ archery_talk_mendelev3_message:
|
||||||
.byte "'haldo.'",34,0
|
.byte "'haldo.'",34,0
|
||||||
|
|
||||||
; + talk (after talking to him before) NOT IN WIKI
|
; + talk (after talking to him before) NOT IN WIKI
|
||||||
|
archery_talk_mendelev_between_message:
|
||||||
.byte 34,"Tell my bro I said 'haldo'",13
|
.byte 34,"Tell my bro I said 'haldo'",13
|
||||||
.byte "if you see him,",34," he says",13
|
.byte "if you see him,",34," he says",13
|
||||||
.byte "and goes back to pouting.",0
|
.byte "and goes back to pouting.",0
|
||||||
|
@ -222,6 +223,7 @@ archery_talk_mendelev3_message:
|
||||||
; + talk (after dongolev back, before minigame)
|
; + talk (after dongolev back, before minigame)
|
||||||
; talk mendelev, dongolev, brothers, guy, dude, man
|
; talk mendelev, dongolev, brothers, guy, dude, man
|
||||||
; (have arrow, not sure if that matters)
|
; (have arrow, not sure if that matters)
|
||||||
|
archery_talk_before_minigame_message:
|
||||||
.byte 34,"Haldo!",34," say the brothers.",13
|
.byte 34,"Haldo!",34," say the brothers.",13
|
||||||
.byte 34,"Test your skill! Give us",13
|
.byte 34,"Test your skill! Give us",13
|
||||||
.byte "the right super item from",13
|
.byte "the right super item from",13
|
||||||
|
@ -229,14 +231,18 @@ archery_talk_mendelev3_message:
|
||||||
.byte "give it as many tries as",13
|
.byte "give it as many tries as",13
|
||||||
.byte "you need!",34,0
|
.byte "you need!",34,0
|
||||||
|
|
||||||
|
; + talk (after trinket, before minigame) same as "play game"
|
||||||
|
|
||||||
; + talk (after beating the minigame)
|
; + talk (after beating the minigame)
|
||||||
; talk mendelev, dongolev, brothers, guy, dude, man
|
; talk mendelev, dongolev, brothers, guy, dude, man
|
||||||
|
archery_talk_after_minigame_message:
|
||||||
.byte 34,"Go away!",34," says Dongolev.",13
|
.byte 34,"Go away!",34," says Dongolev.",13
|
||||||
.byte 34,"We're arguing about who's",13
|
.byte 34,"We're arguing about who's",13
|
||||||
.byte "hotter,",34," adds Mendelev.",0
|
.byte "hotter,",34," adds Mendelev.",0
|
||||||
|
|
||||||
; + 2 POINTS
|
; + 2 POINTS
|
||||||
; + give super trinket
|
; + give super trinket
|
||||||
|
archery_give_trinket_message:
|
||||||
.byte 34,"That'll work,",34," says",13
|
.byte 34,"That'll work,",34," says",13
|
||||||
.byte "Mendelev. Just hit 3",13
|
.byte "Mendelev. Just hit 3",13
|
||||||
.byte "bullseyes and you win the",13
|
.byte "bullseyes and you win the",13
|
||||||
|
@ -274,14 +280,22 @@ archery_talk_mendelev3_message:
|
||||||
;.byte "back when your shipment",13
|
;.byte "back when your shipment",13
|
||||||
;.byte "comes in.",0
|
;.byte "comes in.",0
|
||||||
|
|
||||||
|
|
||||||
.byte 34,"But since you gave us this",13
|
.byte 34,"But since you gave us this",13
|
||||||
.byte "trinket, and you obviously",13
|
.byte "trinket, and you obviously",13
|
||||||
.byte "don't have a prayer of",13
|
.byte "don't have a prayer of",13
|
||||||
.byte "winning, you can play again",13
|
.byte "winning, you can play again",13
|
||||||
.byte "whenever you want.",34,0
|
.byte "whenever you want.",34,0
|
||||||
|
|
||||||
; play game
|
|
||||||
|
; give trinket (already gave) not in wiki
|
||||||
|
archery_give_trinket_again_message:
|
||||||
|
.byte "You already gave them the",13
|
||||||
|
.byte "trinket. Fortunately, you",13
|
||||||
|
.byte "have an open invitation to",13
|
||||||
|
.byte "humiliate yourself at the",13
|
||||||
|
.byte "range.",0
|
||||||
|
|
||||||
|
; play game, talk
|
||||||
.byte 34,"Haldo again!",34," say the",13
|
.byte 34,"Haldo again!",34," say the",13
|
||||||
.byte "brothers. ",34,"Get 3 bullseyes",13
|
.byte "brothers. ",34,"Get 3 bullseyes",13
|
||||||
.byte "this time and you'll win",13
|
.byte "this time and you'll win",13
|
||||||
|
|
Loading…
Reference in New Issue
Block a user