void set_floor(int x) { destination = x; tell_room(this_object(), "The elevator starts moving.\n"); switch (location) { case 0: open = "closed"; remove_exit("east"); break; case 1: open = "open"; remove_exit("east"); add_exit("east", DIR + "/rooms/wiz_hall.c"); break; case 2: open = "open"; remove_exit("east"); add_exit("east", DIR + "/rooms/church.c"); break; case 3: remove_exit("east"); add_exit("east", DIR + "/rooms/attic.c"); open = "open"; break; } }
void set_floor(int x) { destination = x; switch (location) { case 0: open = "closed"; remove_exit("east"); break; case 1: open = "open"; remove_exit("east"); add_exit("east", DIR + "/rooms/wiz_hall.c"); break; case 2: open = "open"; remove_exit("east"); add_exit("east", DIR + "/rooms/church.c"); break; case 3: remove_exit("east"); add_exit("east", DIR + "/rooms/attic.c"); open = "open"; break; } }
/* * Function name: load_room * Description : Finds a room object for a given array index. * Arguments : int index - of the file name entry in the room_exits array. * Returns : object - pointer to the room corresponding to the argument * or 0 if not found. */ object load_room(int index) { mixed droom; string err; object ob; droom = check_call(room_exits[index]); if (objectp(droom)) { return droom; } /* Handle linkrooms that get destructed, bad wizard... baa-aad wizard. */ if (!stringp(droom)) { remove_exit(room_exits[index + 1]); this_player()->move_living("X", query_link_master()); return 0; } ob = find_object(droom); if (objectp(ob)) { return ob; } if (err = LOAD_ERR(droom)) { SECURITY->log_loaderr(droom, environment(this_object()), room_exits[index + 1], this_object(), err); write("Err in load:" + err + " <" + droom + ">\nPlease make a bugreport about this.\n"); return 0; } return find_object(droom); }
void reset() { ::reset(); remove_exit("out"); }