MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | BecomesNetAlive() |
| 2 | |
| 3 | FUNKTION: |
| 4 | void BecomesNetAlive(object pl); |
| 5 | |
| 6 | GERUFEN VON: |
| 7 | /std/player/base.c |
| 8 | |
| 9 | ARGUMENTE: |
| 10 | pl |
| 11 | Spieler, der Verbindung zum MUD wiedererlangt. |
| 12 | |
| 13 | BESCHREIBUNG: |
| 14 | Spieler, welche die Verbindung zum MUD freiwillig |
| 15 | (z.B. per 'schlafe ein') oder unfreiwillig verlieren, gehen in den |
| 16 | Netztotenstatus ueber. Sie verbleiben noch eine definierte Zeit in |
| 17 | der zuletzt betretenen Umgebung und werden schliesslich automatisch |
| 18 | in den Netztotenraum ueberfuehrt. |
| 19 | Wird die Verbindung wieder aufgebaut, so wird der Spielercharakter |
| 20 | wieder zum Leben erweckt und gegebenenfalls zuvor aus dem |
| 21 | Netztotenraum zurueck zu seiner letzten Umgebung teleportiert. |
| 22 | Um nun einen Ueberblick darueber zu erhalten, wann ein Spieler die |
| 23 | Verbindung zum MUD wiederherstellt, gibt es die Funktion |
| 24 | BecomesNetAlive(). Sie wird automatisch in der Umgebung des |
| 25 | Spielers, in allen Objekten in der Umgebung des Spielers |
| 26 | (nicht rekursiv) und in allen Objekten im Spieler (rekursiv) |
| 27 | aufgerufen. Uebergeben wird hierbei das Spielerobjekt. |
| 28 | |
| 29 | Es gibt auch noch die Funktion BecomesNetDead(), mit der man |
| 30 | auf aehnliche Weise einschlafende Spieler registrieren kann. |
| 31 | |
| 32 | BEISPIELE: |
| 33 | In einem NPC waere folgendes denkbar: |
| 34 | |
| 35 | void BecomesNetAlive(object pl) { |
| 36 | tell_room(environment(),break_string( |
| 37 | "Guten Morgen "+pl->name(WER)+", auch schon ausgeschlafen?!", 77, |
| 38 | Name(WER)+" sagt grinsend: ")); |
| 39 | } |
| 40 | Steht der NPC in einem Raum, wo ein Spieler aufwacht, so wird der |
| 41 | Spieler gebuehrend begruesst. |
| 42 | |
| 43 | SIEHE AUCH: |
| 44 | BecomesNetDead(), PlayerQuit(), /std/player/base.c, /room/netztot.c |
| 45 | |
| 46 | 24. Aug 2011 Gloinson |