Here. If you can't make sense of The Pixie's help suggestion...
I found an easier way - I've never done this in any of my big games.
<object name="Converation Room">
<inherit name="editor_room" />
<object name="Iggy">
<inherit name="editor_object" />
<inherit name="namedmale" />
<inherit name="editor_player" />
<feature_player />
<attr name="pov_look">You are Iggy. Iggy is inquisitive.</attr>
<scenery />
</object>
<object name="Queen Quabble">
<inherit name="editor_object" />
<inherit name="namedfemale" />
<look>Queen Quabble is she. Queen Quabble quickly keys in on questions. She like quilts, quinoa, and Quiditch. She does not like quakes, quaffing, or quizzes. Ask her questions.</look>
<speak>"Please ask me questions. Quickly, quickly," she quips.</speak>
<ask type="scriptdictionary">
<item key="quiz quizzes">
msg ("\"Do NOT quiz the Queen!! Quit it!\"")
</item>
<item key="quinoa">
msg ("\"Oooh,\" she grins. \"Quinoa! I love to quench my hunger with quinoa!")
</item>
<item key="quakes quake">
msg ("\"The quakes are dreadful. They quickly contorted my Queen's Castle!\"")
</item>
<item key="quilts">
msg ("\"Ahhh... Quilts are cozy.\"")
</item>
<item key="quaff quaffing">
msg ("\"Oh, those quaffers quick to quack while quaffing. There are enough quackers in the moat. Quaffing is bad!\"")
</item>
<item key="Quiditch quiditch">
msg ("\"Oh, Harry,\" she smiles. \"Quiditch is quite pleasing!\"")
</item>
<item key="quantumphysics quantum physics">
if (GetBoolean(Queen Quabble, "quantum")) {
msg ("\"Oooh! I love Quantum Physics! I squabbled with Professor Quigley about that at Oxford!\"")
}
else {
msg ("\"Do not speak to me of such matters until you have done your research!\"")
}
</item>
<item key="quill quills">
if (GetBoolean(Queen Quabble, "quills")) {
msg ("\"Quills are quite extraordinary! Quick penmanship is crucial!\"")
}
else {
msg ("\"Shut your mouth when speaking to me! Quit, quit!\"")
}
</item>
<item key="qat qats kat kats">
if (GetBoolean(Queen Quabble, "qats")) {
msg ("\"Ah... Qats. Shrubbery local to the Arab and African countries. I like them put would not quaffle the products created from them!\"")
}
else {
msg ("\"No, no, no! Do not speak of those until you have adequately quenched you qat thirst!\"")
}
</item>
</ask>
</object>
<exit alias="north" to="Research Room">
<inherit name="northdirection" />
</exit>
</object>
<object name="Research Room">
<inherit name="editor_room" />
<object name="Green Book">
<inherit name="editor_object" />
<read type="script">
msg ("You pick up the green book and give it a quick read. It's all about quills! You should ask the queen about it!")
SetObjectFlagOn (Queen Quabble, "quills")
</read>
<look type="script">
msg ("You should read it!")
</look>
<takemsg>No. Just read it!</takemsg>
</object>
<object name="Red Book">
<inherit name="editor_object" />
<look type="script">
msg ("You should read it!")
</look>
<takemsg>No. Just read it!</takemsg>
<read type="script">
msg ("You pick up the red book and read it. This book is all about qats. You should ask the Queen about it!")
SetObjectFlagOn (Queen Quabble, "qats")
</read>
</object>
<object name="Blue Book">
<inherit name="editor_object" />
<look type="script">
msg ("You should read it!")
</look>
<takemsg>No. Just read it!</takemsg>
<read type="script">
msg ("You pick up the blue book and read it. It's all about Quantum Physics. You should ask the Queen about it.")
SetObjectFlagOn (Queen Quabble, "quantum")
</read>
</object>
<exit alias="south" to="Converation Room">
<inherit name="southdirection" />
</exit>
</object>
When an event happens that I want to trigger a new conversation topic, I just set a flag on the NPC and named it that topic I want to be able to ask about. Then, I used an 'If' statement for that topic to get the desired response. Again, if you can follow Pixie's advice, do that. If not, use this. It was quite easy. Ask if you have questions.
Good luck.
XanMag