The solution that was provided by Patrick should work tho. In any case, I suggest that you double-check to make sure that the weapons that you're testing with actually have the ITEM_WEAR_DWIELD set on (or off) properly. In any case, about the prob that you have with the disarm, I'm not really sure whether it's related or not, but I noticed something from the dual wield snippet done by Shane P. Lee (Fire): > At the end of 'void perform_violence(void)' add: > > /* > * My dual wield call modeled after the "Dual Wield Patch" by Chris > * Powell, which was a patch of Todd Kegley's snippet. Kinda > * confusing, but let's give credit where credit is due:-) > * -spl > */ > if (GET_EQ(ch, WEAR_DWIELD)) { > hit2(ch, FIGHTING(ch), TYPE_UNDEFINED); > return; > } > > NOTE: This should come before the last 2 }s in the function. I seriously don't think that 'return' should be there. It will cause the program to exit the whole function, not only the loop. Now, imagine the combat list is like this: Anne (1-weapon), Bob (2-weapons), Chris (1-weapon), Dave (1-weapon) The perform_violence() will go like this: For each player in combat list: Anne - Is Anne's opponent around? - Yes Is Anne's position okay for attacking? - Yes attack with main weapon has 2nd weapon? - No Bob - Is Bob's opponent around? - Yes Is Bob's position okay for attacking? - Yes attack with main weapon has 2nd weapon? - Yes attack with 2nd weapon return exit function I guess that's why your opponent didn't get any round. As for why exactly after disarm... I have no idea.......... --- Afizal Mustapa Petaling Jaya, Selangor, Malaysia. (amustapa@hotmail.com) +------------------------------------------------------------+ | 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/11/01 PDT