mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-20 17:29:28 +00:00
peasant: can deploy baby at Ned's cottage
This commit is contained in:
parent
e42b13c5bc
commit
c23087b057
|
@ -193,8 +193,9 @@ POINTS IMPLEMENTED: (in order of implementation)
|
||||||
+ 7 (talk to knight once have belt, robe, and on fire)
|
+ 7 (talk to knight once have belt, robe, and on fire)
|
||||||
+ 7 (get riches from jhonka)
|
+ 7 (get riches from jhonka)
|
||||||
+ 5 (throw baby)
|
+ 5 (throw baby)
|
||||||
|
+ 5 (deploy baby)
|
||||||
======
|
======
|
||||||
91 points
|
96 points
|
||||||
|
|
||||||
|
|
||||||
deaths/endings implemented
|
deaths/endings implemented
|
||||||
|
|
|
@ -858,6 +858,13 @@ lake_west_throw_baby:
|
||||||
and #INV1_BABY
|
and #INV1_BABY
|
||||||
beq lake_west_throw_baby_no_baby
|
beq lake_west_throw_baby_no_baby
|
||||||
|
|
||||||
|
; next see if baby gone
|
||||||
|
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
and #INV1_BABY
|
||||||
|
bne lake_west_throw_baby_no_baby
|
||||||
|
|
||||||
|
|
||||||
; see if in right spot
|
; see if in right spot
|
||||||
; TODO:
|
; TODO:
|
||||||
lda PEASANT_X
|
lda PEASANT_X
|
||||||
|
|
|
@ -43,6 +43,10 @@ ned_cottage_verb_table:
|
||||||
.word ned_cottage_use-1
|
.word ned_cottage_use-1
|
||||||
.byte VERB_TRY
|
.byte VERB_TRY
|
||||||
.word ned_cottage_try-1
|
.word ned_cottage_try-1
|
||||||
|
.byte VERB_PUT
|
||||||
|
.word ned_cottage_put-1
|
||||||
|
.byte VERB_CLOSE
|
||||||
|
.word ned_cottage_close-1
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
;================
|
;================
|
||||||
|
@ -62,6 +66,35 @@ ned_cottage_climb_fence:
|
||||||
ldy #>ned_cottage_climb_fence_message
|
ldy #>ned_cottage_climb_fence_message
|
||||||
jmp finish_parse_message
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
;================
|
||||||
|
; close
|
||||||
|
;================
|
||||||
|
ned_cottage_close:
|
||||||
|
lda CURRENT_NOUN
|
||||||
|
|
||||||
|
cmp #NOUN_DOOR
|
||||||
|
beq ned_cottage_close_door
|
||||||
|
|
||||||
|
jmp parse_common_unknown
|
||||||
|
|
||||||
|
ned_cottage_close_door:
|
||||||
|
; see if baby gone
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
and #INV1_BABY
|
||||||
|
bne ned_cottage_close_door_after
|
||||||
|
|
||||||
|
ned_cottage_close_door_before:
|
||||||
|
ldx #<ned_cottage_close_door_before_message
|
||||||
|
ldy #>ned_cottage_close_door_before_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
ned_cottage_close_door_after:
|
||||||
|
ldx #<ned_cottage_close_door_after_message
|
||||||
|
ldy #>ned_cottage_close_door_after_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;================
|
;================
|
||||||
; knock
|
; knock
|
||||||
;================
|
;================
|
||||||
|
@ -117,10 +150,21 @@ ned_cottage_open:
|
||||||
jmp parse_common_unknown
|
jmp parse_common_unknown
|
||||||
|
|
||||||
ned_cottage_open_door:
|
ned_cottage_open_door:
|
||||||
|
; see if baby was deployed
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
and #INV1_BABY
|
||||||
|
bne ned_cottage_open_door_after_baby
|
||||||
|
|
||||||
|
ned_cottage_open_door_before_baby:
|
||||||
ldx #<ned_cottage_open_door_message
|
ldx #<ned_cottage_open_door_message
|
||||||
ldy #>ned_cottage_open_door_message
|
ldy #>ned_cottage_open_door_message
|
||||||
jmp finish_parse_message
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
ned_cottage_open_door_after_baby:
|
||||||
|
ldx #<ned_cottage_open_door_after_baby_message
|
||||||
|
ldy #>ned_cottage_open_door_after_baby_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
;================
|
;================
|
||||||
; push/pull
|
; push/pull
|
||||||
;================
|
;================
|
||||||
|
@ -225,6 +269,7 @@ ned_cottage_rock_moved:
|
||||||
ned_cottage_deploy:
|
ned_cottage_deploy:
|
||||||
ned_cottage_drop:
|
ned_cottage_drop:
|
||||||
ned_cottage_use:
|
ned_cottage_use:
|
||||||
|
ned_cottage_put:
|
||||||
lda CURRENT_NOUN
|
lda CURRENT_NOUN
|
||||||
|
|
||||||
cmp #NOUN_BABY
|
cmp #NOUN_BABY
|
||||||
|
@ -233,10 +278,67 @@ ned_cottage_use:
|
||||||
jmp parse_common_unknown
|
jmp parse_common_unknown
|
||||||
|
|
||||||
ned_cottage_baby:
|
ned_cottage_baby:
|
||||||
|
; see if have baby
|
||||||
|
lda INVENTORY_1
|
||||||
|
and #INV1_BABY
|
||||||
|
beq ned_cottage_baby_nobaby
|
||||||
|
|
||||||
|
; see if baby gone
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
and #INV1_BABY
|
||||||
|
bne ned_cottage_baby_gone
|
||||||
|
|
||||||
|
; check_if_rock_moved
|
||||||
|
lda GAME_STATE_2
|
||||||
|
and #COTTAGE_ROCK_MOVED
|
||||||
|
beq ned_cottage_baby_before
|
||||||
|
|
||||||
|
; see if baby was deployed
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
and #INV1_BABY
|
||||||
|
bne ned_cottage_baby_gone
|
||||||
|
|
||||||
|
ned_cottage_baby_deploy:
|
||||||
|
; actually deploy baby
|
||||||
|
|
||||||
|
ldx #<ned_cottage_deploy_baby_message
|
||||||
|
ldy #>ned_cottage_deploy_baby_message
|
||||||
|
jsr partial_message_step
|
||||||
|
|
||||||
|
; add points
|
||||||
|
lda #5
|
||||||
|
jsr score_points
|
||||||
|
|
||||||
|
; baby is gone
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
ora #INV1_BABY
|
||||||
|
sta INVENTORY_1_GONE
|
||||||
|
|
||||||
|
|
||||||
|
ldx #<ned_cottage_deploy_baby_message2
|
||||||
|
ldy #>ned_cottage_deploy_baby_message2
|
||||||
|
jsr partial_message_step
|
||||||
|
|
||||||
|
ldx #<ned_cottage_deploy_baby_message3
|
||||||
|
ldy #>ned_cottage_deploy_baby_message3
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
|
ned_cottage_baby_before: ; before rock
|
||||||
ldx #<ned_cottage_baby_before_message
|
ldx #<ned_cottage_baby_before_message
|
||||||
ldy #>ned_cottage_baby_before_message
|
ldy #>ned_cottage_baby_before_message
|
||||||
jmp finish_parse_message
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
ned_cottage_baby_nobaby:
|
||||||
|
ldx #<ned_cottage_baby_nobaby_message
|
||||||
|
ldy #>ned_cottage_baby_nobaby_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
ned_cottage_baby_gone:
|
||||||
|
ldx #<ned_cottage_baby_gone_message
|
||||||
|
ldy #>ned_cottage_baby_gone_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
;===================
|
;===================
|
||||||
; break/kick/punch
|
; break/kick/punch
|
||||||
|
@ -340,10 +442,22 @@ ned_cottage_look_at_rock:
|
||||||
jmp finish_parse_message
|
jmp finish_parse_message
|
||||||
|
|
||||||
ned_cottage_look_at_hole:
|
ned_cottage_look_at_hole:
|
||||||
|
|
||||||
|
; see if baby was deployed
|
||||||
|
lda INVENTORY_1_GONE
|
||||||
|
and #INV1_BABY
|
||||||
|
bne ned_cottage_look_at_hole_after
|
||||||
|
|
||||||
|
ned_cottage_look_at_hole_before:
|
||||||
ldx #<ned_cottage_look_hole_message
|
ldx #<ned_cottage_look_hole_message
|
||||||
ldy #>ned_cottage_look_hole_message
|
ldy #>ned_cottage_look_hole_message
|
||||||
jmp finish_parse_message
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
ned_cottage_look_at_hole_after:
|
||||||
|
ldx #<ned_cottage_look_hole_after_message
|
||||||
|
ldy #>ned_cottage_look_hole_after_message
|
||||||
|
jmp finish_parse_message
|
||||||
|
|
||||||
|
|
||||||
;=======================
|
;=======================
|
||||||
;=======================
|
;=======================
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
.byte $20 ; SCORE_TENSONES= $9F
|
.byte $20 ; SCORE_TENSONES= $9F
|
||||||
.byte INV1_ARROW | INV1_BABY | INV1_KERREK_BELT | INV1_CHICKEN_FEED | INV1_BOW | INV1_MONSTER_MASK | INV1_PEBBLES | INV1_PILLS
|
.byte INV1_ARROW | INV1_BABY | INV1_KERREK_BELT | INV1_CHICKEN_FEED | INV1_BOW | INV1_MONSTER_MASK | INV1_PEBBLES | INV1_PILLS
|
||||||
; INVENTORY_1 = $A0
|
; INVENTORY_1 = $A0
|
||||||
.byte INV2_RICHES|INV2_MEATBALL_SUB | INV2_TRINKET
|
.byte INV2_RICHES| INV2_SODA | INV2_MEATBALL_SUB | INV2_TRINKET
|
||||||
; INVENTORY_2 = $A1
|
; INVENTORY_2 = $A1
|
||||||
.byte INV3_SHIRT|INV3_MAP
|
.byte INV3_SHIRT|INV3_MAP
|
||||||
; INVENTORY_3 = $A2
|
; INVENTORY_3 = $A2
|
||||||
|
|
46
games/peasant/saves/save1_16_soda.s
Normal file
46
games/peasant/saves/save1_16_soda.s
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
; SAVE1 -- After getting the pills
|
||||||
|
|
||||||
|
.include "zp.inc"
|
||||||
|
|
||||||
|
; want to load this to address $90
|
||||||
|
|
||||||
|
;
|
||||||
|
.byte LOAD_PEASANT4 ; WHICH_LOAD = $90
|
||||||
|
.byte 10 ; PEASANT_X = $91
|
||||||
|
.byte 100 ; PEASANT_Y = $92
|
||||||
|
.byte PEASANT_DIR_UP ; PEASANT_DIR = $93
|
||||||
|
.byte 0 ; MAP_X = $94
|
||||||
|
.byte 1 ; MAP_Y = $95
|
||||||
|
.byte LOCATION_OUTSIDE_LADY ; MAP_LOCATION = $96
|
||||||
|
.byte TALKED_TO_MENDELEV | HALDO_TO_DONGOLEV | ARROW_BEATEN| GARY_SCARED | TRINKET_GIVEN | LADY_GONE
|
||||||
|
; BABY_IN_WELL | BUCKET_DOWN_WELL
|
||||||
|
; GAME_STATE_0 = $97
|
||||||
|
.byte FISH_FED | PUDDLE_WET
|
||||||
|
; RAINING
|
||||||
|
; FISH_FED | IN_HAY_BALE | NIGHT | POT_ON_HEAD | WEARING_ROBE
|
||||||
|
; GAME_STATE_1 = $98
|
||||||
|
.byte TALKED_TO_KNIGHT
|
||||||
|
; ON_FIRE | COTTAGE_ROCK_MOVED | KNUCKLES_BLEED
|
||||||
|
; DRESSER_OPEN | COVERED_IN_MUD | GOT_MUDDY_ALREADY
|
||||||
|
; GAME_STATE_2 = $99
|
||||||
|
.byte $00 ; NED_STATUS = $9A
|
||||||
|
.byte BUSH_1_SEARCHED | BUSH_2_SEARCHED | BUSH_3_SEARCHED | BUSH_4_SEARCHED
|
||||||
|
; BUSH_STATUS = $9B
|
||||||
|
.byte KERREK_ROW1 | KERREK_DECOMPOSING ; KERREK_STATE = $9C
|
||||||
|
.byte $00 ; ARROW_SCORE = $9D
|
||||||
|
.byte $00 ; SCORE_HUNDREDS= $9E
|
||||||
|
.byte $20 ; SCORE_TENSONES= $9F
|
||||||
|
.byte INV1_ARROW | INV1_BABY | INV1_KERREK_BELT | INV1_CHICKEN_FEED | INV1_BOW | INV1_MONSTER_MASK | INV1_PEBBLES | INV1_PILLS
|
||||||
|
; INVENTORY_1 = $A0
|
||||||
|
.byte INV2_RICHES| INV2_SODA | INV2_MEATBALL_SUB | INV2_TRINKET
|
||||||
|
; INVENTORY_2 = $A1
|
||||||
|
.byte INV3_SHIRT|INV3_MAP
|
||||||
|
; INVENTORY_3 = $A2
|
||||||
|
.byte INV1_ARROW| INV1_CHICKEN_FEED | INV1_PEBBLES
|
||||||
|
; INVENTORY_1_GONE = $A3
|
||||||
|
.byte INV2_RICHES | INV2_TRINKET
|
||||||
|
; INVENTORY_2_GONE_= $A4
|
||||||
|
.byte $00 ; INVENTORY_3_GONE = $A5
|
||||||
|
.byte 22 ; KERREK_X = $A6
|
||||||
|
.byte 76 ; KERREK_Y = $A7
|
||||||
|
|
|
@ -25,6 +25,7 @@ ned_cottage_open_door_message:
|
||||||
.byte "How? There's no knob.",0
|
.byte "How? There's no knob.",0
|
||||||
|
|
||||||
; + open door (after baby opens)
|
; + open door (after baby opens)
|
||||||
|
ned_cottage_open_door_after_baby_message:
|
||||||
.byte "It's already open. Since",13
|
.byte "It's already open. Since",13
|
||||||
.byte "this is an adventure game",13
|
.byte "this is an adventure game",13
|
||||||
.byte "we're gonna proffer you",13
|
.byte "we're gonna proffer you",13
|
||||||
|
@ -33,10 +34,12 @@ ned_cottage_open_door_message:
|
||||||
|
|
||||||
; + pull door
|
; + pull door
|
||||||
; + push door
|
; + push door
|
||||||
|
; same even when open
|
||||||
ned_cottage_push_door_message:
|
ned_cottage_push_door_message:
|
||||||
.byte "It doesn't budge, man.",0
|
.byte "It doesn't budge, man.",0
|
||||||
|
|
||||||
; + knock
|
; + knock
|
||||||
|
; same even when open
|
||||||
ned_cottage_knock_door_message:
|
ned_cottage_knock_door_message:
|
||||||
.byte "You could knock until your",13
|
.byte "You could knock until your",13
|
||||||
.byte "knuckles bleed. Nobody's",13
|
.byte "knuckles bleed. Nobody's",13
|
||||||
|
@ -78,6 +81,7 @@ ned_cottage_look_hole_message:
|
||||||
.byte "appears to be empty.",0
|
.byte "appears to be empty.",0
|
||||||
|
|
||||||
; + look hole (after deploying baby)
|
; + look hole (after deploying baby)
|
||||||
|
ned_cottage_look_hole_after_message:
|
||||||
.byte "There is no baby here, but",13
|
.byte "There is no baby here, but",13
|
||||||
.byte "there's an open door on the",13
|
.byte "there's an open door on the",13
|
||||||
.byte "other side of the room. If",13
|
.byte "other side of the room. If",13
|
||||||
|
@ -130,9 +134,13 @@ ned_cottage_try_message:
|
||||||
.byte "nothing.",0
|
.byte "nothing.",0
|
||||||
|
|
||||||
;+5 POINTS
|
;+5 POINTS
|
||||||
|
; + deploy baby
|
||||||
; + put baby into the hole
|
; + put baby into the hole
|
||||||
|
ned_cottage_deploy_baby_message:
|
||||||
.byte "Deploying Q-Baby...",0
|
.byte "Deploying Q-Baby...",0
|
||||||
|
|
||||||
|
; animation
|
||||||
|
ned_cottage_deploy_baby_message2:
|
||||||
.byte "Way to go, baby! It got the",13
|
.byte "Way to go, baby! It got the",13
|
||||||
.byte "cottage door opened and",13
|
.byte "cottage door opened and",13
|
||||||
.byte "headed off to a new life.",13
|
.byte "headed off to a new life.",13
|
||||||
|
@ -145,6 +153,7 @@ ned_cottage_try_message:
|
||||||
.byte "building better cottages",13
|
.byte "building better cottages",13
|
||||||
.byte "for a better tomorrow.",0
|
.byte "for a better tomorrow.",0
|
||||||
|
|
||||||
|
ned_cottage_deploy_baby_message3:
|
||||||
.byte "You grow apart and the",13
|
.byte "You grow apart and the",13
|
||||||
.byte "letters from him become",13
|
.byte "letters from him become",13
|
||||||
.byte "fewer and fewer. He",13
|
.byte "fewer and fewer. He",13
|
||||||
|
@ -153,15 +162,19 @@ ned_cottage_try_message:
|
||||||
.byte "never being there.",0
|
.byte "never being there.",0
|
||||||
|
|
||||||
; + deploy/drop/use baby (before baby)
|
; + deploy/drop/use baby (before baby)
|
||||||
ned_cottage_baby_before_message:
|
ned_cottage_baby_nobaby_message:
|
||||||
.byte "Swell idea, but is you",13
|
.byte "Swell idea, but is you",13
|
||||||
.byte "ain't my baby? I.e. you",13
|
.byte "ain't my baby? I.e. you",13
|
||||||
.byte "ain't got one?",0
|
.byte "ain't got one?",0
|
||||||
|
|
||||||
; + deploy/drop/use baby (before moving stone)
|
; + deploy/drop/use baby (before moving stone)
|
||||||
.byte "Use the baby where? You haven't anywhere inconsiderate to stuff 'm.",0
|
ned_cottage_baby_before_message:
|
||||||
|
.byte "Use the baby where? You",13
|
||||||
|
.byte "haven't anywhere",13
|
||||||
|
.byte "inconsiderate to stuff'm.",0
|
||||||
|
|
||||||
; + deploy/drop/use baby (after baby left)
|
; + deploy/drop/use baby (after baby left)
|
||||||
|
ned_cottage_baby_gone_message:
|
||||||
.byte "Li'l P.B. has moved on, and",13
|
.byte "Li'l P.B. has moved on, and",13
|
||||||
.byte "the door seems to be",13
|
.byte "the door seems to be",13
|
||||||
.byte "open... I can't see why",13
|
.byte "open... I can't see why",13
|
||||||
|
@ -169,10 +182,12 @@ ned_cottage_baby_before_message:
|
||||||
.byte "over again.",0
|
.byte "over again.",0
|
||||||
|
|
||||||
; + close door (before baby opens)
|
; + close door (before baby opens)
|
||||||
|
ned_cottage_close_door_before_message:
|
||||||
.byte "Already done. That was",13
|
.byte "Already done. That was",13
|
||||||
.byte "easy!",0
|
.byte "easy!",0
|
||||||
|
|
||||||
; + close door (after baby opens)
|
; + close door (after baby opens)
|
||||||
|
ned_cottage_close_door_after_message:
|
||||||
.byte "You can't. That baby really",13
|
.byte "You can't. That baby really",13
|
||||||
.byte "wrenched it open good.",0
|
.byte "wrenched it open good.",0
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user