This ensures that "twine" is never a primary noun and "ball" is not an alias.
start_at = room
game_settings {
add_standard_prepositions = false
experimental_new_parser = true
}
locations {
room : location "You are in a room.";
}
objects {
ball : object "a ball of twine" at = "room" ;
text_book : object "a text book" at = "room";
}
on_command {
: match "_ _" {
: mask {
: print {("^n^verb = " + original "verb")}
: print {("^n^preposition1 = " + original "preposition1")}
: print {("^n^noun1 = " + original "noun1")}
: print {("^n^preposition2 = " + original "preposition2")}
: print {("^n^noun2 = " + original "noun2" + "^m^")}
}
}
: if (is_present "text_book") {
: match "read _" {
: if (preposition1_is "about") {
: if (noun1_is "ball") {
: print "It says you only need rubber to make a ball.";
: done;
}
: print "There's no topic on that.";
: done;
}
}
}
}
vocabulary {
: experimental_replace { text = "ball of twine" with = "ball" }
: experimental_replace { text = "twine" with = "ball" }
: preposition / aliases = [about]
: noun / aliases = [ball]
}