/*
 * To jest cos. Cos, co jest miernym nasladownictwem traktu KZ-NULN
 * zrobionego przez, zdaje sie, Elvarona. Nie mam tego traktu w domu,
 * a poza tym i tak wolalbym napisac to sam.
 *                         z wyrazami szacunku
 *                                     Mithandir :))
 *
 * ////Trakt Kreutzhofen - Nuln, Mithandir 1998
 *
 * Nie mialem czasu wymyslic cos lepszego, a Silvy nakazal przerobic ten trakt;-)
 *			Tigr ;-)
 *
 * Trakt Nuln - Averland         Tigr 1998 
 */

#include "tigr.h"
#include <options.h>

inherit TRAKTPATH+"/p_room.c";

int numer;

void set_numer(int i)
{
   numer = i;
}

int
czy_jasno()
{
   return (pora_dnia()=="swit"|
   	   pora_dnia()=="wczesny ranek"|
   	   pora_dnia()=="ranek"|
   	   pora_dnia()=="poludnie"|
	   pora_dnia()=="popoludnie"|
	   pora_dnia()=="wieczor");
}

string
dlugi_opis(int i)
{
        string opis="";

        opis+="@@opis_pory_roku@@"+" ";

        switch (i)
        {
                case 1: opis+="Trakt, prowadzacy z Averlandu, dociera tutaj " +
                	"do Nuln. Miasto znajduje sie na zachodzie, za " +
                	"wysokim murem i potezna brama. Na polnocy " +
                	"dostrzegasz blekitna wstege rzeki Aver, plynacej " +
                	"na spotkanie z Reikiem.\n";
                     break;
                case 2: opis+="Trakt z Averlandu prowadzi na zachod, w strone " +
                        "widniejacego daleko na zachodzie Nuln. Plynacy na " +
                        "polnocy Aver zdaje sie zblizac do traktu w miare " +
                        "jak ten kieruje sie na wschod.\n";
                     break;
                case 3: opis+="W tym miejscu Aver bardzo zbliza sie do " +
                	"traktu, prowadzacego z Averlandu do Nuln. Mozna " +
                	"powiedziec, ze idziesz grobla nad rzeka. Samo Nuln - " +
                	"niewidoczne stad - " +
                	"znajduje sie dalej na zachodzie, trakt zas wyraznie " +
                	"zawraca na poludniowy wschod, oddalajac sie " +
                	"od rzeki.\n";
                     break;
                case 4: opis+="Aver zostal na polnocy, trakt kieruje sie " +
                	"zas na poludniowy zachod omijajac las, znajdujacy " +
                	"sie na wschodzie. W druga strone trakt podaza " +
                	"do Nuln, najwiekszego miasta w tej czesci Imperium." +
                	"\n";
                     break;
                case 5: opis+="Trakt z Averlandu do Nuln prowadzi " +
                	"poludniowymi obrzezami lasu na polnocny zachod. " +
                	"Omijajac potezny las na wschodzie, w druga strone " +
                	"trakt kieruje sie na poludnie, wspinajac sie na " +
                	"lekkie wzniesienie terenu i nie zaglebiajac sie " +
                	"miedzy drzewa.\n";
                     break;
                case 6: opis+="Las na wschodzie przerzedzil sie na tyle, " +
                	"iz trakt zaczyna zawracac na poludniowy wschod. " +
                	"Te tereny naleza juz do Hrabstwa Averlandu, jednej " +
                	"z Prowincji Elektorskich Imperium. Rzeka Aver, ktora " +
                	"dala nazwe calemu hrabstwu, chociaz niewidoczna stad, " +
                	"znajduje sie dalej na polnocy.\n";
                     break;
                case 7: opis+="Trakt nadal kieruje sie na polnocny zachod " +
                	"do Nuln i na poludniowy wschod wglab Averlandu. Sama " +
                	"rzeka Aver, od ktorej pochodzi ta nazwa, znajduje " +
                	"sie dosc daleko na polnoc, za rzadkim w tym miejscu " +
                	"lasem. Dalej na wschodzie zauwazasz blekitna wstege " +
                	"nieduzej rzeki, plynacej na polnoc, w strone Averu.\n";
                     break;
                case 8: opis+="Tu trakt zawraca bardziej na wschod, kierujac " +
                	"sie w strone niedalekiej rzeki. Las na polnocy " +
                	"ustapil miejsce rozleglej rowninie, ciagnacej sie " +
                	"na polnoc, az do dalekiego Averu. Patrzac na wschod " +
                	"dostrzegasz nieduza rzeke, plynaca na polnoc. " +
                	"Niewatpliwie jest to jeden z doplywow Averu.\n";
                     break;
                case 9: opis+="Znajdujesz sie na niezbyt szerokim moscie, " +
                	"przerzuconym przez nieznana ci rzeka, plynaca z " +
                	"poludnia na polnoc. Kierujac sie na zachod, " +
                	"dotrzesz po pewnym czasie do Nuln, zas na wschod " +
                	"trakt prowadzi wglab Averlandu. Na poludniowym " +
                	"wschodzie dostrzegasz nieduze jezioro, blyszczace " +
                	"w " + (czy_jasno()?
                	"ostrym swietle slonca":
                	"lagodnym swietle ksiezyca") + ". " +
                	"Daleko na poludniu " +
                	"i na poludniowym wschodzie dostrzegasz szczyty " +
                	"Gor Czarnych.\n";
                     break;
                case 10: opis+="Trakt prowadzi przez szerokie rowniny " +
                	"Averlandu na zachod i poludniowy wschod. Dalej " +
                	"na zachodzie widzisz nieduza rzeke, zas na " +
                	"poludniu jezioro, ktorego tafla " +
                	"odblyskuje w " + (czy_jasno()?
                	"ostrym swietle slonca":
                	"lagodnym swietle ksiezyca") + ". Trakt mija " +
                	"polnocny brzeg jeziora, kierujac sie wglab " +
                	"Averlandu. " +
                	"Daleko na poludniu, przy horyzoncie, widnieja " +
                	"potezne szczyty Gor Czarnych.\n";
                     break;
                case 11: opis+="Tutaj trakt najbardziej zbliza sie do " +
                	"jeziora. " +
                	(czy_jasno()?
                	"Widok blekitnej wody z jeziora, odbijajacej " +
                	"swiatlo slonca, sprawia, ze czujesz lekkie " +
                	"pragnienie. ":
                	"Odbity w wodzie blask ksiezyca sprawia wrazenie " +
                	"srebrzystej sciezki, wiodacej hen, za horyzont. ") +
                	"Trakt kieruje sie na wschod i polnocny zachod. " +
                	"Na polnocnym wschodzie widzisz dosc gesty las. " +
                	"Na poludniu na horyzoncie widoczne sa potezne " +
                	"szczyty Gor Czarnych.\n";
                     break;
                case 12: opis+="Trakt prowadzi tu z zachodu na wschod. " +
                	"Na polnocy widac gesty las, skrywajacy wszystko, " +
                	"co znajduje sie na polnocy. W kierunku lasu od " +
                	"traktu odchodzi nieduza polna droga. Daleko na " +
                	"poludniu widzisz szczyty Gor Czarnych, zas na " +
                	"wschodzie na horyzoncie z trudem dostrzegasz Gory " +
                	"Kranca Swiata.\n";
                     break;
                case 13: opis+=".\n";
                     break;
                case 14: opis+=".\n";
                     break;
                case 15: opis+=".\n";
                     break;
        }
        set_long(opis);
	return opis;
}

create_trakt()
{
        dlugi_opis(0);
}

create_droga_room()
{
        create_trakt();
        set_short("Trakt z Averlandu do Nuln");
        dlugi_opis(numer);

	add_event(" Kolo ciebie przejezdza galopem podazajacy w "
             +"kierunku Nuln oddzial jezdzcow. Moze byla to kawaleria, a "
             +"moze tylko grupa niecierpliwych podroznikow? Przemkneli tak "
             +"szybko, ze nie zdolales nic zauwazyc.\n");
        add_item(({"droge","trakt"}),"Trakt ten wyglada na dosc typowy dla " +
        	"Imperium. Niezbyt szeroki, lecz pozwalajacy na wyminiecie sie " +
        	"dwoch wozow, o powierzchni z kamiennych plyt, miejscami " +
        	"popekanych, jest dobrze zadbany tylko w poblizu Nuln. Im dalej " +
        	"wglab Averlandu, tym gorszy jest jego stan.\n");

    if (random(100, time()) < 15)
    dodaj_npca("/d/Imperium/Nuln/npc/podroznik"); 

}

string long_opis()
{
    return dlugi_opis(numer);
}

int go()
{
    int zmeczenie;
    string opis;
    
    zmeczenie = this_player()->query_fatigue() * 100 / this_player()->query_max_fatigue();
    
    if (!trudnosc())
    {
        write("Starasz sie zmusic do dalszej wedrowki, lecz jestes tak " +
            "potwornie zmeczon" + this_player()->koncowka("y", "a") + ", iz dalszy " +
            "marsz bez chwili odpoczynku jest ponad twoje mozliwosci.\n");
            
        say(QCIMIE(this_player(), PL_MIA) + " stara sie ruszyc w dalsza droge, lecz w " +
            "tej samej chwili zatrzymuje sie, nie mogac zlapac oddechu z " +
            "powodu zmeczenia.\n");
        return 1;
    }
   
   if (this_player()->query_option(OPT_BRIEF))
      return 0;
   
/* Opisy dla wypoczetego gracza */

    if (zmeczenie > 60)
    {
        if (pora_roku() == "zima")
        {
            if (pora_dnia() == "noc" | pora_dnia() == "polnoc")
                opis = "Szybkim krokiem ruszasz w ciemnosc, kryjaca sie " +
                    "tuz za granica pola widzenia. Po ciemku brniesz przez " +
                    "zasypany sniegiem trakt, wpadajac czasami w zaspy. " +
                    "Pokonujesz je jednak bez wiekszego problemu. Uwazasz, "+
                    "ze przesz" + this_player()->koncowka("edles", "las") + " juz spory "+
                    "kawalek. Postanawiasz wiec zatrzymac sie na chwile."; 
            else
                opis = "Pod twoimi nogami skrzypi snieg, gdy ruszasz " +
                    "szybkim krokiem w dalsza droge. Od czasu do czasu " +
                    "musisz przedostac sie przez zaspy usypane na twojej " +
                    "drodze przez wiatr, lecz dziarsko pokonujesz " +
                    "wszystkie przeszkody. Przesz" + 
                    this_player()->koncowka("edles", "las") + " juz spory kawalek. " +
                    "Najwyzszy czas zatrzymac sie i rozejrzec po okolicy.";
        }
                    
        if (!(pora_dnia() == "noc" | pora_dnia() == "polnoc")) 
            opis = " Spogladasz na trakt ciagnacy sie przed toba i szybkim " +
            "krokiem ruszasz w dalsza droge. Poniewaz jestes wypoczet" +
            this_player()->koncowka("y", "a") + ", pokonujesz szybko kolejne odcinki " +
            "traktu, zastanawiajac sie, co sie kryje poza horyzontem. " +
            "Po pewnym czasie, gdy uwazasz iz przesz" + 
            this_player()->koncowka("edles", "las") + " juz spory kawalek, " +
            "postanawiasz zatrzymac sie na chwile.";
        else
            opis = " Twoje pole widzenia jest bardzo ograniczone, lecz pomimo " +
              "to ruszasz szybkim krokiem, nie zastanawiajac sie dlugo. " +
              "Poniewaz jestes wypoczet" + this_player()->koncowka("y", "a") +
              ", poruszasz sie szybko, przechodzac kolejny odcinek traktu."+
              " Po pewnym czasie, gdy uwazasz iz przesz" +
              this_player()->koncowka("edles", "las") + " juz spory kawalek, " +
              "postanawiasz zatrzymac sie na chwile.";  
    } 
    else
/* Opisy dla gracza zlekka juz zmeczonego */

    if (zmeczenie > 30)
    {
        if (!(pora_dnia() == "noc" | pora_dnia() == "polnoc")) 
            opis = "Powoli, z pewnym ociaganiem decydujesz sie " +
              "wyruszyc w dalsza droge traktem. Zaczynasz juz odczuwac " +
              "pierwsze oznaki zmeczenia, nie sa one jednak jeszcze na " +
              "tyle uciazliwe, zeby spowalniac podroz. Pokonujesz wiec " +
              "kolejne odcinki traktu, przystajac czasami troche, aby " +
              "rozejrzec sie dookola. Wlasnie zatrzymal" +
              this_player()->koncowka("es", "as") + " sie w jednym z takich miejsc.";
        else
            opis = "Pomimo iz jest ciemno, decydujesz sie wyruszyc w dalsza " +
              "podroz traktem. Powoli zaczynasz odczuwac skutki zmeczenia, " +
              "lecz jak na razie nie sa one na tyle powazne, " +
              "aby cie zatrzymac. Zapuszczasz sie wiec w mrok nocy " +
              "pokonujac kolejne odcinki traktu. Po pewnym czasie " +
              "postanawiasz sie jednak zatrzymac na chwile, aby rozejrzec " +
              "sie po okolicy.";
    }
    else
/* Opisy dla gracza baaardzo zmeczonego   */
    if(zmeczenie <= 30)
    {
        opis = "Czujesz sie bardzo zmeczon" + this_player()->koncowka("y", "a") +
            ", pomimo to postanawiasz ruszyc w dalsza droge. Co jakis " +
            "czas musisz sie zatrzymac, aby zlapac oddech i dac chwile " +
            "odpoczynku swoim strudzonym nogom. Idziesz jednak dzielnie " +
            "przed siebie zostawiajac za soba kolejne odcinki traktu. " +
            "Po pewnym czasie postanawiasz jednak zatrzymac sie na " +
            "dluzsza chwile.";
    }
  
    opis="\n" + opis + "\n\n";
    
    write(opis);
    
    return 0;

}

string
opis_jeziorka()
{
   string str="Jeziorko jest niezbyt duze, wyciagniete w strone poludniowa. " +
   "Brzegi jego sa zarosniete trzcinami, rozstepujacymi sie w miejscu, " +
   "gdzie z jeziora wyplywa rzeka, plynaca na polnoc, w strone Averu. ";
   
   switch(pora_roku())
     {
        case "zima":str+="Mimo zimy, jeziorko nie zamarzlo, widocznie " +
        	"gdzies w jego glebi bije cieple zrodlo.";
           break;
        case "lato":str+="Teraz, w lecie, nad jeziorkiem i w jego poblizu " +
        	"znajduje sie duza ilosc roznych owadow, szczegolnie " +
        	"zauwazani sa komary.";
           break;
        case "jesien":str+="Jeziorko jest szare, jakby smutne z powodu zlej " +
        	"jesiennej pogody.";
           break;
        case "wiosna":str+="Nad jeziorem maja przystanek w drodze powrotnej " +
        	"z cieplych krain bociany i czaple.";
           break;
     }
   
   return str+"\n";
}
string
opis_lasu2()
{
  string opis="To, co widzisz, jest tylko poludniowym obszarem tego lasu. " +
  		"Wiesz, ze ciagnie sie on daleko na polnoc, lecz nie wiesz, " +
  		"jak daleko. ";
  
  if (czy_jasno())
      {
        
        switch(pora_roku())
            {
              case "lato":  opis+="Slonce gra wsrod koron rosnacych " +
              		"w tej okolicy debow i sosien.";
               		    break;
              case "zima":  opis+="Snieg, lezacy na galeziach drzew, odblyskuje " +
              		"w jasnym swietle zimowego slonca.";
              		    break;
              case "jesien":opis+="Mimo panujacej jesieni, liscie debow trzymaja sie " +
              		"mocno galezi, i nie zamierzaja opadac.";
              		    break;
              case "wiosna":opis+="Na galeziach nabrzmiewaja paczki, juz wkrotce drzewa " +
              		"okrasza sie zielonymi liscmi.";
              		    break;
            }     
      }
   else
      {
        opis+="W panujacych ciemnosciach las wyglada mrocznie i zatrwazajaco. " +
        	"Kto wie, jakie stwory wychodza na lowy noca... ";
        switch(pora_roku())
            {
              case "lato":  opis+="Jednak cieplo tej letniej nocy uspokaja cie.";
              		    break;
              case "zima":  opis+="Teraz, zima, nawet zwykle wilki moga zaatakowac, " +
              		"jesli sa glodne.";
              		    break;
              case "jesien":opis+="Nie przydaje ci dobrego nastroju tez ten siapiacy " +
              		"deszcz, padajacy juz od dobrych kilku godzin.";
              		    break;
              case "wiosna":opis+="Teraz, wiosna, las jest pelen dzwiekow, wydawanych " +
              		"przez rozne zwierzeta. To dobrze, gdzy cisza moglaby byc znakiem " +
              		"klopotow.";
              		    break;
            }     
      }
  
  return opis+"\n";
}
string
opis_lasu1()
{
   string opis;
   
   if (czy_jasno())
      {
        opis="W jasnym swietle slonca las wydaje sie byc radosny i spokojny. ";
        switch(pora_roku())
            {
              case "lato":  opis+="Slonce gra wsrod zielonych lisci rosnacych " +
              		"w tej okolicy bukow i swierkow.";
               		    break;
              case "zima":  opis+="Snieg, lezacy na galeziach drzew, odblyskuje " +
              		"w jasnym swietle zimowego slonca.";
              		    break;
              case "jesien":opis+="Promienie jesiennego slonca oswietlaja kaledoskop " +
              		"zoltych i czerwonych lisci.";
              		    break;
              case "wiosna":opis+="Na galeziach nabrzmiewaja paczki, juz wkrotce drzewa " +
              		"okrasza sie zielonymi liscmi.";
              		    break;
            }     
      }
   else
      {
        opis="W panujacych ciemnosciach las wyglada mrocznie i zatrwazajaco. " +
        	"Kto wie, jakie stwory wychodza na lowy noca... ";
        switch(pora_roku())
            {
              case "lato":  opis+="Jednak cieplo tej letniej nocy uspokaja cie.";
              		    break;
              case "zima":  opis+="Teraz, zima, nawet zwykle wilki moga zaatakowac, " +
              		"jesli sa glodne.";
              		    break;
              case "jesien":opis+="Nie przydaje ci dobrego nastroju tez ten siapiacy " +
              		"deszcz, padajacy juz od dobrych kilku godzin.";
              		    break;
              case "wiosna":opis+="Teraz, wiosna, las jest pelen dzwiekow, wydawanych " +
              		"przez rozne zwierzeta. To dobrze, gdzy cisza moglaby byc znakiem " +
              		"klopotow.";
              		    break;
            }     
      }
   
   return opis + "\n";
}