mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-07 21:30:39 +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 (jump in hay)
|
||||
+ 2 (fall in mud puddle)
|
||||
+ 2 (give trinket to brothers)
|
||||
======
|
||||
50 points
|
||||
52 points
|
||||
|
||||
|
||||
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:
|
||||
|
||||
; TODO
|
||||
lda CURRENT_NOUN
|
||||
|
||||
cmp #NOUN_TRINKET
|
||||
beq archery_give_trinket
|
||||
|
||||
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
|
||||
;================
|
||||
@ -551,12 +596,18 @@ archery_talk:
|
||||
; only talk if close
|
||||
lda PEASANT_X
|
||||
cmp #23
|
||||
bcc archery_talk_too_far
|
||||
bcs archery_talk_close
|
||||
; check Y too?
|
||||
; probably less than $7D?
|
||||
; actual game will walk you in if close
|
||||
; 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
|
||||
|
||||
cmp #NOUN_MAN
|
||||
@ -569,10 +620,60 @@ archery_talk:
|
||||
beq archery_talk_mendelev
|
||||
cmp #NOUN_ARCHER
|
||||
beq archery_talk_mendelev
|
||||
cmp #NOUN_DONGOLEV
|
||||
beq archery_talk_dongolev
|
||||
cmp #NOUN_NONE
|
||||
beq archery_talk_mendelev
|
||||
|
||||
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:
|
||||
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
|
||||
ldy #>archery_talk_mendelev_message
|
||||
jsr partial_message_step
|
||||
@ -606,10 +707,7 @@ archer_score_points:
|
||||
|
||||
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
|
||||
|
||||
; + talk (after talking to him before) NOT IN WIKI
|
||||
archery_talk_mendelev_between_message:
|
||||
.byte 34,"Tell my bro I said 'haldo'",13
|
||||
.byte "if you see him,",34," he says",13
|
||||
.byte "and goes back to pouting.",0
|
||||
@ -222,6 +223,7 @@ archery_talk_mendelev3_message:
|
||||
; + talk (after dongolev back, before minigame)
|
||||
; talk mendelev, dongolev, brothers, guy, dude, man
|
||||
; (have arrow, not sure if that matters)
|
||||
archery_talk_before_minigame_message:
|
||||
.byte 34,"Haldo!",34," say the brothers.",13
|
||||
.byte 34,"Test your skill! Give us",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 "you need!",34,0
|
||||
|
||||
; + talk (after trinket, before minigame) same as "play game"
|
||||
|
||||
; + talk (after beating the minigame)
|
||||
; talk mendelev, dongolev, brothers, guy, dude, man
|
||||
archery_talk_after_minigame_message:
|
||||
.byte 34,"Go away!",34," says Dongolev.",13
|
||||
.byte 34,"We're arguing about who's",13
|
||||
.byte "hotter,",34," adds Mendelev.",0
|
||||
|
||||
; + 2 POINTS
|
||||
; + give super trinket
|
||||
archery_give_trinket_message:
|
||||
.byte 34,"That'll work,",34," says",13
|
||||
.byte "Mendelev. Just hit 3",13
|
||||
.byte "bullseyes and you win the",13
|
||||
@ -274,14 +280,22 @@ archery_talk_mendelev3_message:
|
||||
;.byte "back when your shipment",13
|
||||
;.byte "comes in.",0
|
||||
|
||||
|
||||
.byte 34,"But since you gave us this",13
|
||||
.byte "trinket, and you obviously",13
|
||||
.byte "don't have a prayer of",13
|
||||
.byte "winning, you can play again",13
|
||||
.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 "brothers. ",34,"Get 3 bullseyes",13
|
||||
.byte "this time and you'll win",13
|
||||
|
Loading…
x
Reference in New Issue
Block a user