int dam[2];
attacker->pcdata->dam[DAM_GIVEN]+= dam;
attacker->pcdata->dam[DAM_TAKEN] += dam;
for(d = descriptor_list ; d ; d = d->next)
{ CHAR_DATA *ch = d->character ? d->character : d->original;
if(!ISSET(ch->comm, PLR_COMBATBRIEF) ) continue;
printf_to_char(ch, "You did %d damage that round.\r\nYou took %d damage that round.", ch->pcdata->dam[DAM_GIVEN], ch->pcdata->dam[DAM_TAKEN]);
ch->pcdata->dam[DAM_GIVEN] = ch->pcdata->dam[DAM_TAKEN] = 0;
}
I've defined a var in ch->num_damage that I use to store the damage.
in damage() I use this:
dam_message( ch, victim, dam, dt, immune );
if (!immune)
{
ch->num_damage += dam;
}
to save the amound of damage.
in dam_message I do this:
and then at end of multi_hit I have a call to a function that is showing the ch->num_damage to the char, victim and the in_room people.
someway the first attack if I type "kill <player>" doesnt show the first attack but the other rounds are ok, also it doens't show freezing for example when using a freezing weapon.
so if anyone got a better idea that could help me please tell me cause I'm going insane soon.