lpmud/mudlib/
lpmud/mudlib/doc/
lpmud/mudlib/doc/LPC/
lpmud/mudlib/log/
lpmud/mudlib/players/
lpmud/mudlib/room/maze1/
lpmud/mudlib/room/sub/
/* Nasty monster that starts in the forrest. */
#include "living.h"

reset(arg)
{
    if (arg)
       return;
    set_heart_beat(1);
    weapon_class = 12;
    max_hp = 100;
    hit_point = 100;
    level = 8;
    experience = 17000;
    is_npc = 1;
    name = "troll";
    cap_name = "Troll";
    alignment = -60;
    enable_commands();
}

short() {
    return "A troll";
}

long() {
    write("A big troll.\n");
    if (hit_point > max_hp - 20)
       write("It seems to be in a good shape.\n");
}

id(str) { return str == name; }

heart_beat()
{
    object ob;
    age += 1;
    if (attacker_ob && random(5) == 0)
	tell_object(attacker_ob, "troll says: your mother was a bitch!\n");
    attack();
    if (attacker_ob || random(5))
       return;
    ob = first_inventory(environment(this_object()));
    while(ob) {
       if (ob != this_object() && living(ob) && !call_other(ob, "query_ghost"))
       {
           attack_object(ob);
           say(name + " attacks " + call_other(ob, "query_name", 0) +
               " viciously.\n");
           return;
       }
       ob = next_inventory(ob);
    }
}

can_put_and_get(str)
{
    if (!str) {
        write(name + " says: Over my dead body.\n");
       return 0;
    }
    return 1;
}

catch_tell(str)
{
    string who, extra;

    if (sscanf(str, "%s arrives%s", who, extra) == 2)
	test_if_any_here();
}