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