MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | More() |
| 2 | |
| 3 | FUNKTION: |
| 4 | varargs public void More(string txt, int file, |
| 5 | mixed ctrl, mixed *ctrlargs, int flags); |
| 6 | |
| 7 | DEFINIERT IN: |
| 8 | /std/util/pager.c |
| 9 | |
| 10 | ARGUMENTE: |
| 11 | txt - entweder ein Text der ausgegeben werden soll, oder ein filename. |
| 12 | file - das flag file gibt an, ob es sich bei <txt> um einen text oder |
| 13 | einen Filenamen handelt. Bei einem Filenamen wird der Inhalt |
| 14 | dieses Files eingelesen und ausgegeben. |
| 15 | ctrl - Eine closure, die aufgerufen wird, falls kein <txt> angegeben |
| 16 | wurde. |
| 17 | ctrlargs - ctrlargs wird als Parameter an ctrl uebergeben. |
| 18 | flags - flags wird mit den im Spieler definierten P_MORE_FLAGS |
| 19 | kombiniert. |
| 20 | |
| 21 | BESCHREIBUNG: |
| 22 | |
| 23 | More() dient der Ausgabe von Texten an Spieler. Mit Hilfe eines |
| 24 | PL->More(txt) oder PL->More(txt, 1) ist es sehr einfach laengere Texte |
| 25 | an Spieler auszugeben. Bei der Ausgabe werden die persoenlichen |
| 26 | Einstellungen des Spielern (wie z.b. Zeilen pro Bildschirmseite) |
| 27 | automatisch beruecksichtigt und der Text dadurch ggf. zerstueckelt |
| 28 | und in mehreren Schritten nacheinander angezeigt. |
| 29 | |
| 30 | RUeCKGABEWERT: |
| 31 | keiner |
| 32 | |
| 33 | BEMERKUNGEN: |
| 34 | Beim einlesen des Files sind die Leserechte des Spieler in dem More() |
| 35 | aufgerufen wird von Bedeutung und nicht die Rechte des Objektes das |
| 36 | More() aufruft. Spielerobjekte haben im MorgenGrauen jedoch nur sehr |
| 37 | eingeschraenkte Leserechte! Ausgegeben werden koennen nur files |
| 38 | aus /p/*, /gilden/* und /d/* die _keinen_ code enthalten. Als Code |
| 39 | wird hierbei jedes File betrachtet das als vorletztes Zeichen einen . |
| 40 | hat (also .c, .h, .o usw.). |
| 41 | Will man aus irgendwelchen Gruenden ein File (z.b. aus /players/) |
| 42 | ausgeben, so sollte man stattdessen folgendes verwenden: |
| 43 | this_player()->More(read_file(filename)) |
| 44 | |
| 45 | BEISPIELE: |
| 46 | |
| 47 | // Ausgabe eines normalen textes... |
| 48 | this_player()->More("Einfach nur mal so ein Test...\n"); |
| 49 | |
| 50 | // Ausgabe eines kompletten files |
| 51 | this_player()->More("/etc/WIZRULES", 1); |
| 52 | |
| 53 | SIEHE AUCH: |
| 54 | |
| 55 | ---------------------------------------------------------------------------- |
| 56 | Last modified: Mon Feb 22 15:09:18 1999 by Padreic |