mud/lib/domains/town/room/gate.c
2020-09-06 05:43:07 -07:00

71 lines
3.0 KiB
C

#include <lib.h>
inherit LIB_ROOM;
int maxnoob = MAX_NEWBIE_LEVEL;
int PreExit(){
object guard = present("gate guard",this_object());
if(!MAX_NEWBIE_LEVEL) maxnoob = 3;
if(((MAX_NEWBIE_LEVEL && !newbiep(this_player())) ||
this_player()->GetLevel() > maxnoob) &&
(!this_player()->GetInvis() && !creatorp(this_player()) &&
!present("testchar badge",this_player()))){
if(guard && living(guard)){
present("gate guard",this_object())->eventForce("say You're too big to slip by me now. You're not going to the mansion any more.");
return 0;
}
}
if((newbiep(this_player()) || this_player()->GetLevel() <= maxnoob)
&& guard && living(guard)){
tell_object(this_player(),"You are such a newbie that the gate guard doesn't even notice you slip by him.");
tell_room(this_object(),this_player()->GetName()+" sneaks past the gate guard.",({ this_player() }) );
}
return 1;
}
static void create() {
room::create();
SetClimate("outdoors");
SetAmbientLight(30);
SetShort("Mansion Gate");
SetLong("You are standing just north of the gate to a large, "+
"beautiful mansion, which stands to the south. The "+
"Corinthian capitals on the front pillars bespeak "+
"of the wealth and importance of the person who "+
"lives here. Lush ivy wraps around the gate and the "+
"brick wall surrounding the estate.");
SetItems( ([
"gate" : "A handsome, wrought-iron entry control point.",
({"estate", "mansion"}) : "The grounds of a mansion are to the south.",
({"capital","capitals","corinthian capital","corinthian capitals"}) :
"These are the headpieces of the pillars supporting the "
"mansion's front overhang. The beautifully detailed "
"carvings of encanthus leaves distinguish them as "
"Corinthian.",
({"overhang","front overhang"}) : "A fancy and unnecessary "
"structure in front of the mansion supported by "
"columns.",
({"pillar","pillars","column","columns"}) : "Load-bearing "
"structures supporting the mansion's front overhang.",
({"ivy","lush ivy"}) : "Vines of the ivy plant run "
"over and along the walls and gate, so thickly that "
"they nearly obscure them.",
({"wall","walls"}) : "Architectural features which prevent "
"casual entry. They are made of brick and appear old "
"and strong.",
]) );
SetSkyDomain("town");
SetExits( ([
"north" : "/domains/town/room/road2.c",
]) );
SetInventory(([
"/domains/town/npc/mp" : ({ 3600, 1 }),
]));
AddExit("south", "/domains/town/room/mansion_ext", (: PreExit :));
AddItem(new("/domains/town/obj/lamp"));
SetProperty("no attack", 1);
}
void init(){
::init();
}