inherit "/lib/npc"; create() { ::create(); SetKeyName("descartes's ghost"); SetId( ({ "ghost","descartes","Descartes","Descartes's Ghost" }) ); SetShort("Descartes's ghost"); SetAggressive( 0); /* set_speed(9); set_moving(1); */ SetLevel(1); SetLong("This is an android ghost, rusted immobile by a sudden, unexpected mud-rain.\n"); SetMorality(400); SetRace( "wraith"); SetGender("male"); SetMaxHealthPoints(25); SetHealthPoints(25); AddLimb("head", "FATAL", 25, 0, 4); AddLimb("torso", "FATAL", 50, 0, 4); AddLimb("right arm", "right hand", 20, 0, 4); AddLimb("right hand", "", 15, 0, 4); AddLimb("left arm", "left hand", 20, 0, 4); AddLimb("left hand", "", 15, 0, 4); AddLimb("right leg", "right foot", 25, 0, 4); AddLimb("right foot", "", 20, 0, 4); AddLimb("left leg", "left foot", 25, 0, 4); AddLimb("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()})); }