[code] antiquinn fragment was Re: Simple warning :)

From: James T Browning (jbrownin@LCSC.EDU)
Date: 04/23/98


At 10:24 AM 4/19/98 +0200, Christoffer Lundberg <avatar@ORION.BODEN.SE> wrote:
>Quinn is a disease. His mind must be all twisted and whacked up. If he
>will not leave MUDs alone, we must do something drastic.
>
>Er, anyone seen an anti_quinn.patch.tar.gz ?
[much stuff chopped off]

SPECIAL(antiQuinn)
{
  int i;
  struct char_data *guard = (struct char_data *) me;
  char *buf1 = "the antiQuinn says 'not so fast buddy.' and blocks your
way.\r\n";
  char *buf2 = "the antiQuinn mutters at $n, and blocks $s way.";

  static int rounds=30;
  static inc clips=5;

  if (IS_AFFECTED(guard, AFF_BLIND))
    return FALSE;

  if ((!IS_NPC(ch) &&
CMD_IS("north")||CMD_IS("west")||CMD_IS("east")||CMD_IS("south")||CMD_IS("up
")||CMD_IS("down") {
    send_to_char(buf1, ch);
    act(buf2, FALSE, ch, 0, 0, TO_ROOM);
    return TRUE;
  }

  if (!cmd && GET_POS(ch) == POS_FIGHTING)
    {
     for (vict = world[ch->in_room].people; vict; vict = vict->next_in_room)
       if (FIGHTING(vict) == ch && !number(0, 4))
         break;

      if (vict == NULL)
        vict = FIGHTING(ch);

      act("$n screams 'Quinn is here!  DIE!  DIE!  DIE!'", FALSE, ch, 0, 0,
TO_ROOM);
      if(rounds>0)
        {
         cast_spell(ch, vict, NULL, SPELL_MAGIC_MISSILE);
         rounds--;
        }
      else {
         act("$n screams 'Dammit I'm out of rounds.'", FALSE, ch, 0, 0,
TO_ROOM);
         if(clips>0)
           {
            clips--;
            rounds+=30;
            act("$n quickly reloads the weapon.", FALSE, ch, 0, 0, TO_ROOM);
           } else {
            act("$n screams 'I'm out of clips too burn it..'", FALSE, ch, 0,
0, TO_ROOM);
           }
        }
      return TRUE;
     }

 switch(number(1,9)
 {
   case  1:
     act("$n asks 'Have you seen Quinn?'", FALSE, ch, 0, 0, TO_ROOM);
     act("$n says 'I am going to use him for target practice...'", FALSE,
ch, 0, 0, TO_ROOM);
     break;
   default:
     act("$n quickly scans the room, probably looking for Quinn.", FALSE,
ch, 0, 0, TO_ROOM);
 }
 return FALSE;
}

Well there is a defunct specproc to help deal with Quinn and all evil
computer vandals in the future.  I code poorly. If any one would please post
a revision I would be grateful.

Also I think that It could be greatly expanded upon...  Instead of just
blocking everyone it could block PCs based on name and/or their IP address.
Just my $0.01 worth.

(currently it is a merger of the specprocs from the guild gaurds, the magic
user and a litle from puff...)

Intelligence stikes back... Ouch that hurt.


     +------------------------------------------------------------+
     | 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