For some reason, when I try to track a mob now that is affected by notrack it is crashing my MUD. I have done very little to the track skill, but there it is: ACMD(do_track) { struct char_data *vict; int dir, num, skill_num; skill_num = 140; if (!GET_SKILL(ch, SKILL_TRACK)) { send_to_char("You have no idea how.\r\n", ch); return; } if (IS_RANGER(ch) && ARMOR_OK(ch)) { send_to_char("Rangers must use studded leather or lighter in order to use their skills.\r\n", ch); return; } one_argument(argument, arg); if (!*arg) { send_to_char("Whom are you trying to track?\r\n", ch); return; } if (!(vict = get_char_vis(ch, arg))) { send_to_char("No-one around by that name.\r\n", ch); return; } if (IS_AFFECTED(vict, AFF_NOTRACK)) { send_to_char("You sense no trail.\r\n", ch); return; } dir = find_first_step(ch->in_room, vict->in_room); switch (dir) { case BFS_ERROR: send_to_char("Hmm.. something seems to be wrong.\r\n", ch); break; case BFS_ALREADY_THERE: send_to_char("You're already in the same room!!\r\n", ch); break; case BFS_NO_PATH: sprintf(buf, "You can't sense a trail to %s from here.\r\n", HMHR(vict)); send_to_char(buf, ch); break; default: num = number(0, 101); /* 101% is a complete failure */ if (num < 8) skill_gain(ch, skill_num); if (GET_SKILL(ch, SKILL_TRACK) < num) do { dir = number(0, NUM_OF_DIRS - 1); } while (!CAN_GO(ch, dir)); sprintf(buf, "You sense a trail %s from here!\r\n", dirs[dir]); send_to_char(buf, ch); break; } } Anyone got any ideas? --Ziz, NetShamen
This archive was generated by hypermail 2b30 : 12/07/00 PST