int
modl(string str)
{
    string opis;
    int *i,n;
    if (str!="sie")
    {
    	notify_fail("Chyba rzmodl sie?\n");
    	return 0;
    }
    allbb("przykleka i wznosi oczy ku gorze, pograzajac sie w kornej modlitwie do Sigmara.");
    write("Przyklekasz i wznosisz oczy ku gorze, proszac Sigmara o blogoslawienstwo.\n");
    return 1;
}

int
salutuj(string str)
{
    object *oblist, bron;
    string czym, konc;
    if (!str)
    {
	    allbb("podnosi dlon do gory w honorowym gescie salutu.");
	    write("Podnosisz dlon do gory w honorowym gescie salutu.\n");
	    return 1;
	}
    oblist=parse_this(str,"%l:"+PL_CEL);
    if(sizeof(oblist)!=0)
	{
	    target("salutuje ci, podnoszac dlon do gory.",oblist);
	    actor("Salutujesz",oblist,PL_CEL);
	    all2actbb("salutuje",oblist,PL_CEL," podniesiona do gory dlonia.");
	    return 1;
	}
    else 
	{
	    notify_fail("Komu chcesz zasalutowac?\n");
	    return 0;
	}
}

int
rzsmiech(string str)
{
    all("unosi glowe i wybucha radosnym, podnoszacym na duchu smiechem.");
    write("Unosisz glowe i wybuchasz radosnym, podnoszacym na duchu smiechem.\n");
    return 1;
}


int
rzspojrz(string str)
{
    object *oblist;

	if (!str)
	{
 		allbb("przesuwa wzrokiem po wszystkich obecnych.");
    	write("Taksujesz wszystkich wzrokiem.\n");
    	return 1;
    }
    oblist = parse_this (str,"[na] %l:"+PL_BIE);

    if(sizeof(oblist)!=0)
	{
	    string konc;
	    int licz;
	    if (sizeof(oblist)>1)
	    {
	    	notify_fail("Na kogo dokladnie chcesz spojrzec?\n");
	    	return 0;
	    }
    	target("patrzy na ciebie taksujacym wzrokiem. W "+
    	  this_player()->koncowka("jego","jej") + " oczach widzisz dume z "+
    	  "przynaleznosci do Zakonu Sigmara.",oblist);
		actor("Patrzysz na",oblist,PL_BIE," taksujacym wzrokiem.");
		konc = oblist[0]->koncowka("go","ja");
	    all2actbb("patrzy na", oblist, PL_BIE," taksujacym wzrokiem.");
	    return 1;
	}
	notify_fail("Spojrz na kogo?");
	return 0;
}
 
int
pozdrow(string str)
{
	object *oblist;
	if (!str)
	{
		all("z usmiechem na twarzy unosi reke w gescie pozdrowienia.");
		write("Wznosisz reke w gescie pozdrowienia.\n");
		return 1;
	}
	oblist=parse_this(str,"%l:"+PL_BIE);
	if (!sizeof(oblist)) return notify_fail("Kogo chcesz pozdrowic?\n");
	all2act("z usmiechem na twarzy wznosi reke w kierunku",oblist,PL_DOP," w gescie pozdrowienia.");
	target("z usmiechem na twarzy wznosi reke w twoim kierunku w gescie pozdrowienia.",oblist);
	actor("Wznosisz reke w kierunku",oblist,PL_DOP," w gescie pozdrowienia.");
	return 1;
}

int
uklon(string str)
{
	object *oblist;
	string jak,tmp;
	if (!str) str="sie";
	sscanf(str,"sie %s",str);
	if (!str)
	{
		all("pochyla gleboko glowe w pelnym szacunku i pokory uklonie.");
		write("Pochylasz glowe w glebokim, pelnym szacunku i pokory uklonie.\n");
		return 1;
	}
	oblist=parse_this(str,"[lekko] / [gleboko] %l:"+PL_CEL);
	if (!sizeof(oblist))
	{
		if (wildmatch("lekko*",str))
		{
			all("pochyla glowe w lekkim, ale pelnym szacunku uklonie.");
			write("Pochylasz glowe w lekkim, ale pelnym szacunku uklonie.\n");
			return 1;
		}
		all("pochyla gleboko glowe w pelnym szacunku i pokory uklonie.");
		write("Pochylasz glowe w glebokim, pelnym szacunku i pokory uklonie.\n");
		return 1;
		
	}
	if (wildmatch("lekko*",str))
	{
		all2act("pochyla glowe przed",oblist,PL_NAR," w lekkim, ale pelnym szacunku uklonie.");
		actor("Pochylasz glowe przed",oblist,PL_NAR," w lekkim, ale pelnym szacunku uklonie.");
		target("pochyla przed toba glowe w lekkim, ale pelnym szacunku uklonie.",oblist);
		return 1;
	}
	all2act("pochyla sie gleboko przed",oblist,PL_NAR," w pelnym szacunku i pokory uklonie.");
	actor("Pochylasz sie gleboko przed",oblist,PL_NAR," w pelnym szacunku i pokory uklonie.");
	target("pochyla sie gleboko przed toba w pelnym szacunku i pokory uklonie.",oblist);
	return 1;
}	


int
ukorz(string str)
{
	if (str!="sie") return notify_fail("Chyba rzukorz sie?\n");
	if (!TP->query_subloc_obj(SZATA_SUBLOC)) return notify_fail("Musisz miec zalozona szate, aby moc sie ukorzyc.\n");
	all("chowa rece w faldach szaty i pochyla glowe, przyjmujac pelna pokory postawe.");
	write("Chowasz rece w faldach szaty i pochylasz glowe, przyjmujac pelna pokory postawe.\n");
	return 1;
}


int 
pozegnaj(string str)
{
	object *oblist;
	oblist=parse_this(str,"%l:"+PL_BIE);
	if (!sizeof(oblist)) return notify_fail("Kogo chcesz pozegnac?\n");
	if (sizeof(oblist)>1)
	{
		if (member_array("go",oblist->query_zaimek(PL_BIE))==-1) 
			str="je";
		else str="ich";
	}
	else str=oblist[0]->query_zaimek(PL_BIE);
	all2actbb("pochyla glowe w strone",oblist,PL_DOP,", zegnajac " +str+ " w imie Sigmara.");
	target("pochyla glowe w twoja strone, zegnajac cie w imie Sigmara.",oblist);
	actor("Pochylasz glowe w strone",oblist, PL_DOP,", zegnajac "+str+" w imie Sigmara.");
	return 1;
}

int 
zamysl(string str)
{
	if (str!="sie") return notify_fail("Chyba \"zamysl sie\"?\n");
	all("zamysla sie i spoglada w jakis odlegly punkt, a na jego "
		+"twarzy maluje sie oddanie i pokora.");
	write("Zamyslasz sie.\n");
	return 1;
}

int
czesc(string str)
{
	all("pochyla glowe i unosi lekko rece, oddajac czesc Sigmarowi.");
	write("Pochylasz glowe i unosisz lekko rece, oddajac czesc Sigmarowi.\n");
	return 1;
}

int 
chwal(string str)
{
	all("pochyla nisko glowe, cichymi slowami chwalac madrosc Sigmara.");
	write("Pochylasz nisko glowe, cichymi slowami chwalac madrosc Sigmara.\n");
	return 1;
}

int
stoj(string str)
{
	all("zaciska wargi i znizajac pokornie spojrzenie powstrzymuje "
		+"sie od dzialania.");
	write("Zaciskasz wargi i znizajac pokornie spojrzenie postrzymujesz "
		+"sie od dzialania.\n");
	return 1;
}

int
zatrzymaj(string str)
{
	if (str!="sie") return notify_fail("Chyba \"zatrzymaj sie\"?\n");
	all("opuszczajac pokornie spojrzenie zatrzymuje sie w pol kroku.");
	write("Opuszczajac pokornie spojrzenie zatrzymujesz sie w pol kroku.\n");
	return 1;
}	
