#include "ogolne.h"

#define OPIEKUN_GILDII "tanis"

#define PROP_PRZERZUCANIA_PRZEDMIOTU	"_ten_przedmiot_jest_przerzucany_"
#define PLAC_W_ATHEL	APATH + "ulica28.c"

#define LPATH			PATH + "Lelfy/"

#define GILDIA          LPATH + "gildia.c"

#define START			LPATH + "swiatynia2"

#define IMPERIUM_DEFAULT_START "/d/Imperium/Nuln/sklepy/karczma1"

#define POMOC_PATH		LPATH + "pomoc/"

#define BLEDY			LPATH + "log/bledy.log"
#define OGOLNY_LOG		LPATH + "log/ogolne.log"

// Glosowanie:
#define DLUGOSC_ZGLASZANIA	3
#define DLUGOSC_WYBIERANIA	4
#define CO_ILE_GLOSOWANIE	9053522222
#define MIN_GLOSOW		4

#define LICZBA_RADNYCH		3
#define MIN_LICZBA_RADNYCH	2
#define MIN_RADNYCH_ROZWIAZUJE	2

/*
 * Ponizsze definy oznacza liczbe radnych, ktorzy musza zaakceptowac czlonka, aby zostal on przyjety
 */

#define MIN_POPARCIE		2

#define OSOBY			LPATH + "dane/osoby"
#define GLOSOWANIE		LPATH + "dane/glosowanie"
#define WYNIK			LPATH + "dane/wynik"
#define WYWAL			LPATH + "dane/do_wywalenia"
#define EXTRA_INFO		LPATH + "dane/info"

#define P_NOWE			LPATH + "p_nowe/"
#define P_AKTUALNE		LPATH + "p_akt/"
#define P_ODRZUCONE		LPATH + "p_odrz/"
#define P_ZAAKCEPTOWANE		LPATH + "p_zakc/"
#define P_ARCHIWALNE		LPATH + "p_arch/"

#define GUILD_TYPE  "race"
#define GUILD_STYLE "race"
#define GUILD_NAME  "Lesne Elfy"

#define IS_ELF(ob)		(ob->query_race_name()=="elf")
#define IS_MEMBER_LELF(ob)	ob->query_guild_member(GUILD_NAME)

#define SHADOW      LPATH + "lelf_sh"
#define SOUL	    LPATH + "lelf_soul"



/*	
Podatek: 
 *  Skile:
 *	1.5 % za 60 leveli w SS_WEP_* i SS_DEF
 *	1 % za 60 leveli w SS_*
 *	a wiec :
 *	40 leveli w SS_WEP*
 * 	       40*1.5%/60=1%=6/6
 *	80 leveli w SS*
 *	       110*1%/60=1.83%=11/6
 *
 *                              17/6 %  -> 2.83 %
 *      +0.5% za bezplatna jadalnie     -> 0.5 %
 *      +1% za sekretarza przy skrzyni  -> 1.0 %
 *
 *      SUMA:				-> 4.35 % -> 4 %
 */

#define TAX	    4

#define SPECJALNE_PRAWA_DOSTEPU	(["tanis":99,"silvy":99,"tigr":99,])
// Prawa dostepu:
// 0: brak
// 10: wygnany
// 20: czlonek
// 30: radny

#define LEV_NIC		0
#define LEV_WYGNANY	10
#define LEV_CZLONEK	20
#define LEV_RADNY	30

#define CHECK_MOUTH_BLOCKED \
	if (Prop=this_player()->query_prop(LIVE_M_MOUTH_BLOCKED)) {\
	notify_fail(stringp(Prop)?Prop:\
	   "Nie jestes w stanie wydobyc z siebie dzwieku.\n");}
	   
private mixed Prop;


// Ponizsze definicje okreslaja, ktore dane zapisujemy/odczytujemy - za to mamy tylko jedna
//  funkcje z parametrem, a nie kilka.

#define SECURE "/secure/master"

#define WSZYSTKIE_DAT  0
#define OSOBY_DAT 1
#define GLOSOWANIE_DAT 2
#define WYNIK_DAT      3
#define INFO_DAT       4
#define WYWAL_DAT    5

/*
 * Statusy osob
 */

#define AKTYWNI          -1
#define WSZYSCY           0
#define JEST_CZLONKIEM    1
#define JEST_RADNYM       2
#define JEST_WIZEM        3
#define ZABIL_NPCA        4
#define ZABIL_LELFA       5
#define ZABIL_ZWIERZE     6
#define ZOSTAL_WYRZUCONY  7
#define SAM_ODSZEDL       8
#define ZMIENIL_RASE      9
#define ZOSTAL_SKASOWANY 10

#define ZA_CO_WYGNANY ({ZABIL_NPCA,ZABIL_LELFA,ZABIL_ZWIERZE,ZOSTAL_WYRZUCONY})

/*
 * Kategorie podan
 */

#define WSZYSTKIE_P       0
#define NOWE_P            1
#define AKTUALNE_P        2
#define ODRZUCONE_P       3
#define ZAAKCEPTOWANE_P   4

#define ARCHIWALNE_P      9

/*
 * Tutaj sa tytuly gildiowe
 * Sa w osobnym pliku, bo kilka rzeczy z nich korzysta...
 *
 */

string
jaki_tytul(object kto)
{
    int gstat=kto->query_stat(6);
    int plec=kto->query_gender();
    string str = "";

    if((GILDIA)->query_prawa(kto->query_real_name())==LEV_WYGNANY)
    {
    	if(plec)
    		str += "Elfia Renegatka";
    	else str += "Elfi Renegat";
    return str;
    }

    if(gstat >= 120) // To NIE jest pomylka!!! ma byc 120, a nie 102!!!
    {
    	str += "Lesna Legenda";
        return str;
    }    
    if(gstat >= 100)
    {
    	str += "Dziecko Puszczy";
        return str;
    }    
    if(gstat >= 95)
    {
    	if(plec)
    		str += "Siostra Puszczy";
    else 	str += "Brat Puszczy";
    return str;
    }
    if(gstat >= 90)
    {
    	if(plec)
    		str += "Przyjaciolka Puszczy";
    	else str += "Przyjaciel Puszczy";
    return str;
    }
    if(gstat >= 85)
    {
    	if(plec)
    		str += "Tanczaca w Gestwinach Puszczy";
    	else str += "Tanczacy w Gestwinach Puszczy";
        return str;
    }
    if(gstat >= 80)
    {
    	if(plec)
    		str += "Sluchajaca Glosu Puszczy";
    	else str += "Sluchajacy Glosu Puszczy";
        return str;

    }
    if(gstat >= 75)
    {
    	if(plec)
    		str += "Kroczaca w Gestwinach Puszczy";
    	else str += "Kroczacy w Gestwinach Puszczy";
        return str;

    }
    if(gstat >= 70)
    {
    	if(plec)
    		str += "Szukajaca Puszczy";
    else 	str += "Szukajacy Puszczy";
        return str;

    }
    if(gstat >= 65)
    {
    	str += "Dziecko Gwiazd";
        return str;

    }
    if(gstat >= 60)
    {
    	if(plec)
    		str += "Przyjaciolka Gwiazd";
    	else str += "Przyjaciel Gwiazd";
        return str;

    }
    if(gstat >= 55)
    {
    	if(plec)
    		str += "Tanczaca w Blasku Gwiazd";
    	else str += "Tanczacy w Blasku Gwiazd";
        return str;

    }
    if(gstat >= 50)
    {
    	if(plec)
    		str += "Rozmawiajaca z Gwiazdami";
    	else str += "Rozmawiajacy z Gwiazdami";
        return str;

    }
    if(gstat >= 45)
    {
    	if(plec)
    		str += "Kroczaca w Blasku Gwiazd";
    	else str += "Kroczacy w Blasku Gwiazd";
        return str;

    }
    if(gstat >= 40)
    {
        if(plec)
                str += "Patrzaca w Gwiazdy";
    	else str += "Patrzacy w Gwiazdy";
        return str;

    }
    if(gstat >= 35)
    {
        if(plec)
    	        str += "Szukajaca Gwiazd";
    	else str += "Szukajacy Gwiazd";
        return str;

    }
    if(gstat >= 30)
    {
    	str += "Dziecko Drzew";
        return str;

    }
    if(gstat >= 25)
    {
    	if(plec)
    		str += "Przyjaciolka Drzew";
    	else str += "Przyjaciel Drzew";
        return str;

    }
    if(gstat >= 20)
    {
    	if(plec)
    		str += "Tanczaca w Cieniu Drzew";
    else 	str += "Tanczacy w Cieniu Drzew";
        return str;

    }
    if(gstat >= 15)
    {
    	if(plec)
    		str += "Rozmawiajaca z Drzewami";
    	else str += "Rozmawiajacy z Drzewami";
        return str;

    }
    if(gstat >= 10)
    {
        if(plec)
                str += "Patrzaca na Korony Drzew";
    	else str += "Patrzacy na Korony Drzew";
        return str;

    }
    if(gstat >= 5)
    {
    	if(plec) str += "Idaca w Cieniu Drzew";
        else str += "Idacy w Cieniu Drzew";
        return str;

    }

    if(plec)
            str += "Szukajaca Drzew";
    else str += "Szukajacy Drzew";
    return str;
}