lpmud/mudlib/
lpmud/mudlib/doc/
lpmud/mudlib/doc/LPC/
lpmud/mudlib/log/
lpmud/mudlib/players/
lpmud/mudlib/room/maze1/
lpmud/mudlib/room/sub/
#include "../std.h"

string rope;

#undef EXTRA_INIT
#define EXTRA_INIT\
    add_action("down"); add_verb("down");\
    add_action("down"); add_verb("climb");

#undef EXTRA_LONG
#define EXTRA_LONG\
    if (str == "ring" || str == "rings") {\
	write("A sturdy iron ring, fastened to the wall.\n");\
	return;\
    } else\
    if (str == "hole") {\
	write("You can barely make out the floor about 10 meters down.\n");\
	write("The walls of the hole are very smooth and offer no handholds.\n");\
	return;\
    }

TWO_EXIT("room/mine/tunnel2", "south",
	 "room/mine/tunnel4", "north",
	 "Hole",
	 "There is a big hole here, and some kind of iron ring in the wall.\n" +
	 "It should be possible to walk around the hole.\n", 0)

down() {
    if (!rope) {
        write("You would fall down the hole and probably hurt yourself.\n");
	return 1;
    }
    call_other(this_player(), "move_player", "down#room/mine/tunnel8");
    return 1;
}

tie(str)
{
    if (str != "ring" && str != "rings")
        return 0;
    rope = 1;
    return 1;
}

id(str) {
    return str == "ring" || str == "rings" || str == "hole";
}

untie(str) {
    rope = 0;
    return 1;
}

query_rope() {
    return rope;
}