In my scenario, a player examines a Menu. As soon as he does, a Waitress shows up. How do I make the event happen i.e. how can I trigger the Waitress to appear when the player examines the Menu? Also, is there a way to make a similar action happen when a player takes an object? Thanks for the help!
Read chapter 10, “Scenes”.
Thanks!
Scenes are a great idea for organizing what’s going on in your story, but a more general answer is that there are many ways to accomplish what you want, all of which boil down to placing the action in a rule somewhere. Perhaps I’m already pointing out the obvious, but here is a more ad-hoc approach:
[code]
After examining the menu for the first time:
cue the waitress.
To cue the waitress:
[your code for moving the waitress to the room (if not already present), and describing whatever you want her to do and say][/code]
You can do the same thing with your object(s), i.e., write a rule for “After taking the withered dahlia for the first time:”…
If the action applies every time (and not just the first) then drop that condition.
If you want to subvert the story’s default output for the action (i.e., printing up a description of the menu, or noting that the object in question has been taken), use a Before or Instead rule, rather than a After rule…and so on.
Having said that, scenes are a great tool for organizing rules when something new and significant is going on as a result of some change in your story state. Your waitress’ appearance may be a good candidate, since her presence may well dictate that you also do some other things differently while she is attending to the PC.
As I said before, lots of ways to go about things … which works best depends on the situation (Again, if Inform rules are all old hat to you, please forgive me for pointing out the obvious I just thought it might bear mentioning in case you’re a bit new to the whole Inform rule-based mechanics. )
I’ve read through the chapter on Scenes, and not only solved my issues, but created a few awesome scenes for my game. Thanks for the advice everyone.