Grammar:Proper Names
Any asset can have a proper name. By default, the
proper_name property of the base class is empty. This can be
changed for individual assets or classes by setting
asset.propername = "Foo". For example, here is an NPC with a
proper name.
MyGame.createAsset({
class: "NPC",
name: "fox",
synonyms: [],
description: `The fox is thin and patchy. `,
place: { in: "Foxhole" },
gender: "nonbinary",
proper_name: "Reynard", // we've given the fox a proper name
});
All assets also have an article_name property which may return a
proper name, or the name preceded by the definite article, or the name
preceded by the indefinite article. If a proper name is found, that will be
returned unless the asset has its use_proper_name
property set to false. To continue with our fox example, let's say that we
prefer for Reynard to be listed as "the fox".
MyGame.createAsset({
class: "NPC",
name: "fox",
synonyms: [],
description: `The fox is thin and patchy. `,
place: { in: "Foxhole" },
gender: "nonbinary",
proper_name: "Reynard", // we've given the fox a proper name
use_proper_name: false, // but we don't want to use it in messages
use_definite_article: true, // we want parser to print "the fox"
});