(no subject)

From: Bob Haeffner (bob@venus.moonlight.net)
Date: 10/13/96


Help!, I added (or thought I did) multiple attacks to my fight.c, and now I get
a core dump, in the middle of a battle.  Is there something wrong with my
perform_violence?  Or is it somewhere else?

Any comments would be appreciated.



/* control the fights going on.  Called every 2 seconds from comm.c. */
void perform_violence(int i)
{
  struct char_data *ch;
  extern struct index_data *mob_index;

  for (ch = combat_list; ch; ch = next_combat_list) {
    next_combat_list = ch->next_fighting;

    if (FIGHTING(ch) == NULL || ch->in_room != FIGHTING(ch)->in_room) {
      stop_fighting(ch);
      continue;
    }

    if (IS_NPC(ch)) {
      if (GET_MOB_WAIT(ch) > 0) {
	GET_MOB_WAIT(ch) -= PULSE_VIOLENCE;
	continue;
      }
      GET_MOB_WAIT(ch) = 0;
      if (GET_POS(ch) < POS_FIGHTING) {
	GET_POS(ch) = POS_FIGHTING;
	act("$n scrambles to $s feet!", TRUE, ch, 0, 0, TO_ROOM);
      }
    }

    if (GET_POS(ch) < POS_FIGHTING) {
      send_to_char("You can't fight while sitting!!\r\n", ch);
      continue;
    }

    if (AWAKE(ch) && (ch->in_room == FIGHTING(ch)->in_room)) {
       hit(ch, FIGHTING(ch), TYPE_UNDEFINED);
    if ((GET_SKILL(ch, SKILL_SECOND) > 0)) {
       if (GET_SKILL(ch, SKILL_SECOND) > number(1,200)-5*GET_LEVEL(ch) )
          if (FIGHTING(ch));
             hit(ch,FIGHTING(ch),TYPE_UNDEFINED);
    }
    if (!IS_NPC(ch) && (GET_SKILL(ch, SKILL_THIRD) > 0)) {
       for (i = 0; i < 4; i++){
          if (GET_SKILL(ch, SKILL_THIRD) > number(1,500)-10*GET_LEVEL(ch))
             if(FIGHTING(ch));
                hit(ch,FIGHTING(ch),TYPE_UNDEFINED);
       }
    }
 } else { /* Not in same room */
    stop_fighting(ch);
   }
if (MOB_FLAGGED(ch, MOB_SPEC) && mob_index[GET_MOB_RNUM(ch)].func != NULL)
      (mob_index[GET_MOB_RNUM(ch)].func) (ch, ch, 0, "");
  }
}

-- 
--
Bob Haeffner
Software Engineer
Moonlight Media, Inc.
http: www.moonlight.net
phone: (601) 969-1611
fax: (601) 969-1677
pager: (800) 391-2410
email: bob@moonlight.net
+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
+-----------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/18/00 PST