Hi,
Here we go ...
for (i = 0; i < 6; i++) {
attempt = number(0, NUM_OF_DIRS - 1); /* Select a random
direction */
if (CAN_GO(ch, attempt) &&
!IS_SET(ROOM_FLAGS(EXIT(ch, attempt)->to_room), ROOM_DEATH)) {
act("$n panics, and attempts to flee!", TRUE, ch, 0, 0, TO_ROOM);
if (do_simple_move(ch, attempt, TRUE)) {
send_to_char("You flee head over heels.\r\n", ch);
if (FIGHTING(ch)) {
^^^^^^^^^^^^^^^^^^^
BUG BUG BUG BUG BUG
because do_simple_move will stop_fighting if ch and his
fighting-partner are no longer in the same room.
I removed it but inserted at the beginning of the function:
ACMD(do_flee)
{
int i, attempt, loss, hit, level;
if (!FIGHTING(ch))
{
act("$n panics but nobody knows why!", TRUE, ch, 0,
0, TO_ROOM);
send_to_char("Easy! Easy! Don't panic, nobody is
fighting you.\r\n", ch);
return;
}
Cat@NoMUD.
This archive was generated by hypermail 2b30 : 12/07/00 PST