Room with a Door

// Petrarch // a room with a locked exit. // we change the exits around a little but still use the same basic // room. // NOTE: you need a "wood key" to open the door // NOTE: notice you inherit VAULT and not ROOM // NOTE: in this case /realms/petrarch/forest/tree.c must contain the line... // set_door("door", "/realms/petrarch/forest/f_room2.c", "out", "wood key"); // and must also inherit VAULT instead of ROOM. #include <std.h> inherit VAULT; int forest_check(); void create() { ::create(); set_short("lost in a forest"); set_day_long("This section of the forest is overgrown with tall " "trees that stretch to the sky. They block out almost " "all sunlight from above making it rather dark as well " "as drop the occassional leaf to the ground."); set_night_long("The forest is nearly completely dark. Any light " "from the moons or stars is completely blocked out from " "the tall overhanging trees."); set_items(([ "forest" : "The forest is thich with trees.", "sky" : "The sky can barely be seen though the tall trees.", "ground" : "The ground is littered with leaves and twigs from " "the tree braches above.", ({"leaves", "leaf", "twig", "twigs", "brach", "bracnches"}): "Leaves and twigs litter the ground.", ({"trees"}) : "The trees stretch high into the sky. One in " "particular is very large.", ({"tree", "large tree"}): "The largest tree here must be hundreds " "of years old. There is a giant hole in it, large enough " "to fit though even.", "hole":"It's large enough to enter.", ])); set_properties(([ "light" : 1, "night light" : 0, ])); set_exits(([ "south" : "/realms/petrarch/forest/f_room3.c", "north" : "/realms/petrarch/forest/f_room1.c", "tree" : "/realms/petrarch/forest/f_room5.c", ])); add_invis_exit("tree"); set_door("door", "/realms/petrarch/forest/tree", "tree", "wood key"); set_string("door", "open", "The wooden door on the tree creaks loudly.\n"); } void reset() { set_open("door", 0); set_locked("door", 1); "/realms/petrarch/forest/tree"->set_open("door", 0); "/realms/petrarch/forest/tree"->set_locked("door", 1); }