
inherit "/d/Imperium/std/monster.c";
inherit "/std/act/add_things.c";
inherit "/std/act/action";

#include <stdproperties.h>
#include <ss_types.h>
#include <macros.h>
#include "local.h"
#include <wa_types.h>
#include <filter_funs.h>

#define WEP HOME + "bronie/noz.c"
#define ARM HOME + "bronie/kurtka.c"

string *losowy_przym()
 {
 string *lp;
 string *lm;
 int i;
 lp=({ "brutalny"  ,"czarny"  ,"szalony"  ,"szary"  ,"maly" ,
       "silny" ,"kulejacy"});
 lm=({ "brutalni"  ,"czarni"  ,"szaleni" ,"szarzy"  ,"mali"  ,
       "silni" ,"kulejacy"});
 i=random(7);

 return ({ lp[i] , lm[i] });

 }





create_monster()
{
string *przm = losowy_przym();                
    set_long("Masz przed soba typowego orka. Jest brudny, smierdzacy, zielony i ma insekty. "+
             "Innymi slowy, doskonaly reprezentant gatunku. Szweda sie po obozie i udaje, ze cos robi.\n");
             
    ustaw_odmiane_rasy(PL_ORK);
                            
    dodaj_przym( przm[0], przm[1] );  

    set_gender(G_MALE);
      
    add_prop(LIVE_I_NEVERKNOWN, 1);

    set_stats(({20+random(30),15+random(30),20+random(20),36,36,22}));

    set_skill(SS_DEFENCE, 6+random(20));
    set_skill(SS_PARRY,8+random(15));
    set_skill(SS_WEP_KNIFE,20+random(15));
        
    set_chat_time(45+random(10));
    set_act_time(40+random(10));
    
    add_act("emote podejrzliwie sie rozglada.");
    add_act("emote leniwie sie przeciaga.");
    add_act("emote podspiewuje sobie frywolna piosenke o elfkach.");
    add_act("emote pluje na ziemie.");
    
    add_act("emote mowi: Nienawidze Krepusa. Nienawidze Krepusa. Nienawidze Krepusa.");
    add_act("emote mowi: Durna sluzba... A mama mowila: Wstap do Armii, poznasz swiat.");
    add_act("emote mowi: Cholerne zycie... My sie pocimy a Krepus zbiera wszystkie lupy.");
    add_act("emote mowi: Co tu robisz, robaku!");
    
    add_cchat("Ratunku!");
    add_cchat("RAAAATUNKUUU!!");
    add_cchat("Zabije cie jak psa!");
    add_cchat("Splune ci w oko!");
    add_cchat("ZABIJE CIE!!");
    add_cchat("ALARM! INTRUZI W OBOZIE!!");
    
    set_random_move(25);
    set_alignment(-330);
    set_aggressive(1);
    set_whimpy(20);

    add_armour(ARM);
    add_weapon(WEP);
    
}

int
czy_ork(object ob)
{
  return  (ob->query_rasa()=="ork");
}


object*
query_orki()
{
  object ob=environment(this_object());
  object *lista;
  
  if (!ob)
    return 0;
  lista = all_inventory(ob);
  lista -= ({this_object()});
  lista = filter(lista, czy_ork);
  return lista;
}

void
rob(object ob, string co)
{
  ob->command(co);
}

void
attacked_by(object wrog)
{
  object *lista = query_orki();
  int i = sizeof(lista);
  string *ucieczka = ({ "powiedz O Mamo !!!","powiedz Sam se radz.",
      "powiedz Chyba zartujesz ?!","powiedz He, he ja Ci nie pomoge...",
       "powiedz Ratunku!" });
  string *boj = ({"krzyknij Do boju !","krzyknij Waaaaaa!",
     "krzyknij Arghhhhh!","krzyknij Krwiiiii!", "krzyknij Smierci!!"});
  
  command("krzyknij Pomocy !!");
  if (!i)
    return ::attacked_by(wrog);
  
  
  if (lista -> command("zabij " + wrog->query_nazwa(PL_BIE)))
     while (--i>=0)
       set_alarm(3.0,0.0,"rob",lista[i],ucieczka[random(5)]);
  else
    set_alarm(3.0, 0.0, "rob",lista[i],boj[random(5)]);
  ::attacked_by(wrog);
}

