inherit "/d/Imperium/Nuln/std/npc";

#include "aglarond.h"

#define PLAYER_I_DOSTAL_ZADANIE1_NULN  "_player_i_dostal_zadanie1_nuln" 
#define PLAYER_I_DOSTAL_ZADANIE2_NULN  "_player_i_dostal_zadanie2_nuln"
#define PLAYER_I_DOSTAL_ZADANIE3_NULN  "_player_i_dostal_zadanie3_nuln"
#define PLAYER_I_DOSTAL_ZADANIE4_NULN  "_player_i_dostal_zadanie4_nuln"
#define PLAYER_I_DOSTAL_ZADANIE5_NULN  "_player_i_dostal_zadanie5_nuln"
#define PLAYER_I_DOSTAL_ZADANIE6_NULN  "_player_i_dostal_zadanie6_nuln"
#define PLAYER_I_DOSTAL_ZADANIE7_NULN  "_player_i_dostal_zadanie7_nuln"

#define IMPERIUM_LIVE_I_NULN_CITIZEN   "_imperium_live_i_nuln_citizen"

object gracz;

void zadanie1();
void zadanie2();
void zadanie3();
void zadanie4();
void zadanie5();
void zadanie6();
void zadanie7();

string quest_hint();

void
create_mieszczanin_nuln()
{
    ustaw_jak_daleko(3);
    ustaw_czy_wraca(1);
 

    dodaj_nazwy(({"pracownik","pracownika","pracownikowi","pracownika",
        "pracownikiem","pracowniku"}), 
                ({"","","","","",""}),PL_MESKI_OS);
    dodaj_nazwy(({"pracownik poczty","pracownika poczty","pracownikowi poczty",
        "pracownika poczty","pracownikiem poczty","pracowniku poczty"}),
        ({"","","","","",""}),PL_MESKI_OS);
    ustaw_shorty(({"pracownik poczty","pracownika poczty","pracownikowi poczty",
           "pracownika poczty","pracownikiem poczty","pracowniku poczty"}), 
                ({"pocztowcy", "pocztowcow", "pocztowcom", "pocztowcow", 
                  "pocztowcami", "pocztowcach"}));
    set_long("Jest to sredniego wzrostu, szczuply czlowiek w podeszlym " +
             "wieku. Za szklami okularow widac jasne, mlode oczy zupelnie " +
             "nie pasujace do pobruzdzonej zmarszczkami twarzy. Rzadkie, " +
             "siwe wlosy ledwo zakrywaja lysine. Ubrany jest w zwykly " +
             "stroj urzednika pocztowego.\n");
    set_race_name("czlowiek");
    ustaw_odmiane_rasy(PL_CZLOWIEK);
    set_living_name("_pocztowiec_");
    set_gender(G_MALE);
    
    add_prop(LIVE_I_NEVERKNOWN, 1);
    add_prop(IMPERIUM_LIVE_I_NULN_CITIZEN,1);
    
//    add_prop(OBJ_M_NO_ATTACK, "Zaatakowac pracownika poczty??? No cos ty!\n");
    
    add_prop(CONT_I_WEIGHT, 60000);
    add_prop(CONT_I_HEIGHT, 170);
    
    set_skill(SS_DEFENCE, random(10));
    set_skill(SS_UNARM_COMBAT, random(5));
    set_skill(SS_PARRY, random(10));
    
    set_stats(({40, 56, 54, 32, 65, 41}));
    
    set_chat_time(10);
    set_act_time(10);
    add_act("emote pyta: Czy chcesz nadac list?"); 
    add_act("emote mowi: Dzieki naszej poczcie mozesz przeslac list nie tylko do " +
            "kazdego miejsca w Imperium, ale nawet do najdalszych zakatkow " +
            "Swiata."); 
    add_act("emote mowi: Potrzebuje pilnie kogos do pomocy.");
    add_act("emote pyta: Nie znasz kogos kto chcialby zarobic pare groszy?");
    add_act("emote mowi: Mam calkiem nowe zlecenia.");
        
    add_ask(({"pomoc","zadanie","prace"}), VBFC_ME("quest_hint"));

    set_default_answer(QCIMIE(TO,PL_MIA) + " odpowiada: Niestety " +
        "nie jestem w stanie ci w tym pomoc.\n");

}

string
quest_hint()
{
    gracz = this_player();
    
    if (!(gracz->test_bit("imperium", 0, 10)))
    {
        zadanie1();  
        return"";
    }
    if (!(gracz->test_bit("imperium", 0, 14)))
    {
        zadanie2();  
        return"";
    }
    if (!(gracz->test_bit("imperium", 0, 15)))
    {
        zadanie3();  
        return"";
    }
    if (!(gracz->test_bit("imperium", 0, 6)))
    {
        zadanie4();  
        return"";
    }
    if (!(gracz->test_bit("imperium", 0, 19)))
    {
        zadanie7();  
        return"";
    }
    if (!(gracz->test_bit("imperium", 0, 8)))
    {
        zadanie5();  
        return"";
    }
    if (!(gracz->test_bit("imperium", 0, 17)))
    {
        zadanie6();  
        return"";
    }
    
    command("emote rozklada bezradnie rece.");
    command("emote mowi: Nie mam juz dla ciebie zadnych zlecen.");
    return"";
}    

void
zadanie1()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE1_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
                    gracz->koncowka("es.","as."));

        return;
    }    
    command("emote mowi: Wydajesz sie byc osoba w sam raz do tego " +
        "zadania.");
    command("emote usmiecha sie promiennie.");
    command("emote mowi: Prosze, zanies ten list Joachimowi Eisenbergowi.");
    clone_object(NPATH + "obj/list.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE1_NULN, 1); 
} 

void
zadanie2()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE2_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
                    gracz->koncowka("es.","as."));

        return;
    }    
    command("emote mowi: To zadanie jest troche trudniejsze niz poprzednie.");
    command("emote zastanawia sie chwile.");
    command("emote mowi: List ten trzeba dostarczyc az do krasnoludzkiej "+
        "warowni Karak Varn, do Khadina Khamana.");
    clone_object(NPATH + "obj/list2.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE2_NULN, 1); 
} 


void
zadanie3()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE3_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
                    gracz->koncowka("es.","as."));

        return;
    }    
    command("emote mowi: Oczywiscie, ze mam cos dla ciebie. Pracy ci u nas"+
        " dostatek.");
    command("emote usmiecha sie promiennie.");
    command("emote mowi: Prosze, zanies ten list Mortimerowi Bletterburnowi. "+
        "O ile pamietam, prowadzi on zajazd gdzies w Krainie Zgromadzenia.");
    clone_object(NPATH + "obj/list3.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE3_NULN, 1); 
} 

void
zadanie4()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE4_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
            gracz->koncowka("es.","as."));
        return;
    }    
    command("emote mowi: Oczywiscie, ze mam cos dla ciebie. Pracy ci u nas"+
        " dostatek.");
    command("emote usmiecha sie radosnie.");
    command("emote mowi: Ten list trzeba dostarczyc prosto do Kreutzhofen, do "+
        "osoby odpowiedzialnej za obsluge mostu zwodzonego. To wazne, zeby "+
        "wiadomosc byla dostarczona jeszcze dzis.");
    clone_object(NPATH + "obj/list4.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE4_NULN, 1); 
} 

void
zadanie5()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE5_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
                    gracz->koncowka("es.","as."));

        return;
    }    
    command("emote mowi: Oczywiscie, ze mam cos dla ciebie. Pracy ci u nas"+
        " dostatek.");
    command("emote usmiecha sie nerwowo.");
    command("emote mowi: Hmmm ... To zadanie jest nielatwe, ba, nawet niebezpieczne. "+
        "List zaadresowany jest do Jena z Gor Czarnych. Nic wiecej nie jest "+
        "podane na kopercie. Mam nadzieje ze znajdziejsz go w tej dzikiej " +
        "krainie. Uwazaj na siebie! Pomogl"+gracz->koncowka("es","as")+
        " mi juz nie raz i nie chcialbym stracic tak dobrego wspolpracownika.");
    clone_object(NPATH + "obj/list5.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE5_NULN, 1); 
} 

void
zadanie6()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE6_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
                    gracz->koncowka("es.","as."));

        return;
    }    
    command("emote mowi: Nie wiem nawet czy to zadanie jest wykonalne.");
    command("emote zastanawia sie chwile.");
    command("emote mowi: No nic, zaryzykujmy.");
    command("emote mowi: Ten dziwny list przeznaczony jest dla jakiegos "+
        "Deluviana. W zyciu o kims takim nie slyszalem i nie mam zielonego "+
        "pojecia gdzie go szukac. Musisz poradzic sobie "+
        gracz->koncowka("sam","sama")+".");
    clone_object(NPATH + "obj/list6.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE6_NULN, 1); 
} 

void
zadanie7()
{ 
    if(gracz->query_prop(PLAYER_I_DOSTAL_ZADANIE7_NULN))
    {
        command("emote mowi: Hmmm ... przeciez juz dalem ci list.");
        command("emote mowi: Tylko nie mow mi, ze go zgubil"+
                    gracz->koncowka("es.","as."));

        return;
    }    
    command("emote mowi: To zadanie jest calkiem proste.");
    command("emote zastanawia sie chwile.");
    command("emote mowi: Chyba ze droga troche daleka, ale nie az tak.");
    command("emote mowi: Ten list przeznaczony jest dla wojta wioski Tadrig, "+
        "Gustawa Kahnera. Wioska ta znajduje sie w centralnym Averlandzie. "+
        "Mysle, ze latwo ja znajdziesz.");
    clone_object(NPATH + "obj/list7.c")->move(this_object());
    command("daj list " + gracz->query_nazwa(2));//2=PL_CEL
    gracz->add_prop(PLAYER_I_DOSTAL_ZADANIE7_NULN, 1); 
} 