FUNKTION:
varargs int FindLiquid(string str, int force)
DEFINIERT IN:
/sys/lcontainer.h
/std/lcontainer.c
ARGUMENTE:
str - Id der zu findenden Fluessigkeit.
force - wenn gesetzt, werden Fluessigkeiten auch in geschlossenen
Behaeltern erkannt
BESCHREIBUNG:
Testet Lcontainer auf die Fluessigkeit str. Gibt 0 zurueck, wenn der
Lcontainer geschlossen ist oder die Fluessigkeit nicht vorhanden.
BEISPIEL:
Eine kleine Flasche, deren Inhalt man, sofern er Wasser ist, weihen
lassen kann:
void create()
{
...
AddCmd("weih|weihe&wasser", #'weihen, "Was willst Du weihen?");
}
int weihen(string str)
{
int menge;
notify_fail("Du kannst das Wasser nur in einer Kirche weihen "
"lassen!\n");
if (member(KIRCHEN_RAEUME, file_name(ENV(PL))) == -1) return 0;
notify_fail("Das Flaeschchen ist leer. Fuelle erst Wasser "
"hinein.\n");
if (IsEmpty()) return 0;
notify_fail("Dazu solltest Du das Flaeschchen oeffnen.\n");
if (QueryProp(P_LCNT_CLOSABLE) &&
QueryProp(P_CNT_STATUS)==CNT_STATUS_CLOSED) return 0;
notify_fail("Das Wasser ist doch bereits geweiht.\n");
if (FindLiquid("weihwasser")) return 0;
notify_fail("Du hast ja gar kein Wasser in der Flasche!\n");
if (!FindLiquid("wasser")) return 0;
menge = QueryProp(P_LCNT_CAPA);
PourLiquid(QueryProp(P_LCNT_MAXCAPA));
AddLiquid(QueryProp(P_LCNT_MAXCAPA)-menge,
({ "geweihtes wasser", "wasser", "weihwasser" }),
"geweihtem Wasser");
write("Du laesst das Wasser weihen.\n");
return 1;
}
SIEHE AUCH:
lcontainer(STD), PourLiquid(L), GiveLiquid(L), GetLiquid(L),
IsOpen(L), IsEmpty(L), AddLiquid(L), P_LCONTAINER,
P_LCNT_MAXCAPA, P_LCNT_MINIMAL, P_LCNT_CLOSABLE,
P_LCNT_OPENMSG, P_LCNT_DRINKMSG, P_LCNT_CAPA
|