Address GitLab issue #56: handling of "fee fie foe foo" and "fum"
Also add a regression test for this.
This commit is contained in:
parent
a2116b3d79
commit
db384731a7
3 changed files with 2150 additions and 0 deletions
|
@ -206,6 +206,8 @@ static phase_codes_t bigwords(vocab_t id)
|
||||||
(TOTING(EGGS) && game.loc == objects[EGGS].plac)) {
|
(TOTING(EGGS) && game.loc == objects[EGGS].plac)) {
|
||||||
rspeak(NOTHING_HAPPENS);
|
rspeak(NOTHING_HAPPENS);
|
||||||
return GO_CLEAROBJ;
|
return GO_CLEAROBJ;
|
||||||
|
} else if (id == FUM) {
|
||||||
|
goto fum;
|
||||||
} else {
|
} else {
|
||||||
/* Bring back troll if we steal the eggs back from him before
|
/* Bring back troll if we steal the eggs back from him before
|
||||||
* crossing. */
|
* crossing. */
|
||||||
|
@ -222,6 +224,7 @@ static phase_codes_t bigwords(vocab_t id)
|
||||||
return GO_CLEAROBJ;
|
return GO_CLEAROBJ;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
fum:
|
||||||
if (game.loc == LOC_GIANTROOM) {
|
if (game.loc == LOC_GIANTROOM) {
|
||||||
rspeak(START_OVER);
|
rspeak(START_OVER);
|
||||||
} else {
|
} else {
|
||||||
|
|
1837
tests/foofum.chk
Normal file
1837
tests/foofum.chk
Normal file
File diff suppressed because it is too large
Load diff
310
tests/foofum.log
Normal file
310
tests/foofum.log
Normal file
|
@ -0,0 +1,310 @@
|
||||||
|
## Test processing of fee fie foe fum
|
||||||
|
n
|
||||||
|
seed 1838473132
|
||||||
|
in
|
||||||
|
take lamp
|
||||||
|
xyzzy
|
||||||
|
on
|
||||||
|
take rod
|
||||||
|
e
|
||||||
|
take cage
|
||||||
|
w
|
||||||
|
w
|
||||||
|
w
|
||||||
|
drop rod
|
||||||
|
take bird
|
||||||
|
take rod
|
||||||
|
w
|
||||||
|
free bird
|
||||||
|
wave rod
|
||||||
|
take necklace
|
||||||
|
drop rod
|
||||||
|
take bird
|
||||||
|
take rod
|
||||||
|
d
|
||||||
|
d
|
||||||
|
free bird
|
||||||
|
drop rod
|
||||||
|
drop cage
|
||||||
|
take cage
|
||||||
|
take bird
|
||||||
|
w
|
||||||
|
take coins
|
||||||
|
e
|
||||||
|
s
|
||||||
|
take jewelry
|
||||||
|
n
|
||||||
|
up
|
||||||
|
s
|
||||||
|
take gold
|
||||||
|
n
|
||||||
|
d
|
||||||
|
n
|
||||||
|
n
|
||||||
|
plugh
|
||||||
|
extinguish lamp
|
||||||
|
drop coins
|
||||||
|
drop jewelry
|
||||||
|
drop necklace
|
||||||
|
drop gold
|
||||||
|
plugh
|
||||||
|
on
|
||||||
|
s
|
||||||
|
take silver
|
||||||
|
s
|
||||||
|
sw
|
||||||
|
take axe
|
||||||
|
w
|
||||||
|
kill dragon
|
||||||
|
yes
|
||||||
|
drink blood
|
||||||
|
take rug
|
||||||
|
e
|
||||||
|
e
|
||||||
|
up
|
||||||
|
d
|
||||||
|
n
|
||||||
|
n
|
||||||
|
off
|
||||||
|
plugh
|
||||||
|
inven
|
||||||
|
drop rug
|
||||||
|
drop silver
|
||||||
|
out
|
||||||
|
s
|
||||||
|
w
|
||||||
|
n
|
||||||
|
take appendage
|
||||||
|
free bird
|
||||||
|
drop cage
|
||||||
|
listen
|
||||||
|
s
|
||||||
|
s
|
||||||
|
n
|
||||||
|
in
|
||||||
|
take water
|
||||||
|
plugh
|
||||||
|
on
|
||||||
|
plover
|
||||||
|
ne
|
||||||
|
take pyramid
|
||||||
|
s
|
||||||
|
plover
|
||||||
|
s
|
||||||
|
s
|
||||||
|
take rod
|
||||||
|
up
|
||||||
|
w
|
||||||
|
wave rod
|
||||||
|
drop rod
|
||||||
|
west
|
||||||
|
take diamonds
|
||||||
|
w
|
||||||
|
w
|
||||||
|
w
|
||||||
|
s
|
||||||
|
sw
|
||||||
|
se
|
||||||
|
s
|
||||||
|
kill machine
|
||||||
|
s
|
||||||
|
s
|
||||||
|
kill ogre
|
||||||
|
n
|
||||||
|
take ruby
|
||||||
|
s
|
||||||
|
w
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nw
|
||||||
|
d
|
||||||
|
e
|
||||||
|
e
|
||||||
|
e
|
||||||
|
e
|
||||||
|
e
|
||||||
|
throw axe
|
||||||
|
take axe
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
off
|
||||||
|
plugh
|
||||||
|
drop ruby
|
||||||
|
drop diamonds
|
||||||
|
drop pyramid
|
||||||
|
plugh
|
||||||
|
on
|
||||||
|
s
|
||||||
|
s
|
||||||
|
u
|
||||||
|
n
|
||||||
|
n
|
||||||
|
d
|
||||||
|
bedquilt
|
||||||
|
throw axe
|
||||||
|
take axe
|
||||||
|
slab
|
||||||
|
s
|
||||||
|
d
|
||||||
|
water plant
|
||||||
|
u
|
||||||
|
w
|
||||||
|
u
|
||||||
|
reservoir
|
||||||
|
H'CFL
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nw
|
||||||
|
u
|
||||||
|
u
|
||||||
|
u
|
||||||
|
u
|
||||||
|
ne
|
||||||
|
take ebony
|
||||||
|
sw
|
||||||
|
d
|
||||||
|
d
|
||||||
|
d
|
||||||
|
d
|
||||||
|
d
|
||||||
|
take water
|
||||||
|
s
|
||||||
|
s
|
||||||
|
s
|
||||||
|
s
|
||||||
|
d
|
||||||
|
s
|
||||||
|
d
|
||||||
|
water plant
|
||||||
|
u
|
||||||
|
drop appendage
|
||||||
|
e
|
||||||
|
d
|
||||||
|
get oil
|
||||||
|
|
||||||
|
u
|
||||||
|
w
|
||||||
|
d
|
||||||
|
climb
|
||||||
|
w
|
||||||
|
n
|
||||||
|
oil door
|
||||||
|
drop bottle
|
||||||
|
n
|
||||||
|
take trident
|
||||||
|
w
|
||||||
|
d
|
||||||
|
se
|
||||||
|
n
|
||||||
|
w
|
||||||
|
drop trident
|
||||||
|
drop ebony
|
||||||
|
drop axe
|
||||||
|
drop lantern
|
||||||
|
e
|
||||||
|
take emerald
|
||||||
|
w
|
||||||
|
take lamp
|
||||||
|
take axe
|
||||||
|
take ebony
|
||||||
|
take trident
|
||||||
|
nw
|
||||||
|
s
|
||||||
|
take vase
|
||||||
|
se
|
||||||
|
throw axe
|
||||||
|
take axe
|
||||||
|
e
|
||||||
|
take pillow
|
||||||
|
w
|
||||||
|
drop axe
|
||||||
|
ne
|
||||||
|
e
|
||||||
|
n
|
||||||
|
open clam
|
||||||
|
s
|
||||||
|
u
|
||||||
|
e
|
||||||
|
u
|
||||||
|
n
|
||||||
|
off
|
||||||
|
plugh
|
||||||
|
drop pillow
|
||||||
|
drop vase
|
||||||
|
drop trident
|
||||||
|
drop emerald
|
||||||
|
drop ebony
|
||||||
|
take keys
|
||||||
|
take food
|
||||||
|
plugh
|
||||||
|
on
|
||||||
|
s
|
||||||
|
d
|
||||||
|
w
|
||||||
|
d
|
||||||
|
n
|
||||||
|
d
|
||||||
|
d
|
||||||
|
take pearl
|
||||||
|
u
|
||||||
|
u
|
||||||
|
s
|
||||||
|
w
|
||||||
|
w
|
||||||
|
w
|
||||||
|
w
|
||||||
|
d
|
||||||
|
climb
|
||||||
|
w
|
||||||
|
get eggs
|
||||||
|
n
|
||||||
|
take bottle
|
||||||
|
n
|
||||||
|
w
|
||||||
|
d
|
||||||
|
sw
|
||||||
|
u
|
||||||
|
toss eggs
|
||||||
|
ne
|
||||||
|
ne
|
||||||
|
barren
|
||||||
|
in
|
||||||
|
feed bear
|
||||||
|
unlock chain
|
||||||
|
take chain
|
||||||
|
take bear
|
||||||
|
fork
|
||||||
|
ne
|
||||||
|
e
|
||||||
|
take spices
|
||||||
|
drop keys
|
||||||
|
fork
|
||||||
|
w
|
||||||
|
w
|
||||||
|
sw
|
||||||
|
free bear
|
||||||
|
inven
|
||||||
|
sw
|
||||||
|
sw
|
||||||
|
d
|
||||||
|
se
|
||||||
|
se
|
||||||
|
w
|
||||||
|
d
|
||||||
|
get oil
|
||||||
|
up
|
||||||
|
e
|
||||||
|
take axe
|
||||||
|
w
|
||||||
|
w
|
||||||
|
d
|
||||||
|
climb
|
||||||
|
w
|
||||||
|
fee
|
||||||
|
fie
|
||||||
|
foe
|
||||||
|
fum
|
||||||
|
quit
|
||||||
|
yes
|
Loading…
Add table
Add a link
Reference in a new issue