| FUNKTION: |
| varargs void shout( string text, mixed where ) |
| |
| DEFINIERT IN: |
| /secure/simul_efun.c |
| |
| ARGUMENTE: |
| text |
| Der Text, der ausgegeben werden soll |
| |
| where [optional] |
| Wo soll man den Text ueberall hoeren koennen? |
| |
| BESCHREIBUNG: |
| Der Text 'text' wird an alle Spieler in einem Gebiet ausgegeben. |
| Wird der Parameter 'where' weggelassen bzw. ist er null, so geht der |
| Text an alle Spieler im Mud. Das catch_tell() von NPCs wird nicht |
| ausgeloest. |
| |
| Ist 'where' eine Zahl != 0, so wird der Text nur an Spieler ausgegeben, |
| die sich im selben Gebiet aufhalten wie this_player(). Dabei wird die |
| Zugehoerigkeit zum selben Gebiet an den ersten zwei Ebenen des Pfades |
| der Raeume festgemacht. Befindet sich this_player() z.B. in |
| "/d/ebene/irgendwo", so geht der Text an alle Spieler, deren Aufenthalts- |
| orte in "/d/ebene/*" liegen. |
| |
| Fuer 'where' kann auch direkt ein Pfad angegeben werden. So wuerde ein |
| 'shout( txt, "/players/" )' an alle Spieler gehen, die sich in |
| (eigentlich nicht erwuenschten) Raeumen in /players/* befinden. |
| |
| Um mit einem Aufruf gleich mehrere Pfade abzudecken, kann auch ein Array |
| von Strings uebergeben werden. Alle Pfade werden als 'regular expression' |
| interpretiert. Dadurch ist es moeglich, die Zielraeume auf einfache Art |
| sehr genau einzuschraenken. |
| |
| HINWEIS: Bitte ueberleg vor jedem shout() genau, ob es wirklich noetig |
| ist, dass _jeder_ etwas davon mitbekommt oder ob es nicht vielleicht |
| sinnvoller ist, das Zielgebiet etwas einzuschraenken. Im Zweifelsfall |
| sollte der zustaendige RM aufpassen, dass die Spieler nicht durch allzu |
| zahlreiche shouts belaestigt werden. |
| |
| RUeCKGABEWERT: |
| keiner |
| |
| BEISPIELE: |
| shout( "Du spuerst, wie ein Zittern durch das MorgenGrauen geht.\n" ); |
| Der allseits bekannte Text wird an alle Spieler im MG ausgegeben. |
| |
| shout( "Du hoerst eine gewaltige Explosion.\n", 1 ); |
| Von der Explosion bekommen alle Spieler in derselben Gegend etwas mit, |
| aber nicht am anderen Ende des Muds. |
| |
| shout( "Irgendwo ist ein Baum umgefallen.\n", "/d/vland/" ); |
| ... gibt eine Meldung aus, die keinen wirklich interessiert. Aber es |
| trifft eh nur Leute in einem unwichtigen Teil des MorgenGrauen. ;-) |
| |
| shout( "Aufwachen Du Idler!\n", "/players/.*/workroom" ); |
| Mit Hilfe von regular expressions kann man recht einfach z.B. alle |
| Workrooms auf einmal adressieren. |
| |
| shout( "Halloooooo, Echoooooo!\n", ({ "/d/gebirge/", "/d/ebene/" }) ); |
| Wenn der Spieler hoch oben auf dem Berg laut genug ruft, hoert man |
| ihn auch noch weit in der Ebene. |
| |
| SIEHE AUCH: |
| write(), say(), tell_object(), tell_room(), regexp() |
| |
| ---------------------------------------------------------------------------- |
| Last modified: Sun Nov 28 03:00:00 1999 by Tiamak |