ReceiveWave()¶
FUNKTION¶
public int ReceiveWave(struct wave_s wave, string msg_action = comm_guess_action(), object origin = previous_object());
DEFINIERT IN¶
/std/living/comm.c
ARGUMENTE¶
- struct wave_s* wave
Die auszugebende Nachrichten mit Zusatzinformationen. (s.u.)
- string action
action wird als <action> an ReceiveMsg() weitergegeben
- object origin
Absenderobjekt der Nachricht (Default: previous_object())
BESCHREIBUNG¶
Sendet die in <wave> angegebene Nachricht an den Empfaenger.
<wave> ist meist eine struct wave_s. Diese fasst msg, msg_type und prefix fuer ReceiveMsg in eine Datenstruktur zusammen. Sie ist in /secure/simul_efun/comm.c definiert (und steht allen Programmen automatisch zur Verfuegung). Sie hat die Eintraege string msg, int type, string prefix.
<wave> kann jedoch auch eine von wave_s erbende struct sein, welche zusaetzliche Eintraege besitzt (die hier nicht benutzt werden). Damit kann man die Meldung mit anderen dazu gehoerenden Daten zusammenfassen.
RUECKGABEWERT¶
Der Rueckgabe ist der Rueckgabewert von ReceiveMsg().
BEISPIEL¶
// Einfache Nachricht
this_player().ReceiveWave((<wave_s> msg: "Pass auf! Ein boeser, schwarzer Drache!",
type: MT_LISTEN, prefix: "Humni ruft: ") );
// von wave_s abgeleitete struct, welche einen einfach Zauberspruch beschreibt
struct spell_s (wave_s) {
int dam;
string* dam_type;
mapping si_spell;
}
struct spell_s sp = (<spell_s> msg: "Der Zauberer schleudert Dir einen Blitz entgegen.",
type: MT_LOOK|MT_FEEL, dam: 42, dam_type: DT_LIGHTNING,
sinfo: ([...]));
en.ReceiveWave(sp, MA_COMBAT);
en.Defend(sp.dam, sp.dam_type, sp.si_spell);
SIEHE AUCH¶
Letzte Aenderung: 30.07.2025, Zesstra