ACMD(do_recall)
{
extern sh_int r_mortal_start_room;
if (IS_NPC(ch)) {
send_to_char("Monsters can't recall!!\r\n", ch);
return;
}
if (GET_LEVEL(ch) <= 10) {
send_to_char("Recalling for FREE, courtesy of Newbie
Transportation...\r\n", ch);
act("$n concentrates and disappears.", TRUE, ch, 0, 0, TO_ROOM);
char_from_room(ch);
char_to_room(ch, r_mortal_start_room);
act("$n appears suddenly.", TRUE, ch, 0, 0, TO_ROOM);
look_at_room(ch, 0);
return;
}
else {
send_to_char("Recalling for 200 gold per level...\r\n", ch);
if (GET_GOLD(ch) < (GET_LEVEL(ch) * 200))
{
send_to_char("You don't have enough gold!\r\n", ch);
act("$n tries to recall, but fails\r\n", FALSE, ch, 0, 0, TO_ROOM);
return;
}
else {
GET_GOLD(ch) -= (GET_LEVEL(ch) * 200);
act("$n concentrates and disappears.", TRUE, ch, 0, 0, TO_ROOM);
char_from_room(ch);
char_to_room(ch, r_mortal_start_room);
act("$n appears suddenly.", TRUE, ch, 0, 0, TO_ROOM);
look_at_room(ch, 0);
return;
}
}
}
Is the actual code but I want level 91+ to recall to 1203 for free and
level 99 to recall to room 503 for free... Here's a code I tried and didn't
work, what am I doing wrong?:
ACMD(do_recall)
{
extern sh_int r_mortal_start_room;
if (IS_NPC(ch)) {
send_to_char("Monsters can't recall!!\r\n", ch);
return;
}
if (GET_LEVEL(ch) <= 10) {
send_to_char("Recalling for FREE, courtesy of Newbie
Transportation...\r\n", ch);
act("$n concentrates and disappears.", TRUE, ch, 0, 0, TO_ROOM);
char_from_room(ch);
char_to_room(ch, r_mortal_start_room);
act("$n appears suddenly.", TRUE, ch, 0, 0, TO_ROOM);
look_at_room(ch, 0);
return;
}
else (GET_LEVEL(ch) >= 91) {
send_to_char("Recalling for FREE, courtesy of Immortal
Transportation...\r\n", ch);
act("$n concentrates and disappears.", TRUE, ch, 0, 0, TO_ROOM);
char_from_room(ch);
char_to_room(ch, r_1203);
act("$n appears suddenly.", TRUE, ch, 0, 0, TO_ROOM);
look_at_room(ch, 0);
return;
}
else (GET_LEVEL(ch) = 99) {
send_to_char("Recalling for FREE, courtesy of Chaos...\r\n", ch);
act("$n concentrates and disappears.", TRUE, ch, 0, 0, TO_ROOM);
char_from_room(ch);
char_to_room(ch, r_503);
act("$n appears suddenly.", TRUE, ch, 0, 0, TO_ROOM);
look_at_room(ch, 0);
return;
}
else {
send_to_char("Recalling for 200 gold per level...\r\n", ch);
if (GET_GOLD(ch) < (GET_LEVEL(ch) * 200))
{
send_to_char("You don't have enough gold!\r\n", ch);
act("$n tries to recall, but fails\r\n", FALSE, ch, 0, 0, TO_ROOM);
return;
}
else {
GET_GOLD(ch) -= (GET_LEVEL(ch) * 200);
act("$n concentrates and disappears.", TRUE, ch, 0, 0, TO_ROOM);
char_from_room(ch);
char_to_room(ch, r_mortal_start_room);
act("$n appears suddenly.", TRUE, ch, 0, 0, TO_ROOM);
look_at_room(ch, 0);
return;
}
}
}
--
+---------------------------------------------------------------+
| FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
| Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
| Newbie List: http://groups.yahoo.com/group/circle-newbies/ |
+---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 06/25/03 PDT