dodaj_trening(int skill, int *poziomy)
{
	skille[skill]=poziomy;
}

int
sk_hook_improved_max(int sum, int poziom)
{
	string str=(poziom==skille[sum][0]) ?
		"Niestety, nie zdolasz juz tutaj udoskonalic tej umiejetnosci.\n":
		"Wyuczyles sie tej umiejetnosci najlepiej jak mogles przy twojej randze.\n";
	notify_fail(str);
	return 0;
} 

int
sk_hook_no_more_improve()
{
	string str;
	if (TP->query_guild_name_occ()==GUILD_NAME) 
	{
		str= (TP->query_guild_rank_occ()==8) ?
			"Nie zdolasz juz tutaj udoskonalic swych umiejetnosci.\n":
			"Wyzsze poziomy umiejetnosci dostepne sa tylko dla wyzszych rang zakonnych.\n";
	}
	else str="Wyzsze poziomy dostepne sa tylko dla Braci Zakonnych.\n";
	notify_fail(str);
	return 0;
}			
		


void
set_up_skills()
{
    dodaj_trening(RZ_DOWODZENIE, 	({  0, 60, 80, 90, 90 }));
    dodaj_trening(RZ_FORMACJE, 		({  80, 100, 100, 100, 100 }));
    sk_add_skills(LOCAL_SKILLS);
    sk_add_train(RZ_DOWODZENIE, 90);
    sk_add_train(RZ_FORMACJE, 100);
}

public int
sk_query_max(int snum)
{
    int ranga=PRAWA->query_ranga(TP);
    if (!PRAWA->sprawdz_prawa(PRAWA_BRATA, TP))
    {
    	if (snum == RZ_FORMACJE)
    		return 50;
    	return 0;
    }
    if (!skille[snum]) return 0;
    switch(ranga)
    {
    	case 0: return skille[snum][0];
    	case 1..3: return skille[snum][1];
    	case 4..6: return skille[snum][2];
    	case 7..9: return skille[snum][3];
    }
    return skille[snum][4];
}
