On Tue, 28 Nov 1995 SROWAN@WVNVAXA.WVNET.EDU wrote: > Just wondering if anyone has coded a spec_proc for weapons to cast spells, > and if so, would you be willing to show me how you did it.. > Thanks > > Steve > @ > Well, I have done this rather simply, but at least it works :) First add a check in perform_violence, right after the check for mobs spec_procs that look something like this. It will check any weapon wielded for a spec_proc, and if its there call it. if (GET_EQ(ch,WEAR_WIELD) && GET_OBJ_SPEC(GET_EQ(ch,WEAR_WIELD)) != NULL) (obj_index[GET_EQ(ch,WEAR_WIELD)->item_number].func) (ch,GET_EQ(ch,WEAR_WIELD),0,""); Next, make the spec_proc for the weapon, like the one below, which is a sword casting blindness. Don't forget to make the assign in spec_assigns. SPECIAL (joshua_sword) { int lev; if (cmd) return FALSE; if (GET_POS(ch) != POS_FIGHTING) return FALSE; if (GET_EQ(ch,WEAR_WIELD) != me) return FALSE; if (IS_SET(AFF_FLAGS(FIGHTING(ch)),AFF_BLIND)) return FALSE; if (number(1,100) < 65) { lev = GET_LEVEL(ch); if (lev < 15) lev = 15; call_magic(ch, FIGHTING(ch), 0, SPELL_BLINDNESS, lev, CAST_SPELL); return FALSE; } return FALSE; } Well that's all there is to it. Amiga
This archive was generated by hypermail 2b30 : 12/07/00 PST