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
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
Useful when coupled with scripts to write "bring me back something" quests.
Add support for the "give" command to the Mad Mage, with a generic "show me and
I'll talk" kind of system.
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@8018 282e977c-c81d-0410-88c4-b93c2d0d6712
easily in maps, update newbie house so the wise sigmund
can provide more interactive support to players
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@7968 282e977c-c81d-0410-88c4-b93c2d0d6712
updated existing script to use JSON notation
added a "replace in all map" script
added a test map
updated test maps to JSON notation
added helper tools: CFTimeOfDay and CFMapTransformer
fixed warnings in gridarta
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@7546 282e977c-c81d-0410-88c4-b93c2d0d6712
The demo "werebeast" is based on beholder transforming into black dragon
Updated sage opening door message
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@7519 282e977c-c81d-0410-88c4-b93c2d0d6712
Those 4 script can be used as filter or triggerer based on current time.
See test/tod for a demo map (conditionnal magic mouth, weapons that
attack only at day/night, grates that open in morning and close at dusk)
git-svn-id: svn://svn.code.sf.net/p/crossfire/code/maps/trunk@7509 282e977c-c81d-0410-88c4-b93c2d0d6712