blob: d5c4d5c13cab5071664eb4da6c81343824751a92 [file] [log] [blame]
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
--------
.. code-block:: pike
// 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
----------
:doc:`ReceiveMsg`, :doc:`ReceiveDynWave`
Letzte Aenderung: 30.07.2025, Zesstra