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