/
LIB3/
LIB3/D/ADMIN/
LIB3/D/ADMIN/OBJ/
LIB3/D/ADMIN/ROOM/W/
LIB3/D/HOME/
LIB3/D/HOME/CITY/ARENA/
LIB3/D/HOME/CITY/ITEMS/
LIB3/D/HOME/CITY/POSTOFFI/
LIB3/DOC/
LIB3/GLOBAL/SPECIAL/
LIB3/GLOBAL/VIRTUAL/
LIB3/NET/
LIB3/NET/CONFIG/
LIB3/NET/DAEMON/CHARS/
LIB3/NET/GOPHER/
LIB3/NET/INHERIT/
LIB3/NET/OBJ/
LIB3/NET/SAVE/
LIB3/NET/VIRTUAL/
LIB3/OBJ/B_DAY/
LIB3/OBJ/HANDLERS/TERM_TYP/
LIB3/PLAYERS/B/
LIB3/PLAYERS/N/
LIB3/ROOM/
LIB3/SAVE/
LIB3/SAVE/BOARDS/
LIB3/SAVE/ENVIRON/
LIB3/SAVE/POST/
LIB3/STD/COMMANDS/SHADOWS/
LIB3/STD/CREATOR/
LIB3/STD/DOM/
LIB3/STD/EFFECTS/
LIB3/STD/EFFECTS/HEALING/
LIB3/STD/EFFECTS/OTHER/
LIB3/STD/EFFECTS/POISONS/
LIB3/STD/ENVIRON/
LIB3/STD/GUILDS/
LIB3/STD/LIQUIDS/
LIB3/STD/ROOM/
LIB3/STD/TRIGGER/SHADOW/
LIB3/W/
LIB3/W/BANNOR/
LIB3/W/NEWSTYLE/
#include "path.h"
inherit "/obj/monster";

setup()
{
   set_name("dog");
   set_short("hungry-looking dog");
   add_adjective( ({"hungry", "looking", "hungry-looking"}) );
   set_race("dog");
   set_long("A dog with exceptionally large and dangerous-"
            +"looking dog. It glares balefully at you before "
            +"wandering off to sniff at some interesting "
            +"vegetation.\n");
   set_level(5+random(5));
   add_attack("bite", 0, 100, ({10, 2, 10}), ({ }), ({ }), "pierce");
   add_attack("pounce", 0, 50, ({10, 2, 20}), ({ }), ({ }), "blunt");
   set_gender(0);
   set_move_after(50);
  load_chat(20, ({
     1, "'Woof!.\n",
     1, ":sniffs the ground.\n",
     1, ":sniffs your feet and whimpers.\n",
     1, ":barks at a passerby.\n",
     1, "'Grrrrr!\n",
    }));
   load_a_chat(50, ({
     1, ":growls viciously at you.\n",
     1, ":tries to bite your jugular.\n",
     1, "'Grrrr!\n",
    }));
}

int write_message(int dam,object him,object me,string type,string attack)
{
   switch (attack)
   {
      case "bite" :
      say(me->query_cap_name()+" bites "+
         him->query_name()+".\n",him);
      tell_object(him,me->query_cap_name()+" bites you.\n");
      break;
      case "pounce" :
      say(me->query_cap_name()+" pounces on "+
         him->query_name()+".\n",him);
      tell_object(him,me->query_cap_name()+" pounces on you.\n");
      break;
      default :
      ::write_message(dam, him, me, type, attack);
      break;
   }
}

void init()
{
::init();
}

void eat_corpses()
{

object *corpses;
int i,j;

corpses = all_inventory(environment(this_object()));

if(!sizeof(corpses)) return;
j=1;
set_move_after(0, 0);

for(i=0;i<sizeof(corpses);i++)
if (corpses[i]->id("corpse"))
     {
     call_out("my_eat", j*10, corpses[i]);
     j++;
     }
j++;
call_out("set_move_after", j*10, 50);
}

my_eat(object corpse)
{
    say(this_object()->query_short()+" sniffs at "
       +corpse->query_short() +" before devouring it quickly.\n");
corpse->dest_me();
}