mud/lib/domains/Praxis/obj/mon/spider.c
2020-09-06 05:43:07 -07:00

58 lines
1.8 KiB
C

// /domains/Praxis/obj/mon/spider.c
// Semi-Random spiders for the Pit of Spiders
// Part of the Mortal Law system at Nightmare
// Created by Manny@Nightmare 940831
#include <lib.h>
inherit LIB_NPC;
create() {
::create();
SetKeyName("spider");
switch(random(5)) {
case 0:
SetId( ({ "spider", "leaper", "black leaper" }) );
SetShort("Black Leaper");
SetLong("There are few spiders larger and more greusome than "
"the infamous Black Leaper..");
SetLevel(20);
break;
case 1:
case 2:
SetId( ({ "spider", "timber spider", "giant timber spider" }) );
SetShort("Giant Timber Spider");
SetLong("A very large and ugly grey spider. It looks quite "
"hungry.");
SetLevel(random(3)+12);
break;
default:
SetId( ({ "spider", "cave spider" }) );
SetShort("Praxis cave spider");
SetLong("A medium-sized black spider with a cresent-shaped "
"moon on its tail end.");
SetLevel(random(3)+8);
break;
}
SetRace("insect");
SetGender("male");
SetAggressive(999999);
SetDie( (:"death_func":) );
}
int death_func() {
message("say", "%^RED%^"+this_object()->query_name()+" squeals out "
"a loud shreak, then falls dead.", environment(this_object()));
if(!present("spider", environment(this_object()))) {
int x;
message("say", "%^RED%^You notice additional spiders "
"creeping in from cracks at the base of the pit!",
environment(this_object()));
for(x=0; x<10; ++x) {
new("/"+__DIR__+"obj/mon/spider")->move(environment(this_object()));
}
}
return 1;
}