blob: 4622d657c14e90245e9ec24d4ad2fb768b3345ec [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001QueryValidObject()
2
3FUNKTION:
4 public int QueryValidObject(string oname);
5
6DEFINIERT IN:
7 /std/virtual/v_compiler.c
8
9ARGUMENTE:
10 oname
11 Objektname, der geprueft werden soll (kompletter Pfad mit / am Anfang)
12
13RUeCKGABEWERT:
14 <=0 - falls VC nicht zustaendig ist.
15 >0 - falls der VC sich fuer das Objekt zustaendig erklaert.
16
17BESCHREIBUNG:
18 Ueber die Funktion laesst sich herausfinden, ob ein VC sich fuer das
19 gewuenschte Objekt zustaendig fuehlt. Dabei wird Validate(),
20 P_COMPILER_PATH, NoParaObjects() und P_PARA im VC ausgewertet:
21 1. Zuerst wird mit Validate() geprueft, ob der Filename (ohne Pfad) ok ist.
22 2. wird geguckt, ob das angefragte Objekt im richtigen Pfad liegt
23 (P_COMPILER_PATH).
24 3. wenn das angefragte Objekt ein Para-Objekt ist:
25 a) wird NoParaObjects() geprueft, wenn das !=0 ist, sind gar keine Para-
26 Objekte erlaubt.
27 b) wird P_PARA _im VC_ abgefragt, dort kann man ein Array aller
28 erlaubten Para-Dimensionen reinschreiben. Fuer alle anderen erklaert
29 sich der VC fuer nicht zustaendig. Wenn P_PARA nicht gesetzt ist,
30 sind alle erlaubt. Ein leeres Array ({}) wuerde einem
31 NoParaObjects() {return 1;} entsprechen.
32
33BEMERKUNGEN:
34 Diese Funktion wird vom move abgefragt. Bitte auf jeden Fall P_PARA oder
35 NoParaObjects() passend definieren, sonst buggts.
36
37 Wenn jemand mit dem oben beschrieben Standardverhalten nicht gluecklich
38 ist, kann man die Funktion passend ueberschreiben.
39
40
41SIEHE AUCH:
42 virtual_compiler
43 CustomizeObject(), Validate(), NoParaObjects(),
44 P_COMPILER_PATH, P_PARA
45 /std/virtual/v_compiler.c
46----------------------------------------------------------------------------
4721.10.2007, Zesstra