// town_guard.c
// A pursuing monster. That is, if you are in combat with him, and
// you leave, he'll go after you. You can lose him if you run fast
// enough but otherwise he's pretty lethal.
// Also, if A attacks B, then the guard will attack A.
// Comments on monster properties are found in /obj/foobird.c
// Written by Mobydick, 6-20-93.
#include <mudlib.h>
inherit MONSTER ;
void create () {
object ob1, ob2, ob3 ;
::create() ;
seteuid(getuid()) ;
set ("short", "a guard") ;
set ("long", "He wears the livery of the Footown Police.\n") ;
set ("id", ({ "guard", "town guard" }) ) ;
set_name ("guard") ;
set ("gender", "male") ;
ob1 = clone_object ("/obj/sword") ;
ob1 -> move (this_object()) ;
wield_weapon(ob1) ;
ob2 = clone_object("/obj/shield") ;
ob2 -> move (this_object()) ;
equip_armor (ob2) ;
ob3 = clone_object("/obj/chainmail") ;
ob3 -> move (this_object()) ;
equip_armor(ob3) ;
set_living_name("guard") ;
set ("hit_points", 40) ;
set ("max_hp",40) ;
set ("attack_strength", 5) ;
set ("damage", ({ 1,4 }) ) ;
set ("weapon_name", "fists") ;
set ("stat/strength", 13) ;
set ("stat/dexterity", 11) ;
set_skill("attack", 3, "strength") ;
set_skill("defense", 8, "dexterity") ;
set ("pursuing", 1) ;
set ("inquiry", ([
"guarding" : "My job is to prevent people from attacking each other.",
"attacking" : "If you attack someone, I will attack you, and chase you.",
"footown" : "Footown is a very nice place, where people don't attack each other." ,
"livery" : "It's not very nice fabric but it's an attractive color."
]) ) ;
set_verbs( ({ "poke at", "swing at", "swipe at" }) ) ;
}
void relay_message(string Class, string str) {
string attacker, victim ;
object fellow ;
if (str && sscanf(str,"%s attacks %s",attacker,victim)) {
if (sizeof(attackers)==0) {
fellow = find_living(lower_case(attacker)) ;
if (fellow) {
kill_ob(fellow) ;
tell_object(fellow,"The guard attacks you!\n") ;
say ("The guard attacks "+fellow->query("cap_name")+
"!\n") ;
}
}
}
::relay_message (Class, str) ;
}