inherit "/std/monster";
create() {
::create();
set_name("descartes's ghost");
set_id( ({ "ghost","descartes","Descartes","Descartes's Ghost" }) );
set_short("Descartes's ghost");
set_aggressive( 0);
/*
set_speed(9);
set_moving(1);
*/
set_level(1);
set_long("This is an android ghost, rusted immobile by a sudden, unexpected mud-rain.\n");
set_alignment(400);
set_race( "undead");
set_gender("male");
set_max_hp(25);
set_hp(25);
add_limb("head", "FATAL", 25, 0, 4);
add_limb("torso", "FATAL", 50, 0, 4);
add_limb("right arm", "right hand", 20, 0, 4);
add_limb("right hand", "", 15, 0, 4);
add_limb("left arm", "left hand", 20, 0, 4);
add_limb("left hand", "", 15, 0, 4);
add_limb("right leg", "right foot", 25, 0, 4);
add_limb("right foot", "", 20, 0, 4);
add_limb("left leg", "left foot", 25, 0, 4);
add_limb("left foot", "", 20, 0, 4);
}
void catch_tell(string str) {
object ob;
string a, b, c;
if(sscanf(str, "%s gives %s to you", a, b) == 2) {
ob = present( lower_case(a), environment(this_object()));
if(ob) {
tell_object(ob, "The ghost thanks you for your generosity.\n");
tell_room(environment(this_object()), "The ghost thanks "+a+" for "+ob->query_possessive()+" generosity.\n", ({this_object(), ob}));
}
}
if(sscanf(str, "%ssmiles%s", a, b) == 2) tell_room(environment(this_object()), " Descartes, the immobile ghost, makes muffled meeping sounds.\n", ({this_object()}));
}