Hi, All! Here is teleport spell from RMUD. It teleports caster to random room in same zone. It requires no other code changes (just set in spell_parser that SPELL_TELEPORT requires no arguments) and it doesn't takes much CPU time. Maybe you'll want to add some deathtrap or godroom checks to it... ASPELL(spell_teleport) { int to_room = 0, counter = 0, room; for (room = ch->in_room; room > NOWHERE && world[ch->in_room].number / 100 == world[room].number / 100; room--) if (number(1, ++counter) == 1) to_room = room; for (room = ch->in_room + 1; room <= top_of_world && world[ch->in_room].number / 100 == world[room].number / 100; room++) if (number(1, ++counter) == 1) to_room = room; if (!to_room) return; act("$n disappears. [Change this msg]", FALSE, ch, 0, 0, TO_ROOM); char_from_room(ch); char_to_room(ch, to_room); act("$n appears. [Change this msg]", FALSE, ch, 0, 0, TO_ROOM); look_at_room(ch, 0); } Btw, is it worth to be made stock? Andrey (andrey@alex-ua.com) aka Zmey // RMUD +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST