Firstly, remove the acmd(do_dwield) command all together. Then change your acmd(do_wield) with this: ACMD(do_wield) { struct obj_data *obj; one_argument(argument, arg); if (!*arg) send_to_char("Wield what?\r\n", ch); else if (GET_EQ(ch, WEAR_DWIELD)) send_to_char("Remove your secondary weapon first.\n\r", ch); else if (!(obj = get_obj_in_list_vis(ch, arg, ch->carrying))) { sprintf(buf, "You don't seem to have %s %s.\r\n", AN(arg), arg); send_to_char(buf, ch); } else { if (!CAN_WEAR(obj, ITEM_WEAR_WIELD)) send_to_char("You can't wield that.\r\n", ch); else if (GET_OBJ_WEIGHT(obj) > str_app[STRENGTH_APPLY_INDEX(ch)].wield_w) send_to_char("It's too heavy for you to use.\r\n", ch); else if (GET_EQ(ch, WEAR_WIELD) && !GET_SKILL(ch, SKILL_DUAL)) send_to_char("You have no idea how to dual wield.\r\n", ch); else if (GET_EQ(ch, WEAR_WIELD) && GET_EQ(ch, WEAR_SHIELD)) send_to_char("You cannot dual wield while using a shield.\r\n", ch); else if (GET_EQ(ch, WEAR_WIELD) && !GET_EQ(ch, WEAR_SHIELD)) perform_wear(ch, obj, WEAR_DWIELD); else perform_wear(ch, obj, WEAR_WIELD); } } Basically.. it modifies it, so you 'wield <weapon1>' then 'wield <weapon2>' .. it checks if your wielding a weapon and if you are, moves it to your dwield slot. Checks if your using a shield, etc etc. I've tested this all and it works. Also, change do_remove with this: Let me know whatcha'll think. My first sent piece of code to you guys =) (I just didn't like do_dwield .. hehe.) Regards, The Mechanical Animal <acydtryp@mail.com> ______________________________________________ FREE Personalized Email at Mail.com Sign up at http://www.mail.com/?sr=signup +------------------------------------------------------------+ | 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