X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=blobdiff_plain;f=adventure.yaml;h=4338eb33fb20742bfc0899357fe8ef8ee7d9d4b7;hp=c35d471a96e3eaec776b7a1d107f93222540ee44;hb=7be7ac9406512644886fbf4a99d16e1b4f7cefc3;hpb=bf209577a5ec651f24f023cf126340152b65228e diff --git a/adventure.yaml b/adventure.yaml index c35d471..4338eb3 100644 --- a/adventure.yaml +++ b/adventure.yaml @@ -83,21 +83,21 @@ # # objects: Objects have attributes as follows... # inventory: A description for use in the inventory command. +# states: A list of state labels for states from 0 up. Each +# becomes a #define, and is also a state label that +# can be used in travel-rule 'not' clauses. # descriptions: Messages describing the object in different states. -# If a state message is a tuple then the first element -# is made the name of a #define visible to the code for -# the associated state, numbered from zero upwards; it -# is also a state label that can be used in travel-rule -# 'not' clauses. -# changes: State-change messages to be emitted whenever the obect +# Must correspond 1:1 with state labels if the latter exist. +# changes: State-change messages to be emitted whenever the object # *changes* to the (0-origin) state that is the index of the -# message in this array. -# words: The vocabulary word(s) referring to this object. -# treasure: A boolean "treasure" used for point-scoring and pirate +# message in this array. Must correspond 1:1 with state +# labels if the latter exist. +# words: The vocabulary word(s) referring to this object. +# treasure: A boolean "treasure" used for point-scoring and pirate # snatches, defaulting to false. -# immovable: An object may also be flagged +# immovable: An object may also be flagged # immovable, meaning it cannot be carried. -# locations: An object may have one or two start locations (the gate +# locations: An object may have one or two start locations (the gate # is an example of a two-location object; it can be accessed # from above or below). # @@ -108,18 +108,9 @@ # Message strings may include certain special character sequences to # denote that the program must provide parameters to insert into a # message when the message is printed. These sequences are: -# %S = The letter 'S' or nothing (if a given value is exactly 1) -# %W = A word (up to 10 characters) -# %L = A word mapped to lower-case letters -# %U = A word mapped to upper-case letters -# %C = A word mapped to lower-case, first letter capitalised -# %T = Several words of text, ending with a word of -1 -# %1 = A 1-digit number -# %2 = A 2-digit number -# ... -# %9 = A 9-digit number -# %B = Variable number of blanks -# %! = The entire message should be suppressed +# %d = an integer +# %s = an ASCII string +# %S = The letter 's' or nothing (if a previous %d value is exactly 1) # %V = substitute program version string motions: !!omap @@ -503,7 +494,7 @@ locations: !!omap travel: [ {verbs: [ROAD, WEST, UPWAR], action: [goto, LOC_HILL]}, {verbs: [ENTER, BUILD, INWAR, EAST], action: [goto, LOC_BUILDING]}, - {verbs: [DOWNS, GULLY, STREA, SOUTH, D], action: [goto, LOC_VALLEY]}, + {verbs: [DOWNS, GULLY, STREA, SOUTH, DOWN], action: [goto, LOC_VALLEY]}, {verbs: [FORES, NORTH], action: [goto, LOC_FOREST1]}, {verbs: [DEPRE], action: [goto, LOC_GRATE]}, ] @@ -519,7 +510,7 @@ locations: !!omap {verbs: [WEST], action: [goto, LOC_ROADEND]}, {verbs: [NORTH], action: [goto, LOC_FOREST20]}, {verbs: [SOUTH, FORES], action: [goto, LOC_FOREST13]}, - {verbs: [D], action: [speak, WHICH_WAY]}, + {verbs: [DOWN], action: [speak, WHICH_WAY]}, ] - LOC_BUILDING: description: @@ -545,7 +536,7 @@ locations: !!omap {verbs: [UPSTR, BUILD, NORTH], action: [goto, LOC_START]}, {verbs: [EAST, FORES], action: [goto, LOC_FOREST6]}, {verbs: [WEST], action: [goto, LOC_FOREST12]}, - {verbs: [DOWNS, SOUTH, D], action: [goto, LOC_SLIT]}, + {verbs: [DOWNS, SOUTH, DOWN], action: [goto, LOC_SLIT]}, {verbs: [DEPRE], action: [goto, LOC_GRATE]}, {verbs: [STREA], action: [speak, UPSTREAM_DOWNSTREAM]}, ] @@ -588,7 +579,7 @@ locations: !!omap {verbs: [EAST, FORES], action: [goto, LOC_FOREST6]}, {verbs: [WEST], action: [goto, LOC_FOREST10]}, {verbs: [DOWNS, BED, SOUTH, DEPRE], action: [goto, LOC_GRATE]}, - {verbs: [SLIT, STREA, D, INWAR, ENTER], action: [speak, DONT_FIT]}, + {verbs: [SLIT, STREA, DOWN, INWAR, ENTER], action: [speak, DONT_FIT]}, ] - LOC_GRATE: description: @@ -605,7 +596,7 @@ locations: !!omap {verbs: [WEST], action: [goto, LOC_FOREST9]}, {verbs: [BUILD], action: [goto, LOC_START]}, {verbs: [UPSTR, GULLY, NORTH], action: [goto, LOC_SLIT]}, - {verbs: [ENTER, INWAR, D], + {verbs: [ENTER, INWAR, DOWN], cond: [not, GRATE, GRATE_CLOSED], action: [goto, LOC_BELOWGRATE]}, {verbs: [ENTER], action: [speak, GRATE_NOWAY]}, @@ -618,7 +609,8 @@ locations: !!omap short: 'You''re below the grate.' conditions: {LIT: true} travel: [ - {verbs: [OUT, UPWAR], cond: [not, GRATE, GRATE_CLOSED], action: [goto, LOC_GRATE]}, + {verbs: [OUT, UPWAR], cond: [not, GRATE, GRATE_CLOSED], + action: [goto, LOC_GRATE]}, {verbs: [OUT], action: [speak, GRATE_NOWAY]}, {verbs: [CRAWL, COBBL, INWAR, WEST], action: [goto, LOC_COBBLE]}, {verbs: [PIT], action: [goto, LOC_PITTOP]}, @@ -646,10 +638,10 @@ locations: !!omap short: 'You''re in debris room.' conditions: {} travel: [ - {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], action: [goto, LOC_GRATE]}, + {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], + action: [goto, LOC_GRATE]}, {verbs: [ENTRA], action: [goto, LOC_BELOWGRATE]}, - {verbs: [CRAWL, COBBL, PASSA, LOW, EAST], - action: [goto, LOC_COBBLE]}, + {verbs: [CRAWL, COBBL, PASSA, LOW, EAST], action: [goto, LOC_COBBLE]}, {verbs: [CANYO, INWAR, UPWAR, WEST], action: [goto, LOC_AWKWARD]}, {verbs: [XYZZY], action: [goto, LOC_FOOF2]}, {verbs: [PIT], action: [goto, LOC_PITTOP]}, @@ -660,9 +652,10 @@ locations: !!omap short: !!null conditions: {} travel: [ - {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], action: [goto, LOC_GRATE]}, + {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], + action: [goto, LOC_GRATE]}, {verbs: [ENTRA], action: [goto, LOC_BELOWGRATE]}, - {verbs: [D, EAST, DEBRI], action: [goto, LOC_DEBRIS]}, + {verbs: [DOWN, EAST, DEBRI], action: [goto, LOC_DEBRIS]}, {verbs: [INWAR, UPWAR, WEST], action: [goto, LOC_BIRD]}, {verbs: [PIT], action: [goto, LOC_PITTOP]}, ] @@ -676,7 +669,8 @@ locations: !!omap conditions: {} hints: [*bird] travel: [ - {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], action: [goto, LOC_GRATE]}, + {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], + action: [goto, LOC_GRATE]}, {verbs: [ENTRA], action: [goto, LOC_BELOWGRATE]}, {verbs: [DEBRI], action: [goto, LOC_DEBRIS]}, {verbs: [CANYO, EAST], action: [goto, LOC_AWKWARD]}, @@ -690,13 +684,14 @@ locations: !!omap short: 'You''re at top of small pit.' conditions: {} travel: [ - {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], action: [goto, LOC_GRATE]}, + {verbs: [DEPRE], cond: [not, GRATE, GRATE_CLOSED], + action: [goto, LOC_GRATE]}, {verbs: [ENTRA], action: [goto, LOC_BELOWGRATE]}, {verbs: [DEBRI], action: [goto, LOC_DEBRIS]}, {verbs: [PASSA, EAST], action: [goto, LOC_BIRD]}, - {verbs: [D, PIT, STEPS], cond: [carry, NUGGET], + {verbs: [DOWN, PIT, STEPS], cond: [carry, NUGGET], action: [goto, LOC_NECKBROKE]}, - {verbs: [D], action: [goto, LOC_MISTHALL]}, + {verbs: [DOWN], action: [goto, LOC_MISTHALL]}, {verbs: [CRACK, WEST], action: [goto, LOC_CRACK]}, ] - LOC_MISTHALL: @@ -714,7 +709,7 @@ locations: !!omap travel: [ {verbs: [LEFT, SOUTH], action: [goto, LOC_NUGGET]}, {verbs: [FORWA, HALL, WEST], action: [goto, LOC_EASTBANK]}, - {verbs: [STAIR, D, NORTH], action: [goto, LOC_KINGHALL]}, + {verbs: [STAIR, DOWN, NORTH], action: [goto, LOC_KINGHALL]}, {verbs: [UPWAR, PIT, STEPS, DOME, PASSA, EAST], cond: [carry, NUGGET], action: [goto, LOC_DOME]}, {verbs: [UPWAR], action: [goto, LOC_PITTOP]}, @@ -813,7 +808,7 @@ locations: !!omap travel: [ {verbs: [EAST, ACROS], action: [goto, LOC_EASTEND]}, {verbs: [WEST, SLAB], action: [goto, LOC_SLAB]}, - {verbs: [D, PIT], action: [goto, LOC_WESTPIT]}, + {verbs: [DOWN, PIT], action: [goto, LOC_WESTPIT]}, {verbs: [HOLE], action: [speak, TOO_FAR]}, ] - LOC_EASTPIT: @@ -835,7 +830,8 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [UPWAR, OUT], action: [goto, LOC_WESTEND]}, - {verbs: [CLIMB], cond: [not, PLANT, 2], action: [goto, LOC_BUILDING1]}, + {verbs: [CLIMB], cond: [not, PLANT, PLANT_GROWN], + action: [goto, LOC_BUILDING1]}, {verbs: [CLIMB], action: [goto, LOC_CLIMBSTALK]}, ] - LOC_CLIMBSTALK: @@ -873,7 +869,7 @@ locations: !!omap travel: [ {verbs: [HALL, OUT, SOUTH], action: [goto, LOC_KINGHALL]}, {verbs: [NORTH, Y2], action: [goto, LOC_Y2]}, - {verbs: [D, HOLE], action: [goto, LOC_BROKEN]}, + {verbs: [DOWN, HOLE], action: [goto, LOC_BROKEN]}, ] - LOC_SOUTHSIDE: description: @@ -900,7 +896,8 @@ locations: !!omap short: !!null conditions: {DEEP: true} travel: [ - {verbs: [], cond: [not, PLANT, 1], action: [goto, LOC_NOCLIMB]}, + {verbs: [], cond: [not, PLANT, PLANT_BELLOWING], + action: [goto, LOC_NOCLIMB]}, {verbs: [], action: [goto, LOC_PLANTTOP]}, ] - LOC_SNAKEBLOCK: @@ -933,7 +930,7 @@ locations: !!omap short: !!null conditions: {DEEP: true} travel: [ - {verbs: [D, Y2], action: [goto, LOC_Y2]}, + {verbs: [DOWN, Y2], action: [goto, LOC_Y2]}, {verbs: [UPWAR], action: [goto, LOC_MISTHALL]}, ] - LOC_WINDOW1: @@ -974,7 +971,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [WEST, CRAWL], action: [goto, LOC_BROKEN]}, - {verbs: [D, PIT, CLIMB], action: [goto, LOC_SMALLPIT]}, + {verbs: [DOWN, PIT, CLIMB], action: [goto, LOC_SMALLPIT]}, ] - LOC_SMALLPIT: description: @@ -986,7 +983,7 @@ locations: !!omap sound: STREAM_GURGLES travel: [ {verbs: [CLIMB, UPWAR, OUT], action: [goto, LOC_SMALLPITBRINK]}, - {verbs: [SLIT, STREA, D, UPSTR, DOWNS, ENTER, INWAR], + {verbs: [SLIT, STREA, DOWN, UPSTR, DOWNS, ENTER, INWAR], action: [speak, DONT_FIT]}, ] - LOC_DUSTY: @@ -998,7 +995,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [EAST, PASSA], action: [goto, LOC_BROKEN]}, - {verbs: [D, HOLE, FLOOR], action: [goto, LOC_COMPLEX]}, + {verbs: [DOWN, HOLE, FLOOR], action: [goto, LOC_COMPLEX]}, {verbs: [BEDQU], action: [goto, LOC_BEDQUILT]}, ] - LOC_PARALLEL1: @@ -1057,7 +1054,7 @@ locations: !!omap hints: [*maze] travel: [ {verbs: [EAST], action: [goto, LOC_ALIKE2]}, - {verbs: [D], action: [goto, LOC_DEADEND3]}, + {verbs: [DOWN], action: [goto, LOC_DEADEND3]}, {verbs: [SOUTH], action: [goto, LOC_ALIKE6]}, {verbs: [NORTH], action: [goto, LOC_DEADEND9]}, ] @@ -1072,7 +1069,7 @@ locations: !!omap {verbs: [NORTH], action: [goto, LOC_ALIKE2]}, {verbs: [EAST], action: [goto, LOC_DEADEND1]}, {verbs: [SOUTH], action: [goto, LOC_DEADEND2]}, - {verbs: [UPWAR, D], action: [goto, LOC_ALIKE14]}, + {verbs: [UPWAR, DOWN], action: [goto, LOC_ALIKE14]}, ] - LOC_DEADEND1: description: @@ -1120,7 +1117,7 @@ locations: !!omap travel: [ {verbs: [EAST], action: [goto, LOC_ALIKE3]}, {verbs: [WEST], action: [goto, LOC_ALIKE5]}, - {verbs: [D], action: [goto, LOC_ALIKE7]}, + {verbs: [DOWN], action: [goto, LOC_ALIKE7]}, {verbs: [SOUTH], action: [goto, LOC_ALIKE8]}, ] - LOC_ALIKE7: @@ -1147,7 +1144,7 @@ locations: !!omap {verbs: [SOUTH], action: [goto, LOC_ALIKE8]}, {verbs: [UPWAR], action: [goto, LOC_ALIKE9]}, {verbs: [NORTH], action: [goto, LOC_ALIKE10]}, - {verbs: [D], action: [goto, LOC_DEADEND11]}, + {verbs: [DOWN], action: [goto, LOC_DEADEND11]}, ] - LOC_ALIKE9: description: @@ -1178,7 +1175,7 @@ locations: !!omap travel: [ {verbs: [WEST], action: [goto, LOC_ALIKE8]}, {verbs: [NORTH], action: [goto, LOC_ALIKE10]}, - {verbs: [D], action: [goto, LOC_DEADEND5]}, + {verbs: [DOWN], action: [goto, LOC_DEADEND5]}, {verbs: [EAST], action: [goto, LOC_PITBRINK]}, ] - LOC_DEADEND5: @@ -1199,7 +1196,7 @@ locations: !!omap short: 'You''re at brink of pit.' conditions: {DEEP: true, NOBACK: true} travel: [ - {verbs: [D, CLIMB], action: [goto, LOC_BIRD]}, + {verbs: [DOWN, CLIMB], action: [goto, LOC_BIRD]}, {verbs: [WEST], action: [goto, LOC_ALIKE10]}, {verbs: [SOUTH], action: [goto, LOC_DEADEND6]}, {verbs: [NORTH], action: [goto, LOC_ALIKE12]}, @@ -1234,7 +1231,7 @@ locations: !!omap travel: [ {verbs: [EAST, UPWAR, CRAWL], action: [goto, LOC_MISTWEST]}, {verbs: [WEST], action: [goto, LOC_LONGWEST]}, - {verbs: [NORTH, D, HOLE], action: [goto, LOC_CROSSOVER]}, + {verbs: [NORTH, DOWN, HOLE], action: [goto, LOC_CROSSOVER]}, ] - LOC_LONGWEST: description: @@ -1301,8 +1298,8 @@ locations: !!omap {verbs: [NORTH], cond: [pct, 50], action: [speak, FUTILE_CRAWL]}, {verbs: [NORTH], cond: [pct, 75], action: [goto, LOC_LOWROOM]}, {verbs: [NORTH], action: [goto, LOC_THREEJUNCTION]}, - {verbs: [D], cond: [pct, 65], action: [speak, FUTILE_CRAWL]}, - {verbs: [D], action: [goto, LOC_ANTEROOM]}, + {verbs: [DOWN], cond: [pct, 65], action: [speak, FUTILE_CRAWL]}, + {verbs: [DOWN], action: [goto, LOC_ANTEROOM]}, ] - LOC_SWISSCHEESE: description: @@ -1334,7 +1331,7 @@ locations: !!omap travel: [ {verbs: [EAST], action: [goto, LOC_SWISSCHEESE]}, {verbs: [WEST, ACROS], action: [goto, LOC_WESTEND]}, - {verbs: [D, PIT], action: [goto, LOC_EASTPIT]}, + {verbs: [DOWN, PIT], action: [goto, LOC_EASTPIT]}, ] - LOC_SLAB: description: @@ -1357,7 +1354,7 @@ locations: !!omap short: !!null conditions: {DEEP: true} travel: [ - {verbs: [D, SLAB], action: [goto, LOC_SLAB]}, + {verbs: [DOWN, SLAB], action: [goto, LOC_SLAB]}, {verbs: [SOUTH], cond: [not, DRAGON, DRAGON_BARS], action: [goto, LOC_SECRET5]}, {verbs: [SOUTH], action: [goto, LOC_SECRET4]}, @@ -1371,7 +1368,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [NORTH], action: [goto, LOC_THREEJUNCTION]}, - {verbs: [D, PASSA], action: [goto, LOC_BEDQUILT]}, + {verbs: [DOWN, PASSA], action: [goto, LOC_BEDQUILT]}, {verbs: [SOUTH], action: [goto, LOC_TOPSTALACTITE]}, ] - LOC_THREEJUNCTION: @@ -1418,7 +1415,7 @@ locations: !!omap {verbs: [EAST], action: [goto, LOC_KINGHALL]}, {verbs: [WEST], cond: [not, DRAGON, DRAGON_BARS], action: [goto, LOC_SECRET5]}, {verbs: [WEST], action: [goto, LOC_SECRET6]}, - {verbs: [D], action: [goto, LOC_WIDEPLACE]}, + {verbs: [DOWN], action: [goto, LOC_WIDEPLACE]}, ] - LOC_WIDEPLACE: description: @@ -1541,7 +1538,7 @@ locations: !!omap conditions: {DEEP: true, NOBACK: true} hints: [*maze] travel: [ - {verbs: [UPWAR, D], action: [goto, LOC_ALIKE4]}, + {verbs: [UPWAR, DOWN], action: [goto, LOC_ALIKE4]}, ] - LOC_NARROW: description: @@ -1552,7 +1549,7 @@ locations: !!omap short: 'You''re in narrow corridor.' conditions: {DEEP: true} travel: [ - {verbs: [D, CLIMB, EAST], action: [goto, LOC_WESTPIT]}, + {verbs: [DOWN, CLIMB, EAST], action: [goto, LOC_WESTPIT]}, {verbs: [JUMP], action: [goto, LOC_NECKBROKE]}, {verbs: [WEST, GIANT], action: [goto, LOC_GIANTROOM]}, ] @@ -1582,7 +1579,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [NORTH, CAVER, PASSA], action: [goto, LOC_WATERFALL]}, - {verbs: [D, CLIMB], action: [goto, LOC_LOWROOM]}, + {verbs: [DOWN, CLIMB], action: [goto, LOC_LOWROOM]}, ] - LOC_GIANTROOM: description: @@ -1714,7 +1711,7 @@ locations: !!omap short: 'You''re in arched hall.' conditions: {DEEP: true} travel: [ - {verbs: [D, SHELL, OUT], action: [goto, LOC_SHELLROOM]}, + {verbs: [DOWN, SHELL, OUT], action: [goto, LOC_SHELLROOM]}, ] - LOC_SHELLROOM: description: @@ -1727,7 +1724,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [UPWAR, HALL], action: [goto, LOC_ARCHED]}, - {verbs: [D], action: [goto, LOC_SLOPING1]}, + {verbs: [DOWN], action: [goto, LOC_SLOPING1]}, {verbs: [SOUTH], cond: [carry, CLAM], action: [speak, CLAM_BLOCKER]}, {verbs: [SOUTH], cond: [carry, OYSTER], @@ -1741,7 +1738,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [UPWAR, SHELL], action: [goto, LOC_SHELLROOM]}, - {verbs: [D], action: [goto, LOC_CULDESAC]}, + {verbs: [DOWN], action: [goto, LOC_CULDESAC]}, ] - LOC_CULDESAC: description: @@ -1781,7 +1778,7 @@ locations: !!omap {verbs: [EAST], action: [goto, LOC_DIFFERENT9]}, {verbs: [WEST], action: [goto, LOC_DIFFERENT10]}, {verbs: [NORTH], action: [goto, LOC_DIFFERENT11]}, - {verbs: [D], action: [goto, LOC_LONGWEST]}, + {verbs: [DOWN], action: [goto, LOC_LONGWEST]}, ] - LOC_WITTSEND: description: @@ -1790,7 +1787,7 @@ locations: !!omap conditions: {DEEP: true, NOBACK: true} hints: [*witt] travel: [ - {verbs: [EAST, NORTH, SOUTH, NE, SE, SW, NW, UPWAR, D], + {verbs: [EAST, NORTH, SOUTH, NE, SE, SW, NW, UPWAR, DOWN], cond: [pct, 95], action: [speak, FUTILE_CRAWL]}, {verbs: [EAST], action: [goto, LOC_ANTEROOM]}, {verbs: [WEST], action: [speak, WAY_BLOCKED]}, @@ -1839,10 +1836,10 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [NORTH], action: [goto, LOC_SECRET2]}, - {verbs: [D, JUMP, CLIMB], cond: [pct, 40], + {verbs: [DOWN, JUMP, CLIMB], cond: [pct, 40], action: [goto, LOC_ALIKE6]}, - {verbs: [D], cond: [pct, 50], action: [goto, LOC_ALIKE9]}, - {verbs: [D], action: [goto, LOC_ALIKE4]}, + {verbs: [DOWN], cond: [pct, 50], action: [goto, LOC_ALIKE9]}, + {verbs: [DOWN], action: [goto, LOC_ALIKE4]}, ] - LOC_DIFFERENT2: description: @@ -1857,7 +1854,7 @@ locations: !!omap {verbs: [SE], action: [goto, LOC_DIFFERENT7]}, {verbs: [NE], action: [goto, LOC_DIFFERENT8]}, {verbs: [WEST], action: [goto, LOC_DIFFERENT9]}, - {verbs: [D], action: [goto, LOC_DIFFERENT10]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT10]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT11]}, {verbs: [SOUTH], action: [goto, LOC_DEADEND13]}, ] @@ -1874,7 +1871,7 @@ locations: !!omap sound: STREAM_SPLASHES travel: [ {verbs: [SOUTH, OUT], action: [goto, LOC_MIRRORCANYON]}, - {verbs: [NORTH, ACROS, CROSS], cond: [not, RESER, 1], action: [speak, BAD_DIRECTION]}, + {verbs: [NORTH, ACROS, CROSS], cond: [not, RESER, WATERS_PARTED], action: [speak, BAD_DIRECTION]}, {verbs: [NORTH], action: [goto, LOC_RESBOTTOM]}, ] - LOC_DEADEND12: @@ -1921,7 +1918,7 @@ locations: !!omap sound: SNAKES_HISSING travel: [ {verbs: [NE], action: [goto, LOC_NE]}, - {verbs: [D], action: [speak, GRATE_NOWAY]}, + {verbs: [DOWN], action: [speak, GRATE_NOWAY]}, ] - LOC_SWCHASM: description: @@ -1950,7 +1947,7 @@ locations: !!omap short: 'You''re in sloping corridor.' conditions: {DEEP: true} travel: [ - {verbs: [D], action: [goto, LOC_LOWROOM]}, + {verbs: [DOWN], action: [goto, LOC_LOWROOM]}, {verbs: [UPWAR], action: [goto, LOC_SWCHASM]}, ] - LOC_SECRET4: @@ -2022,7 +2019,7 @@ locations: !!omap travel: [ {verbs: [WEST], action: [goto, LOC_CORRIDOR]}, {verbs: [NE, LEFT], action: [goto, LOC_WARMWALLS]}, - {verbs: [SE, RIGHT, D], action: [goto, LOC_LIMESTONE]}, + {verbs: [SE, RIGHT, DOWN], action: [goto, LOC_LIMESTONE]}, {verbs: [VIEW], action: [goto, LOC_BREATHTAKING]}, {verbs: [BARRE], action: [goto, LOC_BARRENFRONT]}, ] @@ -2070,7 +2067,7 @@ locations: !!omap travel: [ {verbs: [SOUTH, PASSA, OUT], action: [goto, LOC_WARMWALLS]}, {verbs: [FORK], action: [goto, LOC_FORK]}, - {verbs: [D], action: [speak, RIDICULOUS_ATTEMPT]}, + {verbs: [DOWN], action: [speak, RIDICULOUS_ATTEMPT]}, {verbs: [JUMP], action: [goto, LOC_GRUESOME]}, ] - LOC_BOULDERS2: @@ -2097,7 +2094,7 @@ locations: !!omap conditions: {NOARRR: true, DEEP: true} travel: [ {verbs: [NORTH, UPWAR, FORK], action: [goto, LOC_FORK]}, - {verbs: [SOUTH, D, BARRE], action: [goto, LOC_BARRENFRONT]}, + {verbs: [SOUTH, DOWN, BARRE], action: [goto, LOC_BARRENFRONT]}, {verbs: [VIEW], action: [goto, LOC_BREATHTAKING]}, ] - LOC_BARRENFRONT: @@ -2138,7 +2135,7 @@ locations: !!omap {verbs: [SW], action: [goto, LOC_DIFFERENT6]}, {verbs: [NE], action: [goto, LOC_DIFFERENT7]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT8]}, - {verbs: [D], action: [goto, LOC_DIFFERENT9]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT9]}, {verbs: [NORTH], action: [goto, LOC_DIFFERENT10]}, {verbs: [SOUTH], action: [goto, LOC_DIFFERENT11]}, {verbs: [EAST], action: [goto, LOC_DIFFERENT2]}, @@ -2157,7 +2154,7 @@ locations: !!omap {verbs: [SW], action: [goto, LOC_DIFFERENT8]}, {verbs: [NE], action: [goto, LOC_DIFFERENT9]}, {verbs: [EAST], action: [goto, LOC_DIFFERENT10]}, - {verbs: [D], action: [goto, LOC_DIFFERENT11]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT11]}, {verbs: [SE], action: [goto, LOC_DIFFERENT2]}, ] - LOC_DIFFERENT5: @@ -2167,7 +2164,7 @@ locations: !!omap conditions: {DEEP: true, NOBACK: true} travel: [ {verbs: [UPWAR], action: [goto, LOC_DIFFERENT1]}, - {verbs: [D], action: [goto, LOC_DIFFERENT3]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT3]}, {verbs: [WEST], action: [goto, LOC_DIFFERENT4]}, {verbs: [NE], action: [goto, LOC_DIFFERENT6]}, {verbs: [SW], action: [goto, LOC_DIFFERENT7]}, @@ -2188,7 +2185,7 @@ locations: !!omap {verbs: [NW], action: [goto, LOC_DIFFERENT4]}, {verbs: [SE], action: [goto, LOC_DIFFERENT5]}, {verbs: [EAST], action: [goto, LOC_DIFFERENT7]}, - {verbs: [D], action: [goto, LOC_DIFFERENT8]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT8]}, {verbs: [SOUTH], action: [goto, LOC_DIFFERENT9]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT10]}, {verbs: [WEST], action: [goto, LOC_DIFFERENT11]}, @@ -2202,7 +2199,7 @@ locations: !!omap travel: [ {verbs: [NORTH], action: [goto, LOC_DIFFERENT1]}, {verbs: [SE], action: [goto, LOC_DIFFERENT3]}, - {verbs: [D], action: [goto, LOC_DIFFERENT4]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT4]}, {verbs: [SOUTH], action: [goto, LOC_DIFFERENT5]}, {verbs: [EAST], action: [goto, LOC_DIFFERENT6]}, {verbs: [WEST], action: [goto, LOC_DIFFERENT8]}, @@ -2221,7 +2218,7 @@ locations: !!omap {verbs: [WEST], action: [goto, LOC_DIFFERENT3]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT4]}, {verbs: [SW], action: [goto, LOC_DIFFERENT5]}, - {verbs: [D], action: [goto, LOC_DIFFERENT6]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT6]}, {verbs: [SOUTH], action: [goto, LOC_DIFFERENT7]}, {verbs: [NW], action: [goto, LOC_DIFFERENT9]}, {verbs: [SE], action: [goto, LOC_DIFFERENT10]}, @@ -2237,7 +2234,7 @@ locations: !!omap {verbs: [SE], action: [goto, LOC_DIFFERENT1]}, {verbs: [NE], action: [goto, LOC_DIFFERENT3]}, {verbs: [SOUTH], action: [goto, LOC_DIFFERENT4]}, - {verbs: [D], action: [goto, LOC_DIFFERENT5]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT5]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT6]}, {verbs: [NW], action: [goto, LOC_DIFFERENT7]}, {verbs: [NORTH], action: [goto, LOC_DIFFERENT8]}, @@ -2251,7 +2248,7 @@ locations: !!omap short: !!null conditions: {DEEP: true, NOBACK: true} travel: [ - {verbs: [D], action: [goto, LOC_DIFFERENT1]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT1]}, {verbs: [EAST], action: [goto, LOC_DIFFERENT3]}, {verbs: [NE], action: [goto, LOC_DIFFERENT4]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT5]}, @@ -2273,7 +2270,7 @@ locations: !!omap {verbs: [EAST], action: [goto, LOC_DIFFERENT4]}, {verbs: [WEST], action: [goto, LOC_DIFFERENT5]}, {verbs: [NORTH], action: [goto, LOC_DIFFERENT6]}, - {verbs: [D], action: [goto, LOC_DIFFERENT7]}, + {verbs: [DOWN], action: [goto, LOC_DIFFERENT7]}, {verbs: [SE], action: [goto, LOC_DIFFERENT8]}, {verbs: [UPWAR], action: [goto, LOC_DIFFERENT9]}, {verbs: [SOUTH], action: [goto, LOC_DIFFERENT10]}, @@ -2629,7 +2626,7 @@ locations: !!omap conditions: {DEEP: true} travel: [ {verbs: [UPWAR, NW], action: [goto, LOC_STEEP]}, - {verbs: [D, SE], action: [goto, LOC_RESNORTH]}, + {verbs: [DOWN, SE], action: [goto, LOC_RESNORTH]}, ] - LOC_STEEP: description: @@ -2637,7 +2634,7 @@ locations: !!omap short: !!null conditions: {DEEP: true} travel: [ - {verbs: [D, SE], action: [goto, LOC_TREACHEROUS]}, + {verbs: [DOWN, SE], action: [goto, LOC_TREACHEROUS]}, {verbs: [UPWAR, NW], action: [goto, LOC_CLIFFBASE]}, ] - LOC_CLIFFBASE: @@ -2650,7 +2647,7 @@ locations: !!omap short: 'You''re at base of cliff.' conditions: {DEEP: true} travel: [ - {verbs: [D, SE], action: [goto, LOC_STEEP]}, + {verbs: [DOWN, SE], action: [goto, LOC_STEEP]}, {verbs: [UPWAR, CLIMB], action: [goto, LOC_CLIFFACE]}, ] - LOC_CLIFFACE: @@ -2659,7 +2656,7 @@ locations: !!omap short: !!null conditions: {DEEP: true} travel: [ - {verbs: [D], action: [goto, LOC_CLIFFBASE]}, + {verbs: [DOWN], action: [goto, LOC_CLIFFBASE]}, {verbs: [UPWAR], cond: [carry, OBJ_46], action: [goto, LOC_CLIFFTOP]}, {verbs: [UPWAR], action: [goto, LOC_FOOTSLIP]}, ] @@ -2692,7 +2689,7 @@ locations: !!omap short: 'You''re at top of cliff.' conditions: {DEEP: true} travel: [ - {verbs: [CLIMB, D], action: [goto, LOC_CLIFFACE]}, + {verbs: [CLIMB, DOWN], action: [goto, LOC_CLIFFACE]}, {verbs: [NE, CRAWL], action: [goto, LOC_REACHDEAD]}, ] - LOC_REACHDEAD: @@ -2848,7 +2845,6 @@ arbitrary_messages: !!omap - STREAM_WATER: |- You have taken a drink from the stream. The water tastes strongly of minerals, but is not unpleasant. It is extremely cold. -- BOTTLE_EMPTY: 'The bottle of water is now empty.' - RUB_NOGO: |- Rubbing the electric lamp is not particularly rewarding. Anyway, nothing exciting happens. @@ -2874,8 +2870,6 @@ arbitrary_messages: !!omap - NO_CONTAINER: 'You have nothing in which to carry it.' - BOTTLE_FULL: 'Your bottle is already full.' - NO_LIQUID: 'There is nothing here with which to fill the bottle.' -- BOTTLED_WATER: 'Your bottle is now full of water.' -- BOTTLED_OIL: 'Your bottle is now full of oil.' - CANT_FILL: 'You can''t fill that.' - RIDICULOUS_ATTEMPT: 'Don''t be ridiculous!' - RUSTY_DOOR: 'The door is extremely rusty and refuses to open.' @@ -2974,9 +2968,6 @@ arbitrary_messages: !!omap weight of the bear, which was still following you around. You scrabble desperately for support, but as the bridge collapses you stumble back and fall into the chasm. -- TROLL_SCAMPERS: |- - The bear lumbers toward the troll, who lets out a startled shriek and - scurries away. The bear soon gives up the pursuit and wanders back. - BEAR_HANDS: 'With what? Your bare hands? Against *HIS* bear hands??' - BEAR_CONFUSED: 'The bear is confused; he only wants to be your friend.' - ALREADY_DEAD: 'For crying out loud, the poor thing is already dead!' @@ -3110,9 +3101,9 @@ arbitrary_messages: !!omap - ONE_HIT: 'One of them gets you!' - NONE_HIT: 'None of them hits you!' - DONT_KNOW: 'Sorry, I don''t know the word "%s".' -- WHAT_DO: 'What do you want to do with the %L%L?' # FIXME: %L%L should become %L once parsing no longer depends on packed tokens -- NO_SEE: 'I see no %L%L here.' # FIXME: %L%L should become %L once parsing no longer depends on packed tokens -- DO_WHAT: '%C what?' +- WHAT_DO: 'What do you want to do with the %s?' +- NO_SEE: 'I see no %s here.' +- DO_WHAT: '%s what?' - OKEY_DOKEY: 'Okay, "%s".' - GARNERED_POINTS: 'You have garnered %d out of a possible %d points, using %d turn%S.' - SUSPEND_WARNING: |- @@ -3215,9 +3206,10 @@ objects: !!omap words: ['lamp', 'lante'] inventory: 'Brass lantern' locations: LOC_BUILDING + states: [LAMP_DARK, LAMP_BRIGHT] descriptions: - - [LAMP_DARK, 'There is a shiny brass lamp nearby.'] - - [LAMP_BRIGHT, 'There is a lamp shining nearby.'] + - 'There is a shiny brass lamp nearby.' + - 'There is a lamp shining nearby.' changes: - 'Your lamp is now off.' - 'Your lamp is now on.' @@ -3226,9 +3218,10 @@ objects: !!omap inventory: '*grate' locations: [LOC_GRATE, LOC_BELOWGRATE] immovable: true + states: [GRATE_CLOSED, GRATE_OPEN] descriptions: - - [GRATE_CLOSED, 'The grate is locked.'] - - [GRATE_OPEN, 'The grate is open.'] + - 'The grate is locked.' + - 'The grate is open.' changes: - 'The grate is now locked.' - 'The grate is now unlocked.' @@ -3255,6 +3248,7 @@ objects: !!omap inventory: '*steps' locations: [LOC_PITTOP, LOC_MISTHALL] immovable: true + states: [STEPS_DOWN, STEPS_UP] descriptions: - 'Rough stone steps lead down the pit.' - 'Rough stone steps lead up the dome.' @@ -3262,10 +3256,11 @@ objects: !!omap words: ['bird'] inventory: 'Little bird in cage' locations: LOC_BIRD + states: [BIRD_UNCAGED, BIRD_CAGED, BIRD_FOREST_UNCAGED] descriptions: - - [BIRD_UNCAGED, 'A cheerful little bird is sitting here singing.'] - - [BIRD_CAGED, 'There is a little bird in the cage.'] - - [BIRD_FOREST_UNCAGED, 'A cheerful little bird is sitting here singing.'] + - 'A cheerful little bird is sitting here singing.' + - 'There is a little bird in the cage.' + - 'A cheerful little bird is sitting here singing.' sounds: - 'The bird''s singing is quite melodious.' - 'The bird does not seem inclined to sing while in the cage.' @@ -3285,9 +3280,10 @@ objects: !!omap inventory: '*rusty door' locations: LOC_IMMENSE immovable: true + states: [DOOR_RUSTED, DOOR_UNRUSTED] descriptions: - - [DOOR_RUSTED, 'The way north is barred by a massive, rusty, iron door.'] - - [DOOR_UNRUSTED, 'The way north leads through a massive, rusty, iron door.'] + - 'The way north is barred by a massive, rusty, iron door.' + - 'The way north leads through a massive, rusty, iron door.' changes: - 'The hinges are quite thoroughly rusted now and won''t budge.' - |- @@ -3304,20 +3300,25 @@ objects: !!omap inventory: '*snake' locations: LOC_KINGHALL immovable: true + states: [SNAKE_BLOCKS, SNAKE_CHASED] descriptions: - - [SNAKE_BLOCKS, 'A huge green fierce snake bars the way!'] - - [SNAKE_CHASED, ''] # chased away + - 'A huge green fierce snake bars the way!' + - '' # chased away sounds: - 'The snake is hissing venomously.' + - '' - FISSURE: words: ['fissu'] inventory: '*fissure' locations: [LOC_EASTBANK, LOC_WESTBANK] immovable: true + states: [UNBRIDGED, BRIDGED] descriptions: - - [UNBRIDGED, ''] - - [BRIDGED, 'A crystal bridge now spans the fissure.'] - - [VANISHED, 'The crystal bridge has vanished!'] + - '' + - 'A crystal bridge spans the fissure.' + changes: + - 'The crystal bridge has vanished!' + - 'A crystal bridge now spans the fissure.' - OBJ_13: words: ['table'] inventory: '*stone tablet' @@ -3378,10 +3379,15 @@ objects: !!omap words: ['bottl', 'jar'] inventory: 'Small bottle' locations: LOC_BUILDING - descriptions: - - [WATER_BOTTLE, 'There is a bottle of water here.'] - - [EMPTY_BOTTLE, 'There is an empty bottle here.'] - - [OIL_BOTTLE, 'There is a bottle of oil here.'] + states: [WATER_BOTTLE, EMPTY_BOTTLE, OIL_BOTTLE] + descriptions: + - 'There is a bottle of water here.' + - 'There is an empty bottle here.' + - 'There is a bottle of oil here.' + changes: + - 'Your bottle is now full of water.' + - 'The bottle of water is now empty.' + - 'Your bottle is now full of oil.' - WATER: words: ['water', 'h2o'] inventory: 'Water in the bottle' @@ -3403,15 +3409,15 @@ objects: !!omap inventory: '*plant' locations: LOC_WESTPIT immovable: true + states: [PLANT_THIRSTY, PLANT_BELLOWING, PLANT_GROWN] descriptions: - 'There is a tiny little plant in the pit, murmuring "water, water, ..."' - - |- - There is a 12-foot-tall beanstalk stretching up out of the pit, - bellowing "WATER!! WATER!!" + - 'There is a 12-foot-tall beanstalk stretching up out of the pit,\nbellowing "WATER!! WATER!!"' - 'There is a gigantic beanstalk stretching all the way up to the hole.' + changes: + - 'You''ve over-watered the plant! It''s shriveling up! And now . . .' - 'The plant spurts into furious growth for a few seconds.' - 'The plant grows explosively, almost filling the bottom of the pit.' - - 'You''ve over-watered the plant! It''s shriveling up! And now . . .' sounds: - 'The plant continues to ask plaintively for water.' - 'The plant continues to demand water.' @@ -3443,9 +3449,10 @@ objects: !!omap words: ['axe'] inventory: 'Dwarf''s axe' locations: LOC_NOWHERE + states: [AXE_HERE, AXE_LOST] descriptions: - - [AXE_HERE, 'There is a little axe here.'] - - [AXE_LOST, 'There is a little axe lying beside the bear.'] + - 'There is a little axe here.' + - 'There is a little axe lying beside the bear.' changes: - '' - 'The axe misses and lands near the bear where you can''t get at it.' @@ -3466,10 +3473,11 @@ objects: !!omap inventory: '*dragon' locations: [LOC_SECRET4, LOC_SECRET6] immovable: true + states: [DRAGON_BARS, DRAGON_DEAD, DRAGON_BLOODLESS] descriptions: - - [DRAGON_BARS, 'A huge green fierce dragon bars the way!'] - - [DRAGON_DEAD, 'The blood-specked body of a huge green dead dragon lies to one side.'] - - [DRAGON_BLOODLESS, 'The body of a huge green dead dragon is lying off to one side.'] + - 'A huge green fierce dragon bars the way!' + - 'The blood-specked body of a huge green dead dragon lies to one side.' + - 'The body of a huge green dead dragon is lying off to one side.' changes: - '' - |- @@ -3485,21 +3493,30 @@ objects: !!omap inventory: '*chasm' locations: [LOC_SWCHASM, LOC_NECHASM] immovable: true + states: [TROLL_BRIDGE, BRIDGE_WRECKED] descriptions: - - [TROLL_BRIDGE, 'A rickety wooden bridge extends across the chasm, vanishing into the\nmist. A notice posted on the bridge reads, "Stop! Pay troll!"'] - - [BRIDGE_WRECKED, 'The wreckage of a bridge (and a dead bear) can be seen at the bottom\nof the chasm.'] + - 'A rickety wooden bridge extends across the chasm, vanishing into the\nmist. A notice posted on the bridge reads, "Stop! Pay troll!"' + - 'The wreckage of a bridge (and a dead bear) can be seen at the bottom\nof the chasm.' - TROLL: words: ['troll'] inventory: '*troll' locations: [LOC_SWCHASM, LOC_NECHASM] immovable: true - descriptions: - - [TROLL_UNPAID, 'A burly troll stands by the bridge and insists you throw him a\ntreasure before you may cross.'] - - [TROLL_PAIDONCE, 'The troll steps out from beneath the bridge and blocks your way.'] - - [TROLL_GONE, ''] # chased away + states: [TROLL_UNPAID, TROLL_PAIDONCE, TROLL_GONE] + descriptions: + - 'A burly troll stands by the bridge and insists you throw him a\ntreasure before you may cross.' + - 'The troll steps out from beneath the bridge and blocks your way.' + - '' # chased away + changes: + - '' + - '' + - |- + The bear lumbers toward the troll, who lets out a startled shriek and + scurries away. The bear soon gives up the pursuit and wanders back. sounds: - 'The troll sounds quite adamant in his demand for a treasure.' - 'The troll sounds quite adamant in his demand for a treasure.' + - '' - TROLL2: words: ['troll'] inventory: '*phony troll' @@ -3512,11 +3529,12 @@ objects: !!omap inventory: !!null # bear uses rtext 141 locations: LOC_BARRENROOM immovable: true + states: [UNTAMED_BEAR, SITTING_BEAR, CONTENTED_BEAR, BEAR_DEAD] descriptions: - - [UNTAMED_BEAR, 'There is a ferocious cave bear eying you from the far end of the room!'] - - [SITTING_BEAR, 'There is a gentle cave bear sitting placidly in one corner.'] - - [CONTENTED_BEAR, 'There is a contented-looking bear wandering about nearby.'] - - [BEAR_DEAD, ''] + - 'There is a ferocious cave bear eying you from the far end of the room!' + - 'There is a gentle cave bear sitting placidly in one corner.' + - 'There is a contented-looking bear wandering about nearby.' + - '' - MESSAG: words: ['messa'] inventory: '*message in second maze' @@ -3539,9 +3557,14 @@ objects: !!omap inventory: '*vending machine' locations: LOC_DEADEND13 immovable: true + states: [VEND_BLOCKS, VEND_UNBLOCKS] descriptions: - - [VEND_BLOCKS, 'There is a massive and somewhat battered vending machine here. The\ninstructions on it read: "Drop coins here to receive fresh batteries."'] - - [VEND_UNBLOCKS, 'There is a massive vending machine here, swung back to reveal a\nsouthward passage.'] + - |- + There is a massive and somewhat battered vending machine here. The + instructions on it read: "Drop coins here to receive fresh batteries." + - |- + There is a massive vending machine here, swung back to reveal a + southward passage. changes: - 'The vending machine swings back to block the passage.' - 'As you strike the vending machine, it pivots backward along with a\nsection of wall, revealing a dark passage leading south.' @@ -3552,9 +3575,10 @@ objects: !!omap words: ['batte'] inventory: 'Batteries' locations: LOC_NOWHERE + states: [FRESH_BATTERIES, DEAD_BATTERIES] descriptions: - - [FRESH_BATTERIES, 'There are fresh batteries here.'] - - [DEAD_BATTERIES, 'Some worn-out batteries have been discarded nearby.'] + - 'There are fresh batteries here.' + - 'Some worn-out batteries have been discarded nearby.' - OBJ_40: words: ['carpe', 'moss'] inventory: '*carpet and/or moss and/or curtains' @@ -3575,10 +3599,11 @@ objects: !!omap inventory: '*urn' locations: LOC_CLIFF immovable: true + states: [URN_EMPTY, URN_DARK, URN_LIT] descriptions: - - [URN_EMPTY, 'A small urn is embedded in the rock.'] - - [URN_DARK, 'A small urn full of oil is embedded in the rock.'] - - [URN_LIT, 'A small oil flame extrudes from an urn embedded in the rock.'] + - 'A small urn is embedded in the rock.' + - 'A small urn full of oil is embedded in the rock.' + - 'A small oil flame extrudes from an urn embedded in the rock.' changes: - 'The urn is empty and will not light.' - 'The urn is now dark.' @@ -3588,9 +3613,10 @@ objects: !!omap inventory: '*cavity' locations: LOC_NOWHERE immovable: true + states: [CAVITY_FULL, CAVITY_EMPTY] descriptions: - - [CAVITY_FULL, ''] # something in it - - [CAVITY_EMPTY, 'There is a small urn-shaped cavity in the rock.'] + - '' # something in it + - 'There is a small urn-shaped cavity in the rock.' - BLOOD: words: ['blood'] inventory: '*blood' @@ -3603,10 +3629,13 @@ objects: !!omap inventory: '*reservoir' locations: [LOC_RESERVOIR, LOC_RESNORTH] immovable: true + states: [WATERS_UNPARTED, WATERS_PARTED] descriptions: - '' - - [WATERS_PARTED, 'The waters have parted to form a narrow path across the reservoir.'] + - 'The waters have parted to form a narrow path across the reservoir.' + changes: - 'The waters crash together again.' + - 'The waters have parted to form a narrow path across the reservoir.' - OBJ_46: words: ['appen', 'lepor'] inventory: 'Leporine appendage' @@ -3636,9 +3665,10 @@ objects: !!omap inventory: '*sign' locations: LOC_ANTEROOM immovable: true + states: [INGAME_SIGN, ENDGAME_SIGN] descriptions: - - [INGAME_SIGN, ''] - - [ENDGAME_SIGN, ''] + - '' + - '' texts: - |- Cave under construction beyond this point. @@ -3692,10 +3722,11 @@ objects: !!omap inventory: 'Golden eggs' locations: LOC_GIANTROOM treasure: true + states: [EGGS_HERE, EGGS_VANISHED, EGGS_DONE] descriptions: - - [EGGS_HERE, 'There is a large nest here, full of golden eggs!'] - - [EGGS_VANISHED, 'The nest of golden eggs has vanished!'] - - [EGGS_DONE, 'Done!'] + - 'There is a large nest here, full of golden eggs!' + - 'The nest of golden eggs has vanished!' + - 'Done!' - TRIDENT: words: ['tride'] inventory: 'Jeweled trident' @@ -3708,14 +3739,14 @@ objects: !!omap inventory: 'Ming vase' locations: LOC_ORIENTAL treasure: true + states: [VASE_WHOLE, VASE_DROPPED, VASE_BROKEN] descriptions: - - [VASE_WHOLE, 'There is a delicate, precious, ming vase here!'] - - [VASE_RESTING, 'The vase is now resting, delicately, on a velvet pillow.'] - - [VASE_BROKEN, 'The floor is littered with worthless shards of pottery.'] - - [VASE_DROPS, 'The ming vase drops with a delicate crash.'] + - 'There is a delicate, precious, ming vase here!' + - 'The floor is littered with worthless shards of pottery.' + - 'The floor is littered with worthless shards of pottery.' changes: - - '' - - '' + - 'The vase is now resting, delicately, on a velvet pillow.' + - 'The ming vase drops with a delicate crash.' - 'You have taken the vase and hurled it delicately to the ground.' - EMERALD: words: ['emera'] @@ -3745,10 +3776,11 @@ objects: !!omap locations: [LOC_SECRET4, LOC_SECRET6] immovable: true treasure: true + states: [RUG_FLOOR, RUG_DRAGON, RUG_HOVER] descriptions: - - [RUG_FLOOR, 'There is a persian rug spread out on the floor!'] - - [RUG_DRAGON, 'The dragon is sprawled out on a persian rug!!'] - - [RUG_HOVER, 'There is a persian rug here, hovering in mid-air!'] + - 'There is a persian rug spread out on the floor!' + - 'The dragon is sprawled out on a persian rug!!' + - 'There is a persian rug here, hovering in mid-air!' - OBJ_63: words: ['spice'] inventory: 'Rare spices' @@ -3762,10 +3794,11 @@ objects: !!omap locations: LOC_BARRENROOM immovable: true treasure: true + states: [CHAIN_HEAP, CHAINING_BEAR, CHAIN_FIXED] descriptions: - - [CHAIN_HEAP, 'There is a golden chain lying in a heap on the floor!'] - - [CHAINING_BEAR, 'The bear is locked to the wall with a golden chain!'] - - [CHAIN_FIXED, 'There is a golden chain locked to the wall!'] + - 'There is a golden chain lying in a heap on the floor!' + - 'The bear is locked to the wall with a golden chain!' + - 'There is a golden chain locked to the wall!' - RUBY: words: ['ruby'] inventory: 'Giant ruby' @@ -3786,9 +3819,10 @@ objects: !!omap inventory: 'Amber gemstone' locations: LOC_NOWHERE treasure: true + states: [AMBER_IN_URN, AMBER_IN_ROCK] descriptions: - - [AMBER_IN_URN, 'There is a rare amber gemstone here!'] - - [AMBER_IN_ROCK, 'There is an amber gemstone resting in a small cavity in the rock!'] + - 'There is a rare amber gemstone here!' + - 'There is an amber gemstone resting in a small cavity in the rock!' - SAPPH: words: ['sapph'] inventory: 'Star sapphire'