blob: 5d8cae1cd41ef9befed9d862b07f046781f2ea8b [file] [log] [blame]
FindPotion()
************
FUNKTION
========
varargs int FindPotion(string s);
DEFINIERT IN
============
/std/player/potion.c
ARGUMENTE
=========
string s
Ausgabetext. Wenn 0/Leerstring, wird Default verwendet.
BESCHREIBUNG
============
Diese Funktion gibt einem aufrufenden Spieler eventuell diesen ZT.
Das aufrufende Spielerobjekt muss dafuer:
* diesen ZT im Potionmaster in seiner Liste eingetragen haben
* diesen ZT in der Liste der bekannten Traenke haben (durch
Orakel also fuer ihn auch freigeschaltet)
* darf keine Playerkills haben (P_KILLS)
* darf nicht im Editiermodus sein
* darf kein Geist sein (Ausnahme: Geisterschloss)
Wenn alle Kriterien erfolgreich erfuellt sind, wird 's' oder
"Du findest einen Zaubertrank, den Du sofort trinkst." ausgegeben
und dem Spieler ggf die Wahl der Attribute gegeben.
RUeCKGABEWERT
=============
0 bei Nichtvergabe, 1 bei erfolgreicher Vergabe.
BEISPIELE
=========
string detail_papiere() {
if (this_player()->FindPotion(
break_string("Beim Rumwuehlen in den Papieren entdeckst Du einen "
"kleinen Zaubertrank, den Du sofort trinkst.", 78)))
return "";
// Es muss ein String zurueckgegeben werden, da man sonst
// die Fehlermeldung "Sowas siehst du hier nicht." bekommt
else
return "Die Papiere sind alle unbeschriftet.\n";
}
SIEHE AUCH
==========
Sonstiges: zaubertraenke, /secure/potionmaster.c, /room/orakel.c
Verwandt: AddKnownPotion(), RemoveKnownPotion(), InList()
Props: P_POTIONROOMS, P_KNOWN_POTIONROOMS
Befehl: traenke (fuer Magier zum Einschalten des Findens von ZTs)
6.Feb 2016 Gloinson