/
lib/banish/
lib/d/
lib/doc/
lib/doc/domains/
lib/doc/efun/
lib/doc/examples/
lib/doc/examples/armour/
lib/doc/examples/contain/
lib/doc/examples/food/
lib/doc/examples/magic/
lib/doc/examples/monster/
lib/doc/examples/room/
lib/doc/examples/weapons/
lib/function/
lib/include/
lib/include/fn_specs/
lib/include/skills/
lib/info/
lib/inherit/base/
lib/log/
lib/manuals/312/
lib/news/
lib/obj/party/
lib/objects/components/
lib/open/
lib/open/library/
lib/open/party/
lib/players/
lib/players/zilanthius/
lib/room/
lib/room/city/arena/
lib/room/city/creator/
lib/room/city/garden/monst/
lib/room/city/obj/
lib/room/city/shop/
lib/room/death/
lib/room/registry/
lib/secure/
lib/secure/UDP_CMD_DIR/
lib/skills/
lib/skills/fighter/
lib/skills/thief/
lib/usr/
lib/usr/creators/
lib/usr/players/
/* This monster has a self destructing corpse. */
/* That is, it leaves no corpse when it dies.  */
/* Author : Goosestep                          */

inherit "inherit/monster";

void reset(status arg) {
  ::reset(arg);
  if(arg) return;
  set_name("cat");
  set_alias("demon");
  set_short("Alley Cat");
  set_long(
   "This cat is perhaps a little large and well fed to be an alley\n"+
   "cat. It's black coat has a glossy sheen, and it's eyes are red.\n"+
   "It looks like it means to do violence to you.\n\n");
  set_level(9);
  set_race("cat");
  load_chat(10,   ({ "Meow.\n", }));
  load_a_chat(20, ({ "MEOW!\n", }));
  set_random_pick(100);
  set_attack_msg(({
    "hits",      "weakly",
    "scratches", "on the leg",
    "scratches", "on the arm",
    "bites",     "on the hand",
    "claws",     "across the face",
    "rakes",     "across the abdomen",
    "massacres", "with it's claws",
  }));
  set_magic_resist(50);       /* 50% chance to resist any spell */
  set_aggressive(1);          /* fights players entering room */
  set_dead_ob(this_object()); /* set up to call monster_died() function */
}


/* if monster_died() returns 1, then the monster will not destruct
   itself. But remember that it would have hp < 0, and the fight
   stops. You should return 0 for normal operation.
 */

status monster_died() {
  object corpse;

  tell_room(environment(),
  "The cat falls to the ground and dissipates in a cloud of greasy smoke.\n");
  if((corpse = present("corpse",environment()))) destruct(corpse);
  return 0;
}