inherit "/std/monster";
inherit "/cmd/std/command_driver";
#include "../mafia.h"
#include "../engine/spec.h"
object ENG= "/d/Imperium/Rodzina_Ragazzi/engine/engine.c";
#include "karaberzy.h"

string *powitani;
string *losowy_przym()
 {
 string *lp;
 string *lm;
 int i;
 lp=({ "mlody"  ,"stary"  ,"podstarzaly"  ,"dorosly"  ,"nastoletni" ,
       "szpetny" ,"ladny","przystojny","przepiekny","uroczy"});
 lm=({ "mlodzi", "starzy", "podstarzali", "dorosli", "nastoletni",
	"szpetni", "ladni", "przystojni", "przepiekni", "uroczy"});
 i=random(10);

 return ({ lp[i] , lm[i] });
 }

string *losowy_przym2()
 {
 string *lpc;
 string *lmc;
 int j;
 lpc=({ "postawny", "potezny", "nieugiety", "mocny", "mocarny"});
 lmc=({ "postawni", "potezni", "nieugieci", "mocni", "mocarni"});
 j=random(5);

 return ({ lpc[j] , lmc[j] });

 }

void
create_monster()
{
    string *przm;                
    string *przm2;
    przm = losowy_przym();
    przm2 = losowy_przym2();



    ustaw_odmiane_rasy(({"carabinier", "carabiniera", "carabinierowi", "carabiniera", "carabinierem", "carabinierze"}),
                ({"carabinierzy", "carabinierow", "carabinierom", "carabinierow", "carabinierami", "carabinierach"}),
                PL_MESKI_OS);
    set_long("Opalony czlowiek, z duzymi, bardzo glebokimi i modrymi oczami koloru brazowego. Jego czarne wlosy "
	+"wraz z kolorem skory swiadcza o zamorskim pochodzeniu. Powazny zarys twarzy i reka kurczowo "
	+"trzymajaca bron swiadcza o tym, ze jest tu po to aby pilnowac spokoju. Rozglada sie uwaznie i przypatruje "
	+"kazdemu, kto wydaje mu sie podejrzany, w tym i tobie.\n");

    add_prop(LIVE_I_NEVERKNOWN,1);
    set_gender(G_MALE);
    dodaj_przym( przm[0], przm[1] );  
    dodaj_przym( przm2[0], przm2[1] );
   // set_random_move(3,0);

    add_prop(CONT_I_HEIGHT, 150+random(100));
    add_prop(CONT_I_WEIGHT, 75000+random(500));
    add_prop("_super_wykopisty_mafiozo", 1);
    add_prop(MAGIC_I_RES_DEATH,40);
    add_prop(NPC_I_NO_FEAR, 1);
    set_stats(({500+random(50),530+random(50),500,25,25,250+random(25)}));

    set_skill(SS_DEFENCE, 125+random(25));
    set_skill(SS_PARRY, 90+random(10));
    set_skill(SS_WEP_KNIFE, 130+random(90));
    set_skill(SS_2H_COMBAT, 100);
    set_act_time(10 + random(15));
    set_cchat_time(7 + random(4));
    set_aggressive("@@atak");

    add_act("emote usmiecha sie.");
    add_act("emote rozglada sie na boki.");
    add_act("emote przyglada sie tobie uwaznie.");
    add_act("emote przestepuje z nogi na noge.");
    add_act("emote spoglada ku gorze.");
    set_alignment(-25);

    add_cchat("Czyzbys chcial zginac?");
    add_cchat("Gin zatem!");
    add_cchat("Jeszcze zyjesz?");
    add_cchat("Przygotuj sie na spotkanie z pania...smiercia!");
    add_ask(({"pomoc","wsparcie"}),
        VBFC_ME("pomos"));
    add_ask(({"dolaczenie","druzyne"}),
        VBFC_ME("mdolacz"));
    add_weapon(OBJ+"bron2.c");
    add_weapon(OBJ+"bron2.c");
    add_armour(OBJ+"skorzana.c");
}


int
pomos(string str)
{

int i;
	if(ENG->czy_czlonek(TP->query_real_name())==1)
		{
	

                this_object()->command("krzyknij DO BRONI!");
                this_object()->command("wesprzyj "+this_player()->query_real_name(PL_BIE));

				return 1;
	}
	write("Carabinierzy cie nie sluchaja.\n");
	return 1;
}




void
special_attack(object cel)
{



  object room = environment(TO); 
   int suma = 0;
    int pen = 0; 
	string jak;
   //suma = return_pen(TP,cel,100); 
   pen = (TP->query_skill(3)*8+TP->query_stat(1)+TP->query_stat(3)+random(300)/2);
   if(szansa<8)
	pen = cel->query_max_hp();

   if (!present(cel,room)) 
   {        write(cel->query_name(PL_MIA)+" uciekl ci wiec nie mozesz zadac mu seri morderczych "+                
                 "ciosow swoimi sztyletami.\n");   
 
     
 return;  
  }      
  switch(pen)      
  {      
      case 0..10:           

 jak = "ledwo muskajac";           
 break;    
            case 11..200:     
      
 jak = "nieznacznie raniac";  
          break;
            case 201..400:
            jak = "bardzo lekko raniac";
            break;
                case 401..600:
            jak = "lekko raniac";
            break;
                case 601..1000:
            jak = "raniac";
            break;
                case 1001..1200:
            jak = "ciezko raniac";
            break;
                case 1201..1500:
            jak = "bardzo ciezko raniac";
            break;
                case 1501..1800:
            jak = "masakrujac";
            break;
            default:
            jak = "bardzo masakrujac";
            
        }
//DAMAGE

   cel->hit_me(pen, W_SLASH, 1000, TO, -1 );

//OPIS GDY ZABIL CIOSEM
   if (cel->query_hp()<1)
    {
TO->catch_msg("Zauwazasz, ze twoj przeciwnik podczas wykonywania swoich ciosow "+
                 "popelnil blad i odslonil sie pozwalajac ci zadac smiertelny cios. "+
                 "Niewiele myslac wyprowadzasz szybka serie ciosowi trafiajac "+
                 QIMIE(cel,PL_NAR)+" swoimi sztyletami w tetnice szyjna. Widzisz jak twoj przeciwnik "+
                 "osuwa sie na ziemie, a obok ciala pojawia sie kaluza krwi.\n");
   tell_room(room,""+QCIMIE(TO,PL_MIA)+" dostrzegajac blad w obronie swego przeciwnika, wyprowadza szybka "+
                 "serie niebezpiecznych ciosow swoimi sztyletami w kierunku "+
              QIMIE(cel,PL_BIE)+" przecinajac "+cel->koncowka("mu","jej")+" tetnice "+
                "szyjna. "+QCIMIE(cel,PL_MIA)+" ostatkiem sil trzyma sie na nogach, a po "+
              cel->koncowka("jego","jej")+" ciele zaczyna splywac krew. Po chwili "+
              QIMIE(cel,PL_MIA)+" pada bezwladnie na ziemie pozostawiajac wokol siebie kaluza "+
              "krwi.\n",({TO,cel}));
  cel->catch_msg("Walczac z "+QIMIE(TO,PL_NAR)+" popelniasz krytyczny blad i odlosniasz "+
                 "sie. Twoj przeciwnik szybko zareagowal na ta sytuacje i wyprowadzil "+
                 "szybka serie ciosow swoimi sztyletami skierowana w ciebie. Nagle uswiadamiasz "+
                 "sobie, ze jego cios przecial ci tetnice szyjna.\n"+
                 "Robi ci sie ciemno przed oczami, padasz na ziemie.\n");
                 
                 cel->set_hp(0);
                 cel->do_die(TO);
    }
    
    
//OPISY GDY NIE ZABIL
TO->catch_msg("Zauwazasz schematycznosc ruchow swojego przeciwnika i jestes w stanie "+
                 "przewidziec kazde "+cel->koncowka("jego","jej")+" nastepne posuniecie. Wykonujac szybki "+
                 "piruet, ktorego nie spodziewa sie twoj wrog wykonujesz serie bardzo szybkich pchniec "+
                 "swoimi sztyletami "+jak+" "+QIMIE(cel,PL_BIE)+" w tulow.\n");
    cel->catch_msg(QCIMIE(TO,PL_MIA)+" przypatruje ci sie przez pewien moment, i nagle "+
                 "wykonuje piruet, ktorego ty sie nigdy bys sie nie spodziew"+cel->koncowka("al","ala")+
                 "atakuje ciebie szybka seria swoich sztyletow "+jak+" ciebie w tulow.\n");
    tell_room(room,""+QCIMIE(TO,PL_MIA)+" przypatruje sie przez chwile "+QIMIE(cel,PL_CEL)+
                   " i nagle swoich szybkim piruetem z szyderczym usmiechem na ustach "+
                   "wykonuje szybka serie swoimi sztyletami "+jak+" "+
                   cel->koncowka("swego","swoja")+" przeciwni"+cel->koncowka("ka","czke")+
                   " w tulow.\n", ({TO,cel}));
    
  // czas=3.0;


}


szacunek(object kogo)
{
   if (!kogo->query_real_name()==ENG->query_szef()) return;
   command("'Witaj Papa, "+kogo->query_real_name(PL_MIA)+".");
   powitani+=({kogo});
}

init_living()
{
   if (ENG->query_szef()==TP->query_real_name()&&member_array(TP,powitani)<0)
   set_alarm(1.0,0.0,&szacunek(TP));
   ::init_living();
}
