Re: receptionist actions

From: Patrick Dughi (dughi@imaxx.net)
Date: 02/11/02


> > > Replying to myself: this is incorrect.  I assumed that when called by
> > > perform_violence(), the special procedure would have ch == FIGHTING(ch),
> > > but this is incorrect.  It's also unfortunate because it makes it
> > > impossible to differentiate between spec proc calls on mob and violence
> > > pulses.
> >
> >         I'm easily confused, but, I thought there were only ever 2
> > triggers for spec procs; by command, or by pulse.  All pulse (whether
> > moving, or casting 'poison' or the sort) happen in the mobile_activities()
> > loop.  The 'violence' pulses don't trigger mob spec procs.
> >
> >         Unless that changed.
> >
> Cut from perform_violence(), fight.c: bpl20 (actually the same snip dak
> used)
>
>     hit(ch, FIGHTING(ch), TYPE_UNDEFINED);
>     if (MOB_FLAGGED(ch, MOB_SPEC) && mob_index[GET_MOB_RNUM(ch)].func !=
> NULL) {
>       char actbuf[MAX_INPUT_LENGTH] = "";
>       (mob_index[GET_MOB_RNUM(ch)].func) (ch, ch, 0, actbuf);
>
> This is actually the part where snakes bite, mages cast, etc. when fighting.
>
> And, as a side note that change happened long ago (at least before bpl16,
> which was when I entered the Circle community).
>
        Ack, You're right.

        In recent versions, I always rewrite the perform_violence loop,
and now that you bring it up - I always remove that call from the interior
loop because it is so prone to causing crashes.  Much of the perform
violence loop was ... difficult .. to say the least :)

        *watches another newbie put in non-functional multi-hit code*

        Ohwell, time to update that documentation I wrote so it's valid ;)

                                        PjD

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   | Newbie List:  http://groups.yahoo.com/group/circle-newbies/   |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 06/25/03 PDT