Clean out the now-disused vocabulary structure.
This commit is contained in:
parent
e7d1388c42
commit
3f580acc05
2 changed files with 8 additions and 246 deletions
228
adventure.yaml
228
adventure.yaml
|
@ -124,234 +124,6 @@
|
|||
# %B = Variable number of blanks
|
||||
# %! = The entire message should be suppressed
|
||||
|
||||
# There are duplicate keys in this vocabulary, that's why it can't be a normal
|
||||
# map. You have to iterate through it looking for a match qualified by type.
|
||||
# 1 is not allocated because it's used as a sentinel value in motion-verb
|
||||
# lists.
|
||||
vocabulary: [
|
||||
{word: "ROAD", type: motion, value: 2},
|
||||
{word: "HILL", type: motion, value: 2},
|
||||
{word: "ENTER", type: motion, value: 3},
|
||||
{word: "UPSTR", type: motion, value: 4},
|
||||
{word: "DOWNS", type: motion, value: 5},
|
||||
{word: "FORES", type: motion, value: 6},
|
||||
{word: "FORWA", type: motion, value: 7},
|
||||
{word: "CONTI", type: motion, value: 7},
|
||||
{word: "ONWAR", type: motion, value: 7},
|
||||
{word: "BACK", type: motion, value: 8},
|
||||
{word: "RETUR", type: motion, value: 8},
|
||||
{word: "RETRE", type: motion, value: 8},
|
||||
{word: "VALLE", type: motion, value: 9},
|
||||
{word: "STAIR", type: motion, value: 10},
|
||||
{word: "OUT", type: motion, value: 11},
|
||||
{word: "OUTSI", type: motion, value: 11},
|
||||
{word: "EXIT", type: motion, value: 11},
|
||||
{word: "LEAVE", type: motion, value: 11},
|
||||
{word: "BUILD", type: motion, value: 12},
|
||||
{word: "HOUSE", type: motion, value: 12},
|
||||
{word: "GULLY", type: motion, value: 13},
|
||||
{word: "STREA", type: motion, value: 14},
|
||||
{word: "FORK", type: motion, value: 15},
|
||||
{word: "BED", type: motion, value: 16},
|
||||
{word: "CRAWL", type: motion, value: 17},
|
||||
{word: "COBBL", type: motion, value: 18},
|
||||
{word: "INWAR", type: motion, value: 19},
|
||||
{word: "INSID", type: motion, value: 19},
|
||||
{word: "IN", type: motion, value: 19},
|
||||
{word: "SURFA", type: motion, value: 20},
|
||||
{word: "NULL", type: motion, value: 21},
|
||||
{word: "NOWHE", type: motion, value: 21},
|
||||
{word: "DARK", type: motion, value: 22},
|
||||
{word: "PASSA", type: motion, value: 23},
|
||||
{word: "TUNNE", type: motion, value: 23},
|
||||
{word: "LOW", type: motion, value: 24},
|
||||
{word: "CANYO", type: motion, value: 25},
|
||||
{word: "AWKWA", type: motion, value: 26},
|
||||
{word: "GIANT", type: motion, value: 27},
|
||||
{word: "VIEW", type: motion, value: 28},
|
||||
{word: "UPWAR", type: motion, value: 29},
|
||||
{word: "UP", type: motion, value: 29},
|
||||
{word: "U", type: motion, value: 29},
|
||||
{word: "ABOVE", type: motion, value: 29},
|
||||
{word: "ASCEN", type: motion, value: 29},
|
||||
{word: "D", type: motion, value: 30},
|
||||
{word: "DOWNW", type: motion, value: 30},
|
||||
{word: "DOWN", type: motion, value: 30},
|
||||
{word: "DESCE", type: motion, value: 30},
|
||||
{word: "PIT", type: motion, value: 31},
|
||||
{word: "OUTDO", type: motion, value: 32},
|
||||
{word: "CRACK", type: motion, value: 33},
|
||||
{word: "STEPS", type: motion, value: 34},
|
||||
{word: "DOME", type: motion, value: 35},
|
||||
{word: "LEFT", type: motion, value: 36},
|
||||
{word: "RIGHT", type: motion, value: 37},
|
||||
{word: "HALL", type: motion, value: 38},
|
||||
{word: "JUMP", type: motion, value: 39},
|
||||
{word: "BARRE", type: motion, value: 40},
|
||||
{word: "OVER", type: motion, value: 41},
|
||||
{word: "ACROS", type: motion, value: 42},
|
||||
{word: "EAST", type: motion, value: 43},
|
||||
{word: "E", type: motion, value: 43},
|
||||
{word: "WEST", type: motion, value: 44},
|
||||
{word: "W", type: motion, value: 44},
|
||||
{word: "NORTH", type: motion, value: 45},
|
||||
{word: "N", type: motion, value: 45},
|
||||
{word: "SOUTH", type: motion, value: 46},
|
||||
{word: "S", type: motion, value: 46},
|
||||
{word: "NE", type: motion, value: 47},
|
||||
{word: "SE", type: motion, value: 48},
|
||||
{word: "SW", type: motion, value: 49},
|
||||
{word: "NW", type: motion, value: 50},
|
||||
{word: "DEBRI", type: motion, value: 51},
|
||||
{word: "HOLE", type: motion, value: 52},
|
||||
{word: "WALL", type: motion, value: 53},
|
||||
{word: "BROKE", type: motion, value: 54},
|
||||
{word: "Y2", type: motion, value: 55},
|
||||
{word: "CLIMB", type: motion, value: 56},
|
||||
{word: "LOOK", type: motion, value: 57},
|
||||
{word: "EXAMI", type: motion, value: 57},
|
||||
{word: "TOUCH", type: motion, value: 57},
|
||||
{word: "DESCR", type: motion, value: 57},
|
||||
{word: "FLOOR", type: motion, value: 58},
|
||||
{word: "ROOM", type: motion, value: 59},
|
||||
{word: "SLIT", type: motion, value: 60},
|
||||
{word: "SLAB", type: motion, value: 61},
|
||||
{word: "SLABR", type: motion, value: 61},
|
||||
{word: "XYZZY", type: motion, value: 62},
|
||||
{word: "DEPRE", type: motion, value: 63},
|
||||
{word: "ENTRA", type: motion, value: 64},
|
||||
{word: "PLUGH", type: motion, value: 65},
|
||||
{word: "SECRE", type: motion, value: 66},
|
||||
{word: "CAVE", type: motion, value: 67},
|
||||
{word: "CROSS", type: motion, value: 69},
|
||||
{word: "BEDQU", type: motion, value: 70},
|
||||
{word: "PLOVE", type: motion, value: 71},
|
||||
{word: "ORIEN", type: motion, value: 72},
|
||||
{word: "CAVER", type: motion, value: 73},
|
||||
{word: "SHELL", type: motion, value: 74},
|
||||
{word: "RESER", type: motion, value: 75},
|
||||
{word: "MAIN", type: motion, value: 76},
|
||||
{word: "OFFIC", type: motion, value: 76},
|
||||
{word: "CARRY", type: action, value: 1},
|
||||
{word: "TAKE", type: action, value: 1},
|
||||
{word: "KEEP", type: action, value: 1},
|
||||
{word: "CATCH", type: action, value: 1},
|
||||
{word: "STEAL", type: action, value: 1},
|
||||
{word: "CAPTU", type: action, value: 1},
|
||||
{word: "GET", type: action, value: 1},
|
||||
{word: "TOTE", type: action, value: 1},
|
||||
{word: "SNARF", type: action, value: 1},
|
||||
{word: "DROP", type: action, value: 2},
|
||||
{word: "RELEA", type: action, value: 2},
|
||||
{word: "FREE", type: action, value: 2},
|
||||
{word: "DISCA", type: action, value: 2},
|
||||
{word: "DUMP", type: action, value: 2},
|
||||
{word: "SAY", type: action, value: 3},
|
||||
{word: "CHANT", type: action, value: 3},
|
||||
{word: "SING", type: action, value: 3},
|
||||
{word: "UTTER", type: action, value: 3},
|
||||
{word: "MUMBL", type: action, value: 3},
|
||||
{word: "UNLOC", type: action, value: 4},
|
||||
{word: "OPEN", type: action, value: 4},
|
||||
{word: "NOTHI", type: action, value: 5},
|
||||
{word: "LOCK", type: action, value: 6},
|
||||
{word: "CLOSE", type: action, value: 6},
|
||||
{word: "LIGHT", type: action, value: 7},
|
||||
{word: "ON", type: action, value: 7},
|
||||
{word: "EXTIN", type: action, value: 8},
|
||||
{word: "OFF", type: action, value: 8},
|
||||
{word: "WAVE", type: action, value: 9},
|
||||
{word: "SHAKE", type: action, value: 9},
|
||||
{word: "SWING", type: action, value: 9},
|
||||
{word: "CALM", type: action, value: 10},
|
||||
{word: "PLACA", type: action, value: 10},
|
||||
{word: "TAME", type: action, value: 10},
|
||||
{word: "WALK", type: action, value: 11},
|
||||
{word: "RUN", type: action, value: 11},
|
||||
{word: "TRAVE", type: action, value: 11},
|
||||
{word: "GO", type: action, value: 11},
|
||||
{word: "PROCE", type: action, value: 11},
|
||||
{word: "CONTI", type: action, value: 11},
|
||||
{word: "EXPLO", type: action, value: 11},
|
||||
{word: "FOLLO", type: action, value: 11},
|
||||
{word: "TURN", type: action, value: 11},
|
||||
{word: "ATTAC", type: action, value: 12},
|
||||
{word: "KILL", type: action, value: 12},
|
||||
{word: "FIGHT", type: action, value: 12},
|
||||
{word: "HIT", type: action, value: 12},
|
||||
{word: "STRIK", type: action, value: 12},
|
||||
{word: "SLAY", type: action, value: 12},
|
||||
{word: "POUR", type: action, value: 13},
|
||||
{word: "EAT", type: action, value: 14},
|
||||
{word: "DEVOU", type: action, value: 14},
|
||||
{word: "DRINK", type: action, value: 15},
|
||||
{word: "RUB", type: action, value: 16},
|
||||
{word: "THROW", type: action, value: 17},
|
||||
{word: "TOSS", type: action, value: 17},
|
||||
{word: "QUIT", type: action, value: 18},
|
||||
{word: "FIND", type: action, value: 19},
|
||||
{word: "WHERE", type: action, value: 19},
|
||||
{word: "INVEN", type: action, value: 20},
|
||||
{word: "FEED", type: action, value: 21},
|
||||
{word: "FILL", type: action, value: 22},
|
||||
{word: "BLAST", type: action, value: 23},
|
||||
{word: "DETON", type: action, value: 23},
|
||||
{word: "IGNIT", type: action, value: 23},
|
||||
{word: "BLOWU", type: action, value: 23},
|
||||
{word: "SCORE", type: action, value: 24},
|
||||
{word: "FEE", type: action, value: 25},
|
||||
{word: "FIE", type: action, value: 25},
|
||||
{word: "FOE", type: action, value: 25},
|
||||
{word: "FOO", type: action, value: 25},
|
||||
{word: "FUM", type: action, value: 25},
|
||||
{word: "BRIEF", type: action, value: 26},
|
||||
{word: "READ", type: action, value: 27},
|
||||
{word: "PERUS", type: action, value: 27},
|
||||
{word: "BREAK", type: action, value: 28},
|
||||
{word: "SHATT", type: action, value: 28},
|
||||
{word: "SMASH", type: action, value: 28},
|
||||
{word: "WAKE", type: action, value: 29},
|
||||
{word: "DISTU", type: action, value: 29},
|
||||
{word: "SUSPE", type: action, value: 30},
|
||||
{word: "PAUSE", type: action, value: 30},
|
||||
{word: "SAVE", type: action, value: 30},
|
||||
{word: "RESUM", type: action, value: 31},
|
||||
{word: "RESTA", type: action, value: 31},
|
||||
{word: "FLY", type: action, value: 32},
|
||||
{word: "LISTE", type: action, value: 33},
|
||||
{word: "Z'ZZZ", type: action, value: 34}, # Gets replaced
|
||||
{word: "FEE", type: special, value: 1},
|
||||
{word: "FIE", type: special, value: 2},
|
||||
{word: "FOE", type: special, value: 3},
|
||||
{word: "FOO", type: special, value: 4},
|
||||
{word: "FUM", type: special, value: 5},
|
||||
{word: "THANK", type: special, value: 13},
|
||||
{word: "SESAM", type: special, value: 50},
|
||||
{word: "OPENS", type: special, value: 50},
|
||||
{word: "ABRA", type: special, value: 50},
|
||||
{word: "ABRAC", type: special, value: 50},
|
||||
{word: "SHAZA", type: special, value: 50},
|
||||
{word: "HOCUS", type: special, value: 50},
|
||||
{word: "POCUS", type: special, value: 50},
|
||||
{word: "HELP", type: special, value: 51},
|
||||
{word: "?", type: special, value: 51},
|
||||
{word: "NO", type: special, value: 54},
|
||||
{word: "TREE", type: special, value: 64},
|
||||
{word: "TREES", type: special, value: 64},
|
||||
{word: "DIG", type: special, value: 66},
|
||||
{word: "EXCAV", type: special, value: 66},
|
||||
{word: "LOST", type: special, value: 68},
|
||||
{word: "MIST", type: special, value: 69},
|
||||
{word: "FUCK", type: special, value: 79},
|
||||
{word: "STOP", type: special, value: 139},
|
||||
{word: "INFO", type: special, value: 142},
|
||||
{word: "INFOR", type: special, value: 142},
|
||||
{word: "SWIM", type: special, value: 147},
|
||||
{word: "WIZAR", type: special, value: 246},
|
||||
{word: "YES", type: special, value: 271},
|
||||
{word: "NEWS", type: special, value: 275},
|
||||
]
|
||||
|
||||
motions: !!omap
|
||||
- MOT_0:
|
||||
words: !!null
|
||||
|
|
|
@ -506,18 +506,6 @@ def get_condbits(locations):
|
|||
cnd_str += " " + line + ",\t// " + name + "\n"
|
||||
return cnd_str
|
||||
|
||||
def recompose(type_word, value):
|
||||
"Compose the internal code for a vocabulary word from its YAML entry"
|
||||
parts = ("motion", "action", "object", "special")
|
||||
try:
|
||||
return value + 1000 * parts.index(type_word)
|
||||
except KeyError:
|
||||
sys.stderr.write("dungeon: %s is not a known word\n" % word)
|
||||
sys.exit(1)
|
||||
except IndexError:
|
||||
sys.stderr.write("%s is not a known word classifier\n" % attrs["type"])
|
||||
sys.exit(1)
|
||||
|
||||
def get_motions(motions):
|
||||
template = """ {{
|
||||
.words = {},
|
||||
|
@ -568,12 +556,15 @@ def bigdump(arr):
|
|||
out = out[:-2] + "\n"
|
||||
return out
|
||||
|
||||
def buildtravel(locs, objs, voc):
|
||||
def buildtravel(locs, objs):
|
||||
ltravel = []
|
||||
verbmap = {}
|
||||
for entry in db["vocabulary"]:
|
||||
if entry["type"] == "motion" and entry["value"] not in verbmap:
|
||||
verbmap[entry["word"]] = entry["value"]
|
||||
for i, motion in enumerate(db["motions"]):
|
||||
try:
|
||||
for word in motion[1]["words"]:
|
||||
verbmap[word.upper()] = i
|
||||
except TypeError:
|
||||
pass
|
||||
def dencode(action, name):
|
||||
"Decode a destination number"
|
||||
if action[0] == "goto":
|
||||
|
@ -705,8 +696,7 @@ if __name__ == "__main__":
|
|||
objnames = [el[0] for el in db["objects"]]
|
||||
|
||||
(travel, tkey) = buildtravel(db["locations"],
|
||||
db["objects"],
|
||||
db["vocabulary"])
|
||||
db["objects"])
|
||||
|
||||
c = c_template.format(
|
||||
h_name,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue