/* Giant Spider * * Gototh * * 20/10/97 */ #define POISON_EFFECT "/std/effects/poisons/spider_venom" inherit "/std/races/arachnid"; void setup() { set_name( "spider" ); set_long( "A large, poisonous, hairy spider.\n" ); set_desc( "a giant arachnid" ); set_height( 150 ); set_weight( 2000 ); add_bit( "silk gland", "gland", ({ "abdomen", 10, ({"/std/bit", 1, 400}) }) ); add_bit( "poison gland", "gland", ({ "cephalothorax", 5, ({"/std/bit", 1, 400}) }) ); set_stats( ({ 10, -4, -6, 12, -4 }) ); } /* setup() */ void set_unarmed_attacks( object thing ) { thing->remove_attack( "hands" ); thing->remove_attack( "feet" ); thing->remove_attack( "standard" ); thing->remove_attack( "bite" ); thing->remove_attack( "chew" ); thing->add_attack( "bite", 80, ({70, 5, 10}), "pierce", "unarmed", ({ "poison", this_object() }) ); thing->add_attack( "chew", 100, ({2, 2, 150}), "sharp", "unarmed", 0 ); thing->set_combat_response("dodge"); thing->set_combat_attitude("offensive"); } /* set_unarmed_attacks() */ void poison( int damage, object him, object me, string a_type, string a_name ) { tell_object( me, "You sink your fangs into " + him->one_short() + ", injecting " + him->query_objective() + " with venom.\n" ); tell_object( him, me->one_short() + " sinks " + me->query_possessive() + " fangs into you! You seethe in agony.\n" ); tell_room( environment( me ), me->one_short() + " viciously sinks " + me->query_possessive() + " fangs into " + him->one_short() + ", who " "seethes in agony!\n", ({ me, him }) ); him->add_effect( POISON_EFFECT, 100 ); } /* poison() */