/* Neutralny opis pogodowo/porodniowo/pororokowy 
 * by Elvaron
 * slight zmiany by Silvy
 * Loren - Tanis
 */

inherit "/d/Imperium/std/room";

/* Ta funkcja sklada nam dlugi opis pokoju z 3 kawalkow
 * opisu przed + zmiennego opisu + opisu za
 * Teraz sa to dwie funkcje : elfia_pora_roku() i inna_pora_roku(), 
 * odpowiednio dla elfow i innych.
 */

string elfia_pora_roku()
{
    string opis = "";

/* ================================ */
/* Ogolny opis zimowego krajobrazu  */
/* ================================ */

    if (pora_roku() == "zima")
    {
        opis += "Wszystko dokola przykryte jest gruba warstwa bialego sniegu,";

    /* opis por dnia podczas zimy */
        switch(pora_dnia())
        {
            case "swit": opis += " lekko zarozowionego blaskiem slonca, " +
                    "ktore niedlugo wynurzy sie zza horyzontu."; break;
                    
            case "wczesny ranek": opis += " skrzacego sie w promieniach " +
                    "wschodzacego slonca."; break;

	    case "ranek": opis += " rozblyskujacego jasno w swietle " +
	            "porannego slonca."; break;
	            
            case "poludnie": opis += " rozblyskujacego w promieniach " +
                    "wysoko stojacego slonca."; break;
                    
            case "popoludnie": opis += " rozblyskujacego w promieniach slonca " +
                    "chylacego sie ku zachodowi."; break;
                    
            case "wieczor": opis += " po ktorym snuja sie dlugie cienie, " +
                    "rozswietlane gdzieniegdzie slabym blaskiem " +
                    "zachodzacego slonca."; break;
                    
            case "pozny wieczor": opis += " rozjasnionego lekko gasnaca na " +
                    "zachodzie luna."; break;
                    
            case "noc": opis += " skapanego w srebrzystej poswiacie " +
                    "zimowego nieba."; break;

            case "polnoc": opis += " skapanego w srebrzystej poswiacie " +
                    "zimowego nieba.";
        }
    }
    else
 /* ================== */
 /* Glowny opis wiosny */
 /* ================== */
    if (pora_roku() == "wiosna")
    {
        if (pora_dnia() != "noc") 
            opis += "Wszystko dookola ciebie wydaje sie budzic z zimowego " +
                "letargu i stara sie w szalonym tempie nadrobic stracony czas.";

/* opis wiosny zalezny od pory dnia */
	switch (pora_dnia())
	{
	    case "swit": opis += " Trawa pokryta jest bialym puchem szronu. "+
	        "Na wschodzie, nad horyzontem widac blask powoli " +
	        "wschodzacego slonca."; break;
	        
	    case "wczesny ranek": opis += " Czasami dostrzegasz na trawie " +
	        "slady szronu znikajacego szybko w promieniach wschodzacego " +
	        "slonca."; break;
	        
	    case "ranek": opis += " Czasem, gdy spojrzysz na trawe dostrzegasz " +
	        "krople rosy rozblyskujace w porannym sloncu."; break;

	    case "poludnie": opis += " Pomimo, iz powiewa chlodnawy wiaterek "+
	        "jest dosyc cieplo, szczegolnie tam, gdzie padaja promienie "+
	        "wysoko swiecacego slonca."; break;
	        
	    case "popoludnie": opis += " Pomimo, iz powiewa chlodnawy " +
	        "wiaterek jest dosyc cieplo szczegolnie tam, gdzie " +
	        "padaja promienie chylacego sie ku zachodowi slonca."; break;
	         
	    case "wieczor": opis += " Slonce powoli zaczyna sie chowac " +
	        "poza horyzont, spowijajac wszystko w swym czerwonym blasku.";
	        break;
	        
	    case "pozny wieczor": opis += " Na zachodzie powoli gasnie " +
	        "luna odchodzacego dnia."; break;
	        
	    case "noc": opis += "Panuje wlasnie dosyc chlodna wiosenna noc. " +
	        "Robi sie powoli coraz zimniej, nad ranem moze wystapic " +
	        "nawet przymrozek."; break;

	    case "polnoc": opis += " Panuje wlasnie dosyc chlodna wiosenna noc. " +
	        "Robi sie powoli coraz zimniej, nad ranem moze wystapic " +
	        "nawet przymrozek.";
	}
    }
    else

/* ================ */
/* Glowny opis lata */
/* ================ */

    if (pora_roku() == "lato")
    {
        switch(pora_dnia())
        {
	    case "swit": opis += "Na wschodzie niebo stopniowo sie " +
	        "rozjasnia. Niedlugo slonce znow wychyli sie zza horyzontu " +
	        "i na ziemie poleja sie strumienie goraca. Tymczasem jednak " +
	        "panuje mily chlod."; break;
	        
	    case "wczesny ranek": opis += "Na razie nie jest jeszcze " +
	        "zbyt goraco, jednak plomienna tarcza slonca wznoszaca sie " +
	        "tuz ponad horyzont zapowiada kolejny upalny dzien lata.";
	        break;
	        
	    case "ranek": opis += "Zaczyna sie robic coraz cieplej. " +
	        "Slonce powoli, lecz nieustannie zmierza w kierunku zenitu, "+
	        "niedlugo upal stanie sie nie do zniesienia."; break;
	        
	    case "poludnie": opis += "Pod palacymi promieniami slonca cala " +
	        "przyroda wydaje sie uginac i malec. Wszystko, co znajduje " +
	        "sie w oddali zdaje sie falowac pod wplywem goraca."; break;
	         
	    case "popoludnie": opis += "Pora najwiekszych upalow juz minela, "+
	        "jest jednak jeszcze bardzo goraco. Slonce przekroczylo juz "+
	        "zenit i powoli zaczyna zmierzac ku zachodowi."; break;
	        
	    case "wieczor": opis += "Slonce powoli zaczyna znikac za " +
	        "horyzontem, konczac kolejny upalny dzien lata. Niedlugo " +
	        "nastapi noc, kojaca skutki dnia swoim chlodem."; break;
	        
	    case "pozny wieczor": opis += "Slonce zniknelo za horyzontem, " +
	        "pozostawiajac jedynie lekki poblask na niebie. Ziemia " +
	        "powoli zaczyna stygnac, zas w powietrzu unosi sie " +
	        "przyjemny chlod."; break;
	        
	    case "noc": opis += "Panuje wlasnie ciepla letnia noc. Cala " +
	        "okolica wydaje sie odpoczywac po upalnym dniu w kojacym " +
	        "chlodzie nocy."; break;

	    case "polnoc": opis += "Panuje wlasnie ciepla letnia noc. Cala " +
	        "okolica wydaje sie odpoczywac po upalnym dniu w kojacym " +
	        "chlodzie nocy.";
	}
    }
    else
    
/* =================== */
/* Glowny opis jesieni */    
/* =================== */

    if (pora_roku() == "jesien")
    {
        switch(pora_dnia())
        {
	    case "swit": opis += "Ciemnosci nocy powoli umykaja przed " +
	        "szarzyzna switu. Wciaz jest chlodno, lecz kiedy slonce " +
	        "wstanie, powinno sie nieco ocieplic. Powoli zaczyna " +
	        "podnosic sie delikatna mgla."; break;
	        
	    case "wczesny ranek": opis += "Jasna sloneczna tarcza wynurzyla " +
	        "sie zza horyzontu. Mrok nocy prysl, a pozostaly jedynie " +
	        "cienie rzucane przez dosyc czesto przeslaniajace slonce " +
	        "chmury, gnane jesiennym wiatrem. Chlod poranka dosyc mocno " +
	        "daje sie we znaki."; break;
	        
	    case "ranek": opis += "Promienie podnoszacego sie nad " +
	        "horyzontem slonca od czasu do czasu przedostaja sie " +
	        "pomiedzy sunacymi po niebie chmurami. Gwaltowne porywy " +
	        "jesiennego, chlodnego wiatru unosza w gore suche liscie " +
	        "i tumany kurzu."; break;
	        
	    case "poludnie": opis += "Slonce, pomimo iz swieci jasno, nie " +
	        "grzeje juz tak mocno jak latem. Jesienny wiatr co jakis " +
	        "czas unosi w gore pozolkle liscie i zdzbla traw. Po " +
	        "niebie przeciagaja nisko lecace chmury, zwiastujace " +
	        "jesienne deszcze.";  break;
	        
	    case "popoludnie": opis += "Jasna tarcza slonca leniwie " +
	        "przemierza niebosklon. Cienie powoli sie wydluzaja. Gnane " +
	        "jesiennym wiatrem chmury zwiastuja deszcze."; break;
	        
	    case "wieczor": opis += "Czerwone slonce powoli chowa sie za " +
	        "horyzontem, ostatnimi promieniami rozjasniajac gruba " +
	        "powloke chmur. Czerwona luna powoli gasnie ustepujac " +
	        "ciemnosciom nocy. Porywisty wiatr niesie ze soba " +
	        "przenikliwy chlod."; break;
	        
	    case "pozny wieczor": opis += "Na niebie stopniowo pojawiaja " +
	        "sie kolejne gwiazdy, ktorych blask co chwile " +
	        "przeslaniany jest przez nisko lecace chmury. " +
	        "Chlodny, porywisty wiatr z polnocy przenika do szpiku " +
	        "kosci wzbudzajac drzenie."; break;
	        
	    case "noc": opis += "Panuje wlasnie noc, rozswietlana miejscami " +
	        "przez gwiazdy, ktorym udaje sie przebic przez rzadkie " +
	        "chmury plynace po niebie. Jest dosyc chlodno, nie do konca " +
	        "z powodu temperatury, lecz raczej zimnego, przejmujacego " +
	        "wiatru z polnocy. Powietrze przesycone jest wilgocia " +
	        "osadzajaca sie na wszystkim w okolicy."; break;

	    case "polnoc": opis += "Panuje wlasnie noc, rozswietlana miejscami " +
	        "przez gwiazdy, ktorym udaje sie przebic przez rzadkie " +
	        "chmury plynace po niebie. Jest dosyc chlodno, nie do konca " +
	        "z powodu temperatury, lecz raczej zimnego, przejmujacego " +
	        "wiatru z polnocy. Powietrze przesycone jest wilgocia " +
	        "osadzajaca sie na wszystkim w okolicy."; break;
	}
    }

return opis;
}

string inna_pora_roku()
{
    string opis = "";

/* ================================ */
/* Ogolny opis zimowego krajobrazu  */
/* ================================ */

    if (pora_roku() == "zima")
    {
        opis += "Wszystko dokola przykryte jest gruba warstwa bialego sniegu,";

    /* opis por dnia podczas zimy */
        switch(pora_dnia())
        {
            case "swit": opis += " lekko zarozowionego blaskiem slonca, " +
                    "ktore niedlugo wynurzy sie zza horyzontu."; break;
                    
            case "wczesny ranek": opis += " skrzacego sie w promieniach " +
                    "wschodzacego slonca."; break;

	    case "ranek": opis += " rozblyskujacego jasno w swietle " +
	            "porannego slonca."; break;
	            
            case "poludnie": opis += " rozblyskujacego w promieniach " +
                    "wysoko stojacego slonca."; break;
                    
            case "popoludnie": opis += " rozblyskujacego w promieniach slonca " +
                    "chylacego sie ku zachodowi."; break;
                    
            case "wieczor": opis += " po ktorym snuja sie dlugie cienie, " +
                    "rozswietlane gdzieniegdzie slabym blaskiem " +
                    "zachodzacego slonca."; break;
                    
            case "pozny wieczor": opis += " rozjasnionego lekko gasnaca na " +
                    "zachodzie luna."; break;
                    
            case "noc": opis += " skapanego w srebrzystej poswiacie " +
                    "zimowego nieba.";
        }
    }
    else
 /* ================== */
 /* Glowny opis wiosny */
 /* ================== */
    if (pora_roku() == "wiosna")
    {
        if (pora_dnia() != "noc") 
            opis += "Wszystko dookola ciebie wydaje sie budzic z zimowego " +
                "letargu i stara sie w szalonym tempie nadrobic stracony czas.";

/* opis wiosny zalezny od pory dnia */
	switch (pora_dnia())
	{
	    case "swit": opis += " Trawa pokryta jest bialym puchem szronu. "+
	        "Na wschodzie, nad horyzontem widac blask powoli " +
	        "wschodzacego slonca."; break;
	        
	    case "wczesny ranek": opis += " Czasami dostrzegasz na trawie " +
	        "slady szronu znikajacego szybko w promieniach wschodzacego " +
	        "slonca."; break;
	        
	    case "ranek": opis += "Czasem, gdy spojrzysz na trawe dostrzegasz " +
	        "krople rosy rozblyskujace w porannym sloncu."; break;

	    case "poludnie": opis += " Pomimo, iz powiewa chlodnawy wiaterek "+
	        "jest dosyc cieplo, szczegolnie tam, gdzie padaja promienie "+
	        "wysoko swiecacego slonca."; break;
	        
	    case "popoludnie": opis += " Pomimo, iz powiewa chlodnawy " +
	        "wiaterek jest dosyc cieplo szczegolnie tam, gdzie " +
	        "padaja promienie chylacego sie ku zachodowi slonca."; break;
	         
	    case "wieczor": opis += " Slonce powoli zaczyna sie chowac " +
	        "poza horyzont, spowijajac wszystko w swym czerwonym blasku.";
	        break;
	        
	    case "pozny wieczor": opis += " Na zachodzie powoli gasnie " +
	        "luna odchodzacego dnia."; break;
	        
	    case "noc": opis += "Panuje wlasnie dosyc chlodna wiosenna noc. " +
	        "Robi sie powoli coraz zimniej, nad ranem moze wystapic " +
	        "nawet przymrozek.";
	}
    }
    else

/* ================ */
/* Glowny opis lata */
/* ================ */

    if (pora_roku() == "lato")
    {
        switch(pora_dnia())
        {
	    case "swit": opis += "Na wschodzie niebo stopniowo sie " +
	        "rozjasnia. Niedlugo slonce znow wychyli sie zza horyzontu " +
	        "i na ziemie poleja sie strumienie goraca. Tymczasem jednak " +
	        "panuje mily chlod."; break;
	        
	    case "wczesny ranek": opis += "Na razie nie jest jeszcze " +
	        "zbyt goraco, jednak plomienna tarcza slonca wznoszaca sie " +
	        "tuz ponad horyzont zapowiada kolejny upalny dzien lata.";
	        break;
	        
	    case "ranek": opis += "Zaczyna sie robic coraz cieplej. " +
	        "Slonce powoli, lecz nieustannie zmierza w kierunku zenitu, "+
	        "niedlugo upal stanie sie nie do zniesienia."; break;
	        
	    case "poludnie": opis += "Pod palacymi promieniami slonca cala " +
	        "przyroda wydaje sie uginac i malec. Wszystko, co znajduje " +
	        "sie w oddali zdaje sie falowac pod wplywem goraca."; break;
	         
	    case "popoludnie": opis += "Pora najwiekszych upalow juz minela, "+
	        "jest jednak jeszcze bardzo goraco. Slonce przekroczylo juz "+
	        "zenit i powoli zaczyna zmierzac ku zachodowi."; break;
	        
	    case "wieczor": opis += "Slonce powoli zaczyna znikac za " +
	        "horyzontem, konczac kolejny upalny dzien lata. Niedlugo " +
	        "nastapi noc, kojaca skutki dnia swoim chlodem."; break;
	        
	    case "pozny wieczor": opis += "Slonce zniknelo za horyzontem, " +
	        "pozostawiajac jedynie lekki poblask na niebie. Ziemia " +
	        "powoli zaczyna stygnac, zas w powietrzu unosi sie " +
	        "przyjemny chlod."; break;
	        
	    case "noc": opis += "Panuje wlasnie ciepla letnia noc. Cala " +
	        "okolica wydaje sie odpoczywac po upalnym dniu w kojacym " +
	        "chlodzie nocy.";
	}
    }
    else
    
/* =================== */
/* Glowny opis jesieni */    
/* =================== */

    if (pora_roku() == "jesien")
    {
        switch(pora_dnia())
        {
	    case "swit": opis += "Ciemnosci nocy powoli umykaja przed " +
	        "szarzyzna switu. Wciaz jest chlodno, lecz kiedy slonce " +
	        "wstanie, powinno sie nieco ocieplic. Powoli zaczyna " +
	        "podnosic sie delikatna mgla."; break;
	        
	    case "wczesny ranek": opis += "Jasna sloneczna tarcza wynurzyla " +
	        "sie zza horyzontu. Mrok nocy prysl, a pozostaly jedynie " +
	        "cienie rzucane przez dosyc czesto przeslaniajace slonce " +
	        "chmury, gnane jesiennym wiatrem. Chlod poranka dosyc mocno " +
	        "daje sie we znaki."; break;
	        
	    case "ranek": opis += "Promienie podnoszacego sie nad " +
	        "horyzontem slonca od czasu do czasu przedostaja sie " +
	        "pomiedzy sunacymi po niebie chmurami. Gwaltowne porywy " +
	        "jesiennego, chlodnego wiatru unosza w gore suche liscie " +
	        "i tumany kurzu."; break;
	        
	    case "poludnie": opis += "Slonce, pomimo iz swieci jasno, nie " +
	        "grzeje juz tak mocno jak latem. Jesienny wiatr co jakis " +
	        "czas unosi w gore pozolkle liscie i zdzbla traw. Po " +
	        "niebie przeciagaja nisko lecace chmury, zwiastujace " +
	        "jesienne deszcze.";  break;
	        
	    case "popoludnie": opis += "Jasna tarcza slonca leniwie " +
	        "przemierza niebosklon. Cienie powoli sie wydluzaja. Gnane " +
	        "jesiennym wiatrem chmury zwiastuja deszcze."; break;
	        
	    case "wieczor": opis += "Czerwone slonce powoli chowa sie za " +
	        "horyzontem, ostatnimi promieniami rozjasniajac gruba " +
	        "powloke chmur. Czerwona luna powoli gasnie ustepujac " +
	        "ciemnosciom nocy. Porywisty wiatr niesie ze soba " +
	        "przenikliwy chlod."; break;
	        
	    case "pozny wieczor": opis += "Na niebie stopniowo pojawiaja " +
	        "sie kolejne gwiazdy, ktorych blask co chwile " +
	        "przeslaniany jest przez nisko lecace chmury. " +
	        "Chlodny, porywisty wiatr z polnocy przenika do szpiku " +
	        "kosci wzbudzajac drzenie."; break;
	        
	    case "noc": opis += "Panuje wlasnie noc, rozswietlana miejscami " +
	        "przez gwiazdy, ktorym udaje sie przebic przez rzadkie " +
	        "chmury plynace po niebie. Jest dosyc chlodno, nie do konca " +
	        "z powodu temperatury, lecz raczej zimnego, przejmujacego " +
	        "wiatru z polnocy. Powietrze przesycone jest wilgocia " +
	        "osadzajaca sie na wszystkim w okolicy."; break;
	}
    }

return opis;
}

/* Tutaj jest mala ale czasami przydatna funkcja pozwalajaca zmienic
 * zmeczenie gracza w zaleznosci od pory dnia np gdy jest na tyle
 * nierozsadny ze stara sie gdzies dotrzec w najwiekszy upal
 * Odwolanie do tej funkcji nalezy dodac w add_exit
 */

int 
go()
{
    int zmeczenie, trudnosc;
    string opis; 
    
    trudnosc = 5;
    
//    return 1;  
//    NA razie !!!!!!!

    if (pora_roku() == "lato")
    {
        switch(pora_dnia())
        {
	    case "swit": trudnosc = 3; break;
	    case "wczesny ranek": trudnosc = 2; break;
	    case "ranek": trudnosc = 8; break;
	    case "poludnie": trudnosc = 15; break;
	    case "popoludnie": trudnosc = 8; break;
	    case "wieczor": trudnosc = 6; break;
	    case "pozny wieczor": trudnosc = 2; break;
	    case "noc": trudnosc = 1; break;
        }
    }
    else
    if (pora_roku() == "jesien")
    {
        switch(pora_dnia())
        {
	    case "swit": trudnosc = 4; break;
	    case "wczesny ranek": trudnosc = 3; break;
	    case "ranek": trudnosc = 2; break;
	    case "poludnie": trudnosc = 1; break;
	    case "popoludnie": trudnosc = 1; break;
	    case "wieczor": trudnosc = 3; break;
	    case "pozny wieczor": trudnosc = 2; break;
	    case "noc": trudnosc = 3; break;
        }
    }
    else
    if (pora_roku() == "zima")
    {
        switch(pora_dnia())
        {
	    case "swit": trudnosc = 5; break;
	    case "wczesny ranek": trudnosc = 4; break;
	    case "ranek": trudnosc = 3; break;
	    case "poludnie": trudnosc = 2; break;
	    case "popoludnie": trudnosc = 3; break;
	    case "wieczor": trudnosc = 4; break;
	    case "pozny wieczor": trudnosc = 5; break;
	    case "noc": trudnosc = 6; break;
        }
    }
    else
    if (pora_roku() == "wiosna")
    {
         switch(pora_dnia())
         {
	    case "swit": trudnosc = 3; break;
	    case "wczesny ranek": trudnosc = 2; break;
	    case "ranek": trudnosc = 2; break;
	    case "poludnie": trudnosc = 1; break;
	    case "popoludnie": trudnosc = 1; break;
	    case "wieczor": trudnosc = 2; break;
	    case "pozny wieczor": trudnosc = 2; break;
	    case "noc": trudnosc = 3; break;
         }
    }

    // To paskudztwo ponizej zwieksza zmeczenie w zaleznosci od rasy
    // Wyobrazcie sobie ogra przelazacego przez geste krzaki... ;-)

    switch(this_player()->query_race_name())
      {
        case "elf"       :
        case "halfling"  : 
                           break;
        case "krasnolud" :
        case "czlowiek"  : trudnosc=ftoi(1.5*itof(trudnosc));
                           break;
        case "ogr"       : trudnosc=ftoi(2.5*itof(trudnosc));
                           break;
        default : break;
      }
      

//    this_player()->add_fatigue(-trudnosc);
// To by chyba 2 razy utrudnialo droge ! Raz tutaj, a raz, jako zwracana trudnosc !

    return trudnosc;
}

int
czy_dzien_noc()
{
  switch(pora_dnia())
        {
	    case "swit": return 0;
	    case "wczesny ranek": return 0;
	    case "ranek": return 0;
	    case "poludnie": return 0;
	    case "popoludnie": return 0;
	    case "wieczor": return 0;
	    case "pozny wieczor": return 1;
	    case "noc": return 1;
        }

}

string
opis(string napis1,string napis2)
{
  if(czy_dzien_noc()==1) return (napis2);
  if(czy_dzien_noc()==0) return (napis1);
  return (" ");
}