use the real_room() function to turn your Vnumed rooms, into Rnumed rooms > > void do_teleports(void) > > { > > struct char_data *vict, *next_v; > > int i; > > for (i = 1; i < NUM_TELEPORT_ROOMS; i++) > Two things. Your exit condition and your i increment are > reversed (causing i to increase without bound). Also, the first element > of the array is 0, not 1. Try this. > > for (i = 0; i++; i < NUM_TELEPORT_ROOMS) > > > > for (vict = world[teleport_rooms[i].zstart].people; vict; vict = next_v) { should be: for (vict = world[real_room(teleport_rooms[i].zstart].people; vict; vict = next_vict) > > next_v = vict->next_in_room; > > char_from_room(vict); > > char_to_room(vict, teleport_rooms[i].zdest); and this should be: char_to_room(vict, real_room(teleport_rooms[i].zdest); > > } > > } > > }
This archive was generated by hypermail 2b30 : 12/07/00 PST