| |
| P_MURDER_MSG |
| ************ |
| |
| |
| NAME |
| ==== |
| |
| P_MURDER_MSG "murder_msg" |
| |
| |
| DEFINIERT IN |
| ============ |
| |
| /sys/properties.h |
| |
| |
| BESCHREIBUNG |
| ============ |
| |
| In dieser Property kann man einen String oder eine Closure ablegen |
| dessen Wert bzw. deren Resultat beim Tod des NPCs auf dem |
| Moerder-Kanal erscheint. |
| Normalerweise ist die Property nicht gesetzt, woraufhin zufaellig |
| eine Meldung generiert wird. |
| |
| Ob der Tod eines NPCs auf dem Moerder-Kanal erscheint, haengt davon ab, |
| wie oft und welche Art von NPCs in der letzten Zeit getoetet wurden. Zum |
| Beispiel ist es eher selten, dass ein schwacher NPC auf dem Kanal |
| erscheint, wenn kuerzlich viele starke NPCs getoetet wurden. Allerdings |
| kann man auf diese Regelung mittels der Property P_FORCE_MURDER_MSG |
| Einfluss nehmen. |
| |
| Wird in einen String der Platzhalter %s eingefuegt, so erscheint an der |
| Stelle spaeter der Name des Moerders. |
| |
| |
| BEISPIELE |
| ========= |
| |
| // Zum Beispiel koennte man ja bei einer Ratte, die getoetet wird, |
| // folgendes auf dem Moerder-Kanal ausgeben lassen: |
| SetProp(P_MURDER_MSG, |
| "Ratten aller MUDs, vereinigt euch gegen %s!"); |
| |
| |
| // Um auch mal eine Closure zu zeigen: die Ratte koennte auch ihre |
| // Meldung erst bei ihrem Tod erstellen lassen: |
| private string moerder_meldung() { |
| return ({"Achweh!", "Au!", "Weia!"})[random(3)]; |
| } |
| |
| SetProp(P_MURDER_MSG, #'moerder_meldung); |
| |
| |
| BEMERKUNGEN |
| =========== |
| |
| - P_NOCORPSE: |
| Ist in dem NPC die Property P_NOCORPSE gesetzt, so wird die |
| Moerdermeldung nicht auf dem Kanal gesendet, da diese Ausgabe ueber |
| /std/corpse laeuft. |
| Will man dennoch eine Meldung, so sollte man /std/corpse im die() |
| selbst clonen, daran Identify(this_object()) rufen und das geclonte |
| Objekt wieder entsorgen. |
| |
| - Closures: |
| Closures bieten sich an, wenn ein zentrales Objekt fuer mehrere NPCs |
| bestimmte Moerdermeldungen generieren soll. Dann muss nur noch bei |
| den NPCs die Closure, die auf die erstellende Methode zeigt gesetzt |
| werden. |
| |
| |
| SIEHE AUCH |
| ========== |
| |
| Tod: die(L) |
| Verwandt: P_FORCE_MURDER_MSG |
| Todesmeldungen: P_KILL_NAME, P_KILL_MSG, P_DIE_MSG |
| P_ZAP_MSG, P_ENEMY_DEATH_SEQUENCE |
| Sonstiges: P_CORPSE, P_NOCORPSE, /std/corpse.c |
| |
| 30. Mai 2006, Gloinson |