/*** Light object ***/ #include "/std/include/std.h" #include "defines.h" int level; set_level(l) { level = l; } set_duration(d) { int i, j; object en; if (level < 0) en = ENV; else en = EN(ENV); call_out("dispel",d); i = set_light(0); j = set_light(level); if (i <= 0 && j > 0) tell_room(en, "A glowing ball lights up the room.\n"); else if (i > 1 && j <= 0) tell_room(en, "A cloak of darkness falls upon you.\n"); return level; } dispel() { int i, j; i = set_light(0); j = set_light(-level); if (i <= 0 && j > 0) say("The darkness dissolves. You can see again.\n"); else if (i > 1 && j <= 0) say("The light from the globe fades away, leaving you in the darkness.\n"); destruct(this_object()); } extra_look() { if(level < 1) return; return CAP(ENV->QPRO) + " has a glowing sphere of light at " + ENV->QPOS + " side"; }