I am trying to implement a system in which the player can choose a book from a shelf and depending on what topic they call, changes the name and description of the book that they receive. I want to do it this way so I don’t have there be 100+ items in the room.
So the borrowing action (obviously adding synonyms and constraints of use etc.) would look something like this:
[code]The library is a room.
Borrowing is an action applying to a topic. Understand “borrow [text]” as borrowing.
Tome is in the library.
Table of Books
Topic Title Description
“Pride & Prejudice” “Pride & Prejudice” “A witty tale of manners and mistakes in Edwardian high society.”
"Beginners’ Aviation " “Beginners’ Aviation” “What goes up, apparently, doesn’t need to come down straight away.”
“The Prince” “The Prince” “Is it better to be feared or loved?”
Carry out borrowing a topic listed in the table of books:
now the tome is held by the player;
now the description of tome is “[description entry]”;
now the printed name of tome is “[title entry]”.
Report borrowing a topic listed in the table of books:
say “You decide to check out [printed name of tome].”
[/code]
Now, the above doesn’t work but I’m not entirely sure why. When it calls the topic, I can get it to say any of the entries from the topic line. This works fine:
Carry out borrowing a topic listed in the table of books: say "You get [title entry]."
But I can’t seem to use the entries associated with the topics in a more productive way. Every time I deal with topics and text snippets and indexed text it’s a massive headache. Anyone got any insight here?
EDIT:
Ach. I’m beginning to think it’ll be easier to create a whole heap of books defined by the table (like the jersey example in the documentation). Are there performance issues if you have hundreds of items in a room? Or could I call them up from off-stage with a topic?