Morgengrauner Dokumentation
Dateipfad: /home/mud/mudlib/doc//std/corpseOBJEKT:
corpse
SYNOPSIS:
inherit "std/corpse";
BESCHREIBUNG:
Die Standardleiche ist ein spezieller Container. Er beinhaltet die
zurueckgelassene Ausruestung gestorbener NPCs und Spieler.
Die Standardleiche verfault mit der Zeit und stellt ein paar
Funktionalitaeten zur Verfuegung, naemlich das Essen der Leiche
und das Verspotten auf dem Moerderkanal.
Die Funktion
void Identify( object ob );
wird im die() eines Livings aufgerufen, damit die Leiche Informationen
aus dem Living auslesen kann, ehe dieser endgueltig stirbt. Schreibt
man eine eigene Leiche, dann ist dies die geeignete Moeglichkeit, der
Leiche Informationen zukommen zu lassen.
BEISPIELE:
// Eine eigene Leiche.
#inherit "std/corpse";
void create()
{
::create();
// Irgendwas eigenes...
}
/*
* Dieser Funktion wird der getoetete Living uebergeben.
*/
void Identify(object ob)
{
::Identify(ob);
if (ob)
{
ob->QueryProp("meine_tolle_property");
}
}
/*
* Das ist die für "iss leiche" aufgerufene Funktion.
*/
int mampf( string str )
{
notify_fail("Was willst Du essen?\n");
if (!str || !id(str) ) return 0;
tell_object(this_player(), "Diese Leiche kann man nicht essen.\n");
return 1;
}
BEMERKUNG:
Man kann eigene Leichen schreiben, die von der Standardleiche erben
oder auch nicht. Man sollte dann aber die im die() aufgerufenen
Funktionen implementieren:
corpse->Identify(object ob);
corpse->SetProp(***); // Fuer P_HEAL
corpse->move(***); // Um sie ins environment() des Toten zu bekommen.
Die Leiche sollte, muss aber kein Container sein, damit die Ausruestung
hineinbewegt werden kann.
Wenn man nicht von der Standardleiche erbt, kommt sie nicht auf -Moerder
und man kann sie nicht verspotten. Damit dies geht, muss (!) man von der
Standardleiche erben.
SIEHE AUCH:
P_NOCORPSE, P_CORPSE, P_HEAL, QueryHealInfo()
----------------------------------------------------------------------------
Letzte Aenderung: 31.03.2008, Arathorn
zurück zur Übersicht