#define MAX_PEN 800
#include "defs.h"
int czy_mozna_atak = 0;
void
reatak()
{
    czy_mozna_atak = 0;
    write("Mozesz ponownie zaatakowac.\n");
}
int
bij(string str)
{
    object bron;
    mixed *result;
    object *kogo;
    float PEN;
    PEN = (itof(TP->query_skill(0) + TP->query_skill(100020) )/200.0);
    PEN = itof(MAX_PEN) * PEN;
    if(czy_mozna_atak == 1)
    {
        write("Musisz odpoczac po swoim poprzednim ataku.\n");
        return 1;
    }
    notify_fail("Musisz miec dobyta bron by zaatakowac.\n");
    bron = TP->query_weapon(W_BOTH);
    if (!bron) return 0;
    if (!str)
    {
      if ( TP->query_attack()) kogo = ({TP->query_attack()});
    }
    else if(str) kogo = parse_this(str,"%l:"+PL_BIE);
    notify_fail("Kogo chcesz zaatakowac?\n");
    if(!sizeof(kogo)) return 0;
    set_alarm(15.0, 0.0, "reatak");
    czy_mozna_atak=1;
    TP->reveal_me(1);
    switch(result[0])
    {
        case -1:
        {
            TP->catch_msg("Bierzesz szeroki zamach " + bron->query_short() + " mierzac w "+
                          QIMIE(kogo[0], PL_BIE) + " lecz unika " + kogo[0]->koncowka("on", "ona") +
                          "twoje ciosu z gracja.\n");
            kogo[0]->catch_msg(QCIMIE(TP, PL_MIA) + " bierze szeroki zamach " + bron->query_short(PL_MIE) +
                          " lecz unikasz z gracja zbyt wolno zadany cios.\n");
            tell_room(environment(TP),QCIMIE(TP, PL_MIA) + " bierze szeroki zamach " + bron->query_short(PL_MIE) +
                          " mierzac w " + QIMIE(kogo[0], PL_BIE) + " lecz " + kogo[0]->koncowka("on", "ona") +
                          " unika z gracja tego ciosu.\n",({TP,kogo[0]}));
            break;
        }
        case 0:
        {
            TP->catch_msg("Uderzasz lekko " + QIMIE(kogo[0], PL_BIE) + " " + bron->query_short(PL_MIE) + " lecz nie czynisz "+
                          kogo[0]->koncowka("jemu", "jej") + " zadnej szkody.\n");
            kogo[0]->catch_msg(QCIMIE(TP, PL_MIA) + " uderza cie lekko " + bron->query_short(PL_MIE) +
                          " lecz cios nie czyni ci zadnej szkody.\n");
            tell_room(environment(TP),QCIMIE(TP, PL_MIA) + " uderza lekko " + bron->koncowka("swoim", "swoja") + " " +
                          bron->query_short(PL_MIE) + " w " + QIMIE(kogo[0], PL_BIE) + " lecz cios ten nie "+
                          "nie czyni " + kogo[0]->koncowka("mu","jej") + " zadnej szkody.\n",({TP,kogo[0]}));
            break;
        }
        case 1..20:
        {
            TP->catch_msg("Uderzasz " + QIMIE(kogo[0], PL_BIE) + " " + bron->koncowka("swoim", "swoja") +
                          " " + bron->query_short(PL_MIE) + " zostawiajac " + kogo[0]->koncowka("mu", "jej") +
                          " mala rane na ciele.\n");
            kogo[0]->catch_msg(QCIMIE(TP, PL_MIA) + " uderza cie " + bron->koncowka("swym", "swoja") +
                          " " + bron->query_short(PL_MIE) + " zostawiajac ci mala rane na ciele.\n");
            tell_room(environment(TP),QCIMIE(TP, PL_MIA) + " uderza " + QIMIE(kogo[0], PL_BIE) + " " +
                          bron->koncowka("swoim", "swoja") + " " + bron->query_short(PL_MIE) +
                          " zostawiajac " + kogo[0]->koncowka("mu","jej") + " mala rane na ciele.\n",({TP,kogo[0]}));
            break;
        }
        case 21..50:
        {
            TP->catch_msg("Uderzasz " + QIMIE(kogo[0], PL_BIE) + " " + bron->koncowka("swoim", "swoja") +
                          " " + bron->query_short(PL_MIE) + " zostawiajac " + kogo[0]->koncowka("mu", "jej") +
                          " spora rane na ciele.\n");
            kogo[0]->catch_msg(QCIMIE(TP, PL_MIA) + " uderza cie " + bron->koncowka("swym", "swoja") +
                          " " + bron->query_short(PL_MIE) + " zostawiajac ci mala spora na ciele.\n");
            tell_room(environment(TP),QCIMIE(TP, PL_MIA) + " uderza " + QIMIE(kogo[0], PL_BIE) + " " +
                          bron->koncowka("swoim", "swoja") + " " + bron->query_short(PL_MIE) +
                          " zostawiajac " + kogo[0]->koncowka("mu","jej") + " spora rane na ciele.\n",({TP,kogo[0]}));
            break;
        }
        case 51..99:
        {
            TP->catch_msg("Uderzasz " + QIMIE(kogo[0], PL_BIE) + " " + bron->koncowka("swoim", "swoja") +
                          " " + bron->query_short(PL_MIE) + " niemalze masakrujac " + kogo[0]->koncowka("jego", "jej") +
                          " cialo!\n");
            kogo[0]->catch_msg(QCIMIE(TP, PL_MIA) + " uderza cie " + bron->koncowka("swym", "swoja") +
                          " " + bron->query_short(PL_MIE) + " niemalze masakrujac cie!\n");
            tell_room(environment(TP),QCIMIE(TP, PL_MIA) + " uderza " + QIMIE(kogo[0], PL_BIE) + " " +
                          bron->koncowka("swoim", "swoja") + " " + bron->query_short(PL_MIE) +
                          " niemalze masakrujac " + kogo[0]->koncowka("jego","jej") + " cielo!\n",({TP,kogo[0]}));
            break;
        }
        default:
        {
            TP->catch_msg("Unosisz " + bron->query_short(PL_BIE) + " wysoko ponad glowe by chwile pozniej "+
                          "z zabojcza szybkoscia uderzyc na " +QIMIE(kogo[0], PL_BIE)+ ". Dzwiek lamanych kosci "+
                          "towarzyszy twej broni gdy ta zaglebia sie w ciele przeciwnika a fontanna krwi "+
                          "stara sie dogonic uciekajace zycie " +QIMIE(kogo[0], PL_DOP) +". Iskra w twych oczach "+
                          "rozblyska gdy cialo twego przeciwnika opada bezwladnie na ziemie a na twym "
                          +bron->query_short(PL_MIE) + " zostaja strugi krwii.\n");
            kogo[0]->catch_msg(QCIMIE(TP, PL_MIA) + " wprowadza w ciebie potezny cios " + bron->koncowka("swoim", "swoja") +
                          " " + bron->query_short(PL_MIE) + ". Czujesz potworny bol gdy bron ta rozrywa twe cialo "+
                          "a nitka zycia trzymajaca cie przy tym swiecie zdaje sie pekac. Krew zaslania ci oczy a bol" +
                          " po chwili ustaje. Umierl" + kogo[0]->koncowka("es","as") + ".\n");
            tell_room(environment(TP),QCIMIE(TP,PL_MIA) + " bierze ogromny zamach " + bron->koncowka("swoim", "swoja") +
                          " " + bron->query_short(PL_MIE) + " i masakruje " + QIMIE(kogo[0],PL_BIE) + " rozcinajac "+
                          "jego cialo niemalze na dwie polowy. Krew tryska na wszystkich wokol a na twarzy "+
                          QIMIE(TP, PL_DOP) + "pojawia sie bestialski usmiech.\n",({TP,kogo[0]}));
            kogo[0]->do_die(TP);
        }
    }
    return 1;
}
