I changed the perform_violence garbage into an event, using the dg_event
system. The next attack type is decided before leaving, and a speed factor
is figured. This I use as the timer for the next event. Thus, a hasted char
could conceivably get in 5 attacks before the slowed warrior manages to
bring
the 6' sword to bear. Or the hippogrif might get in both claws and a bite in
one
round, while it will be another 3 before the tail is swung close enough.
-----Original Message-----
From: Circle Discussion List [mailto:CIRCLE@post.queensu.ca]On Behalf Of
Chuck Carson
Sent: Monday, September 27, 1999 5:57 PM
To: CIRCLE@post.queensu.ca
Subject: Muliple Attacks problem
I currently have mobs with the capability of having up to 5 attacks, all
with different damage dice and attack types (for mobs with 2 claw attacks, a
tail attack, and a bite for example). Players can also develop up to 3
attacks per round. This system works fine however not very 'fair'. I am
trying to follow AD&D as much as possible and want to implement an
intitiative system into combat.
All the rolls and checks are made in perform_violence() and thus if a
successfull roll is made, another call to hit() is made. As such,
perform_violence uses a for loop to cycle through the fighting characters
one at a time, so if I have a mob with 5 attacks, all 5 attacks are done
before the player gets a single attack. I want to implement an initiative
roll for each of these attacks, thus the mob might get 1 attack, then the
player gets 2, then the mob gets maybe 2 more, ie the order of the attacks
will depend on an initiative roll that will be performed inside
perform_violence.
Anyone have anything like this or can give me some suggestions. I have tried
playing around with manipulating the character pointer in the for loop but
this was very ugly.
Thanks,
CC
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
+------------------------------------------------------------+
+------------------------------------------------------------+
| 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 : 12/15/00 PST