/* Autor:      Silvy
 * Date:       13.07.98
 * Update:     13.07.98
 * 
 * Specjal od skavenow. Ale spokojnie moze byc wykorzystywany 
 * w innych miejscach
 */


/*int
pen_specjala(object liv,object wp)
{
   int wt=wp->query_wt();
   int sila=liv->query_stat(0),bron=liv->query_skill(wt);
   
   return random(sila/3)+random(bron/2);
}*/
 
int
special_attack(object enemy)
{
    int attacktype, i, penet;
    mixed* hitresult;
    string how, how1;
    object me=TO;
    string czym;
    object *broniew = query_weapon(-1);
    
    if(!sizeof(this_object() -> query_weapon(-1)) ) return 0;
    if (CAN_SEE(enemy, this_object())) 
       czym = broniew[0]->short(4);
     else czym = "czyms";
    
    attacktype = random(4);
    
    if (!attacktype)
    {
          penet = PEN_SPECJALA;
          hitresult = enemy->hit_me(penet, W_SLASH, 30, me, -1);
            how = "lecz pudluje haniebnie";
            how1 = "lecz pudluje haniebnie";
          if (hitresult[0] > 0)
            {
            how = "i trafia cie lekko, pozostawiajac niewielka rane";
            how1 = "i trafia " + enemy->query_zaimek(PL_BIE, 0) +" lekko, "+
            "pozostawiajac niewielka rane";
            }
          if (hitresult[0] > 10)
           {
            how = "i rani cie niezbyt mocno";
            how1 = "i rani " + enemy->query_zaimek(PL_BIE, 0) + " niezbyt mocno";
           } 
         if (hitresult[0] > 20)
           {
            how = "i trafia cie, zostawiajac spora rane";
            how1 = "i trafia " + enemy->query_zaimek(PL_BIE, 0) + ", zostawiajac spora rane";
           }  
          if (hitresult[0] > 40)
           { 
            how = "i rani cie ciezko";
            how1 = "i rani " + enemy->query_zaimek(PL_BIE, 0) + " ciezko";
           }
          if (hitresult[0] > 70)
           {
            how = "i trafia cie bardzo mocno, zostawiajac krwawa bruzde";
            how1 = "i trafia " + enemy->query_zaimek(PL_BIE, 0) + " bardzo mocno, " +
            "zostawiajac na ciele krwawa bruzde";
           }
          if (hitresult[0] > 95)
           {
            how = ", bezlitosnie cie masakrujac!";
            how1 = "i bezlitosnie " + enemy->query_zaimek(PL_BIE, 0) + " masakruje";
           } 
          enemy->catch_msg("Nagle " + QIMIE(this_object(), PL_MIA) + " wykonuje zamaszysty cios " + czym + 
          " " + how + "!\n");
         
          tell_watcher("Nagle " + QIMIE(this_object(), PL_MIA) + 
          " wykonuje zamaszysty cios " + czym + 
          " celujac w glowe "+ QIMIE(enemy, PL_DOP) + " "
          + how1 + "!\n",enemy);
         
          if (enemy->query_hp() <= 0)
            enemy->do_die(TO);
          return 1;
      }
    return 0;
}




