> The problem with the way it is now is that there is only one A-desc. > From the way that I've been doing things you need three. One for > TO_CHAR, one for TO_VICT and one for TO_NOTVICT. Of course, the > TO_VICT would be skipped if ch == vict. That way you can have proper > A-descs for wands, scrolls and other items that can be targeted on > others. I think someone (Erwin?) suggested a method for having a single act() (or work-alike) function that can handle all TO_CHAR, TO_VICT, and TO_NOTVICT with a single message that has some extra codes to it. So, to use an example (I use multi-character act codes because they are clearer, even though they aren't stock-Circle): gen_act("$(actor) dance@s on $(poss_vict) grave.", ...); The gen_act() procedure would then interpret the three codes "$(actor)" "@s" and "$(poss_vict)". The first, "$(actor)," would be replaced with the actor's name or, when we are sending the message to the actor, with "you". The "@s" is a special code that would add "s" if we are /NOT/ sending the message to the actor at the time (are sending it to either victim or room). And the "$(poss_vict)" is the possessive form of the victim's name ("Daniel's") or the word, "your," when to==vict. So, the following three messages are generated from the above: to==actor: You dance on Daniel's grave. to==vict : Veronica dances on your grave. else : Veronica dances on Daniel's grave. There will probably be other required "@" like codes to generate proper grammar (though the past tense, in general, is easy ["You danced", "Veronica danced"]). -dak +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST