mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-07 21:30:39 +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 (get riches from jhonka)
|
||||
+ 5 (throw baby)
|
||||
+ 5 (deploy baby)
|
||||
======
|
||||
91 points
|
||||
96 points
|
||||
|
||||
|
||||
deaths/endings implemented
|
||||
|
@ -858,6 +858,13 @@ lake_west_throw_baby:
|
||||
and #INV1_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
|
||||
; TODO:
|
||||
lda PEASANT_X
|
||||
|
@ -43,6 +43,10 @@ ned_cottage_verb_table:
|
||||
.word ned_cottage_use-1
|
||||
.byte VERB_TRY
|
||||
.word ned_cottage_try-1
|
||||
.byte VERB_PUT
|
||||
.word ned_cottage_put-1
|
||||
.byte VERB_CLOSE
|
||||
.word ned_cottage_close-1
|
||||
.byte 0
|
||||
|
||||
;================
|
||||
@ -62,6 +66,35 @@ ned_cottage_climb_fence:
|
||||
ldy #>ned_cottage_climb_fence_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
|
||||
;================
|
||||
@ -117,10 +150,21 @@ ned_cottage_open:
|
||||
jmp parse_common_unknown
|
||||
|
||||
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
|
||||
ldy #>ned_cottage_open_door_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
|
||||
;================
|
||||
@ -225,6 +269,7 @@ ned_cottage_rock_moved:
|
||||
ned_cottage_deploy:
|
||||
ned_cottage_drop:
|
||||
ned_cottage_use:
|
||||
ned_cottage_put:
|
||||
lda CURRENT_NOUN
|
||||
|
||||
cmp #NOUN_BABY
|
||||
@ -233,10 +278,67 @@ ned_cottage_use:
|
||||
jmp parse_common_unknown
|
||||
|
||||
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
|
||||
ldy #>ned_cottage_baby_before_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
|
||||
@ -340,10 +442,22 @@ ned_cottage_look_at_rock:
|
||||
jmp finish_parse_message
|
||||
|
||||
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
|
||||
ldy #>ned_cottage_look_hole_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 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_MEATBALL_SUB | INV2_TRINKET
|
||||
.byte INV2_RICHES| INV2_SODA | INV2_MEATBALL_SUB | INV2_TRINKET
|
||||
; INVENTORY_2 = $A1
|
||||
.byte INV3_SHIRT|INV3_MAP
|
||||
; 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
|
||||
|
||||
; + open door (after baby opens)
|
||||
ned_cottage_open_door_after_baby_message:
|
||||
.byte "It's already open. Since",13
|
||||
.byte "this is an adventure game",13
|
||||
.byte "we're gonna proffer you",13
|
||||
@ -33,10 +34,12 @@ ned_cottage_open_door_message:
|
||||
|
||||
; + pull door
|
||||
; + push door
|
||||
; same even when open
|
||||
ned_cottage_push_door_message:
|
||||
.byte "It doesn't budge, man.",0
|
||||
|
||||
; + knock
|
||||
; same even when open
|
||||
ned_cottage_knock_door_message:
|
||||
.byte "You could knock until your",13
|
||||
.byte "knuckles bleed. Nobody's",13
|
||||
@ -78,6 +81,7 @@ ned_cottage_look_hole_message:
|
||||
.byte "appears to be empty.",0
|
||||
|
||||
; + look hole (after deploying baby)
|
||||
ned_cottage_look_hole_after_message:
|
||||
.byte "There is no baby here, but",13
|
||||
.byte "there's an open door on the",13
|
||||
.byte "other side of the room. If",13
|
||||
@ -130,9 +134,13 @@ ned_cottage_try_message:
|
||||
.byte "nothing.",0
|
||||
|
||||
;+5 POINTS
|
||||
; + deploy baby
|
||||
; + put baby into the hole
|
||||
ned_cottage_deploy_baby_message:
|
||||
.byte "Deploying Q-Baby...",0
|
||||
|
||||
; animation
|
||||
ned_cottage_deploy_baby_message2:
|
||||
.byte "Way to go, baby! It got the",13
|
||||
.byte "cottage door opened and",13
|
||||
.byte "headed off to a new life.",13
|
||||
@ -145,6 +153,7 @@ ned_cottage_try_message:
|
||||
.byte "building better cottages",13
|
||||
.byte "for a better tomorrow.",0
|
||||
|
||||
ned_cottage_deploy_baby_message3:
|
||||
.byte "You grow apart and the",13
|
||||
.byte "letters from him become",13
|
||||
.byte "fewer and fewer. He",13
|
||||
@ -153,15 +162,19 @@ ned_cottage_try_message:
|
||||
.byte "never being there.",0
|
||||
|
||||
; + deploy/drop/use baby (before baby)
|
||||
ned_cottage_baby_before_message:
|
||||
ned_cottage_baby_nobaby_message:
|
||||
.byte "Swell idea, but is you",13
|
||||
.byte "ain't my baby? I.e. you",13
|
||||
.byte "ain't got one?",0
|
||||
|
||||
; + 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)
|
||||
ned_cottage_baby_gone_message:
|
||||
.byte "Li'l P.B. has moved on, and",13
|
||||
.byte "the door seems to be",13
|
||||
.byte "open... I can't see why",13
|
||||
@ -169,10 +182,12 @@ ned_cottage_baby_before_message:
|
||||
.byte "over again.",0
|
||||
|
||||
; + close door (before baby opens)
|
||||
ned_cottage_close_door_before_message:
|
||||
.byte "Already done. That was",13
|
||||
.byte "easy!",0
|
||||
|
||||
; + close door (after baby opens)
|
||||
ned_cottage_close_door_after_message:
|
||||
.byte "You can't. That baby really",13
|
||||
.byte "wrenched it open good.",0
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user