Well, hopefully you will have received your subscription information now from the new mailing list... As you may have noticed, the new address is: circle@cspo.queensu.ca If you have any problems or whatnot with the list, please send them to: owner-circle@cspo.queensu.ca Thanks very much, and enjoy! -- Erm... Yeah. Whatever. From Tyler_Wilhite@clr.com 24 Jul 96 15:25:35 EDT X-SystemInfo: MyE-Mail: EMail X-Message-No: 2946 (database) From: Tyler Wilhite/FASTTAX <Tyler_Wilhite@clr.com> To: circle <circle@pvv.ntnu.no> Subject: Re: Multiple attacks Date: Wed, 24 Jul 96 15:25:00 Message-ID: <9607242226.AA0207@clrgate1.fasttax.com> X-POP3-Rcpt: lk4150@per Return-Path: owner-circle@pvv.ntnu.no Received: from flipper.pvv.ntnu.no (43@flipper.pvv.ntnu.no [129.241.210.200]) by per.cybercity.dk (8.6.12/8.6.12) with ESMTP id WAA18585 for <lk4150@krull.dk>; Wed, 24 Jul 1996 22:06:31 +0200 Received: (from majordomo@localhost) by flipper.pvv.ntnu.no (8.7.5/8.6.12) id WAA06941 for circle-outgoing; Wed, 24 Jul 1996 22:22:13 +0200 Received: from sunsrv12.clr.com (sunsrv12.CLR.com [164.57.9.12]) by flipper.pvv.ntnu.no (8.7.5/8.6.12) with ESMTP id WAA06921 for <circle@pvv.ntnu.no>; Wed, 24 Jul 1996 22:21:51 +0200 Received: from clrgate1.fasttax.com (clrgate1.CLR.com [164.57.201.14]) by sunsrv12.clr.com (8.7.3/8.7.3) with SMTP id PAA15043 for <circle@pvv.ntnu.no>; Wed, 24 Jul 1996 15:24:43 -0500 (CDT) Received: by clrgate1.fasttax.com (IBM OS/2 SENDMAIL VERSION 1.3.14/1.0)id AA0207; Wed, 24 Jul 96 15:26:55 -0700 Received: by FASTTAX (Lotus Notes Mail Gateway for SMTP V1.1) idA4E45164634EAC8186256371006F5A9D; Wed, 24 Jul 96 15:26:55 EDT Mime-Version: 1.0 Sender: owner-circle@pvv.ntnu.no Precedence: bulk Well, I did put a loop at first in the hit function, but what was happening was. cmd = hit fido You paste the fido. You hurt the fido. You mangle the fido. Fido is dead. So, the mobs would never have a chance to act. I was trying to make it so you would hit the mob once, then combat would resume normally. ie You mangle the fido. Fido hurts you badly. You hit fido. you hit fido you hit fido. Fido Hurts you yet again badly. etc I Have seen this on so many muds, I have the code like I said in the previous post to do it, I just don't really understand how about making it work.. I'll put it at the end of this file for you guys to criticize, I mean, examine.. ;) Thanks, any help would be very nice! Franco said: Or, you can do it even easier: Note they all call the hit function, without any modification to the hit function itself. Only one that is different for me is the dual_hit, because i check the WEAR_WIELD_2 eq pos instead of WEAR_WIELD. Note that you MUST put in the check to see if the char is fighting still between hits, or the mud will crash if, for example, player kills the FIGHTING(ch) on hit 1 and it auto proceeds to hit 2, looking for a pointer to the already dead FIGHTING(ch). [Useful code] >This is how I implemented multiple attacks on my mud: >When you call perform_violence() (in the heartbeat() function in pl11), >call it once for each attack you have with the attack number as argument, ie: > perform_vilence(1); /* for attack #1 */ > perform_vilence(2): /* for attack #2 */ > /* and so on... */ > >And my perform_violence() looks something like this (taken from head): > >void perform_violence(int attack) >{ > /* variable declaration */ > struct char_data *ch; > > for (ch = combat_list; ch; ch = ch->next_fighting) > { > /* misc stuff to check positions and such */ > > /* the old hit() statement */ > /* hit(ch, FIGHTING(ch), TYPE_UNDEFINED); */ > > switch (attack) > { > case 1: > percent = number(1, 101); > prob = GET_SKILL(ch, SKILL_ATTACK1); > if (percent > prob) > { > hit(ch, FIGHTING(ch), TYPE_UNDEFINED, > attack); > } > break; > case 2: > percent = number(1, 101); > prob = GET_SKILL(ch, SKILL_ATTACK1); > if (percent > prob) > { > hit(ch, FIGHTING(ch), TYPE_UNDEFINED, > attack); > } > break; > > /* and so on */ > } > } >} > >As you can see, I added a new argument to the hit() function, the attack >number. > >Well, I hope this makes some sense and helps some of you out there :) > >/ Joachim Pileborg ^^^ Credit was given! :) [Other useful code snipped]
This archive was generated by hypermail 2b30 : 12/07/00 PST