Re: Gouge Skill

From: Chris Proctor (cjp@minotaur.labyrinth.net.au)
Date: 04/28/00


This is the meat of it.
Some bits there aren't appropriate except on Dominia, and a couple of bits
common to all offensive skills have been extracted.


ACMD(do_gouge)
{
  struct char_data *vict = NULL;
  int percent, prob, hits;
  struct affected_type af;

  vict = find_offensive_vict(ch, SKILL_GOUGE, argument);
  if (vict == NULL)
    return;

  if (IS_NPC(vict) && MOB_FLAGGED(vict, MOB_NOBLIND)) {
    act("You can't do that, $E's aware of you!", FALSE, ch, 0, vict,
TO_CHAR);
    return;
  }
  if (AFF_FLAGGED(vict, AFF_ARTIFACT)) {
    act("$E's made from metal, no blood to blind $M with.", FALSE, ch, 0,
vict, TO_CHAR);
    return;
  }
  if (GET_EQ(ch, WEAR_WIELD) || GET_EQ(ch, WEAR_TWIELD) || GET_EQ(ch,
WEAR_DWIELD)) {
    send_to_char("Eye gouges have to be performed with bare hands.\r\n",
ch);
    return;
  }
  if (GET_MOVE(ch) < 10) {
    send_to_char("You're too exhausted to gouge anything!\r\n", ch);
    return;
  }
  GET_MOVE(ch) -= 10;
  percent = number(1, 101);     /* 101% is a complete failure */

  if (restrictions_are_on)
    prob = CALC_THIEF_SKILL(ch, SKILL_GOUGE);
  else
    prob = GET_SKILL(ch, SKILL_GOUGE);

  if (percent > prob) {
    damage(ch, vict, 0, SKILL_GOUGE);
  } else {
    hits = GET_HIT(vict);
    hit(ch, vict, SKILL_GOUGE);
    if (hits > GET_HIT(vict)) {
      af.type = SPELL_BLINDNESS;
      af.duration = 4;
      af.bitvector[0] = AFF_BLIND;
      af.modifier = -10;
      af.location = APPLY_HITROLL;
      affect_join(vict, &af, 0, 0, 0, 0);
    }
  }
  WAIT_STATE(ch, PULSE_VIOLENCE * 2);
}


On Fri, 28 Apr 2000, Shawn Kimbley wrote:

> Anyone have a working gouge or blinding type skill I could look at?  I'm
> having some issues trying to get it to work.
>
> Thanks
>
> Whatley
>
>
>      +------------------------------------------------------------+
>      | 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 : 04/10/01 PDT