/
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/
inherit "inherit/monster";

void reset(status arg) {
  ::reset(arg);
  if(arg) return;
  set_name("koala");
  set_short("A cuddly koala");
  set_long(
    "This little warm and cuddly creature sits here eating away \n"+
    "at the gum leaves in the tree, which are its only source of \n"+
    "food. This little critter looks like he needs a cuddle!\n");
  set_gender(random(2) + 1);
  set_level(1);
  set_race("marsupial");
  set_wc(5);
  set_ac(3);
  set_hp(50);
  load_chat(5,({ "Koala smiles sleepily.\n",
    "Koala reaches out for a cuddle.\n",
    "Koala gives you a cuddle.\n",
    "Koala snuggles up to you.\n",
    "Koala looks down at the ground way below.\n",
    "Koala munches on some nearby gum leaves.\n",
    "Koala dozes off.\n",
    "Koala snores as it falls off to sleep.\n",
  }));
  load_a_chat(9,({ "Koala cries out in pain!\n",
    "Koala tries to climb up high in the tree.\n",
    "Koala tries to climb down the tree to get away.\n",
    "Koala cries helplessly.\n",
   }));
   set_dead_ob(this_object());
  set_wander(10,360);
  move_object(clone_object("obj/soul"),this_object());
}

void monster_died() {
  object obj;
  tell_room(environment(), "Koala falls out of the tree.\n");
  obj = present("corpse");
  if(obj) destruct(obj);
}

void init() {
  ::init();
  add_action("cuddle", "cuddle");
  add_action("cuddle", "kiss");
  add_action("cuddle", "french");
  add_action("cuddle", "snuggle");
  add_action("cuddle", "hug");
}

void cuddle(string str) {
  string tmp1, tmp2;
  string name;
  string verb;
  verb = query_verb();
  name = lower_case((string)this_player()->query_name());
  if(!random(5)) name += " sleepily";
  if(sscanf(str, "%skoala%s", tmp1, tmp2)) 
    command(verb+" "+name, this_object());
}