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