CFDialog.py driven conversation (the conversation was created before the
author knew about CFDialog or how to use it, but it was too large to put
into @match as it caused a server crash). This dialog is structured, but
state is not tracked due the informational nature of the conversation.
The NPC drops some hints about things in Scorn that a new player might
want to check out. There are no spoilers, but it may serve to help a new
player find out about some things about scorn that the author did not
discover for ages.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10638 282e977c-c81d-0410-88c4-b93c2d0d6712
needed by a particular rule. For the inexperienced, this was a showstopper.
- Dispense with the user defined exception and replace the old handling with a
more effective debug log message combined with a generic exception.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10636 282e977c-c81d-0410-88c4-b93c2d0d6712
conditions (by supplying and empty list).
- Add exception handling to matchConditions() and setConditions() and output
a debug log message to facilitate debugging broken dialogs when the rules
contain malformed condition lists.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10635 282e977c-c81d-0410-88c4-b93c2d0d6712
delimited string for consistency and to reduce the need to specially parse the
string. There seems no particular reason to stay with the "|" delimiter (and
@match use of it does not seem compelling enough to override the benefit of
removing the oddball parameter from both CFDialog.py and npc_dialog.py scripts.
This commit also updates every known dialog that is affected. Also updated
are the comments in both dialog scripts to reflect the change. In CFDialog.py
also pluralize some identifers to better reflect that they are used for lists.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10469 282e977c-c81d-0410-88c4-b93c2d0d6712
npc_dialog.py conversation can be made player friendly by using multiple
precondition flag values. Without using this capability, conversation paths
can tend to be too linear or rigid and therefore produce unnecessary player
frustratation.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10467 282e977c-c81d-0410-88c4-b93c2d0d6712
formatting changes to improve the consistency of the class structure. No
functional changes made.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10466 282e977c-c81d-0410-88c4-b93c2d0d6712
precondition values and overlooked the fact that the precondition syntax was
already defined to be a list that could contain multiple values without
resorting to packing them into a single string. This modification dispenses
with the prior un-pythonic enhancement to CFDialog, and establishes a format
that is more consistent with the rest of the rule structure. As a result of
this change, Gork's conversation is also updated to work with the new version.
A dependent script ./misc/npc_dialog.py remains unaffected by this change.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10465 282e977c-c81d-0410-88c4-b93c2d0d6712
content, and make the conversation a lot more flexible so it is not necessary
to reset from the beginning so much.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10432 282e977c-c81d-0410-88c4-b93c2d0d6712
AND. To follow precedent of using "|" in the match string (in both CFDialog
and @match), use it as a delimiter inside the prefunction value. The value
add is particularly that one can design conversations to loop back into
prior states without requiring the conversation to reset and start back
at the beginning.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10428 282e977c-c81d-0410-88c4-b93c2d0d6712
the player says to lowercase before checking for a match.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@10421 282e977c-c81d-0410-88c4-b93c2d0d6712