MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 1 | SYNOPSIS |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 2 | void tell_object(object|string obj, string str) |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 3 | void tell_object(object|string obj, |
| 4 | mixed *|mapping|struct|object|lwobject msg) |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 5 | |
| 6 | BESCHREIBUNG |
| 7 | Sendet einen Nachricht an das Objekt <obj> (das auch durch seinen |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 8 | Namen angegeben werden kann). |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 9 | |
| 10 | Ist die Nachricht ein String, wird der Text an interaktive Objekte |
| 11 | direkt ausgegeben, fuer andere Objekte wird die lfun catch_tell() |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 12 | aufgerufen. |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 13 | |
| 14 | Ist die Nachricht ein anderer Typ, wird die lfun catch_msg() im |
| 15 | Empfaenger aufgerufen. |
| 16 | |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 17 | BEISPIELE |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 18 | Dies gibt ein einfaches "Hi!" an den Spieler Thomas aus: |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 19 | |
| 20 | object wer; |
| 21 | wer = find_player("thomas"); |
| 22 | tell_object(wer, "Hi!\n"); |
| 23 | |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 24 | Ein Beispiel mit zwei Objekten, das zeigt, wie das Zusammenspiel von |
| 25 | catch_tell() und tell_object() ablaueft. Objekt1 ist ein Lebewesen |
| 26 | mit Namen "Dummymonster", Objekt2 verteilt die Meldung: |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 27 | |
| 28 | Objekt1: |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 29 | void catch_tell(string str) |
| 30 | { |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 31 | wirte("Erhaltener Text: "+str+"\n"); |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 32 | } |
| 33 | |
| 34 | Objekt2: |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 35 | void fun() |
| 36 | { |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 37 | object wer; |
| 38 | wer = find_living("dummymonster"); |
| 39 | tell_object(wer, "Folge mir, Sterblicher!\n"); |
| 40 | ... |
| 41 | } |
| 42 | |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 43 | GESCHICHTE |
| 44 | LDMud 3.2.11 fuehrte die Arrayform aus Symmetriegruenden ein. |
| 45 | LDMud 3.3.686 erlaubt die Verwendung eines mapping/struct/object als |
| 46 | zweites Argument. |
| 47 | |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 48 | SIEHE AUCH |
Zesstra | b6ac9f6 | 2020-01-21 11:11:16 +0100 | [diff] [blame] | 49 | write(E), say(E), catch_tell(A), catch_msg(A) |