> well you could do that, but then you couldnt use: > if (get_pos(ch) <= pos_xxx) > > so it poses minor problems, most notably that the player > would be able to do > anything in the position they could do standing, they could > do meditating. > there is no way to restrict it. have you ever seen someone > fighting and > meditating at the same time? how about walking around? i sure Instead of using POS_ for things like that, I just used AFF_ flags for both paralyzed and meditating. Works well and doesn't pose any of the problems that have been discussed. To prevent people from doing things while paralyzed or meditating, I did the following in interpreter.c under the 'broke' label: else if (AFF_FLAGGED(ch, AFF_PARALYZE) && str_cmp(cmd_info[cmd].command, "quit!") && str_cmp(cmd_info[cmd].command, "return")) send_to_char("You are paralyzed and unable to " "do anything at all!\r\n", ch); else if (AFF_FLAGGED(ch, AFF_MEDITATING) && str_cmp(cmd_info[cmd].command, "stand") && str_cmp(cmd_info[cmd].command, "quit") && str_cmp(cmd_info[cmd].command, "quit!")) send_to_char("You are too relaxed to do anything but meditate.\r\n", ch); If you use this code, you will want to make sure that you have 'rent' or 'camp' installed or something similar.. Unless you want meditate and/or paralyze to totally trap someone in the mud. -- Zeavon Calatin, Spear of Insanity http://spear.kilnar.com/ telnet://spear.kilnar.com:1066 +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/10/01 PDT