Re: send_to_charf, Take 2

From: George Greer (greerga@circlemud.org)
Date: 07/10/01


On Mon, 9 Jul 2001, Peter Ajamian wrote:

>> Where does the pointer of the person to send the
>> message to go for a static string with actf?
>
>Use format parameters.  The parameters get discarded in the string, but
>they are used to indicate the placement of targets in the arg list.
>Then, you narrow your target list to the following:

  actf(TO_CHAR, 0, "You are hungry.\r\n", ch);
  actf(TO_ROOM, 0, "$n is hungry.\r\n", ch);

That's a bit of abuse of variable arguments, no? Not that we could use GCC
printf format checking anyway due to handling $-style parameters ourselves.

>TO_CHAR, TO_NOTCHAR, TO_ROOM, TO_OUTDOOR, TO_ALL

I don't remember if VICT=CHAR, but if so we can dump it.

flags := ( TO_INVIS | TO_NOT | TO_SLEEP )
target = ( TO_CHAR, TO_ROOM, TO_OUTDOOR, TO_ALL )

  TO_NOTCHAR = TO_NOT, TO_CHAR
  TO_INDOOR = TO_NOT, TO_OUTDOOR
  TO_NOBODY = TO_NOT, TO_ALL (admittedly useless)

Should probably also have a "TO_ZONE".

Actually, TO_OUTDOOR should probably be a flag as well, leaving CHAR, ROOM,
ZONE, ALL as the only real targets.

--
George Greer
greerga@circlemud.org

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/06/01 PST