blob: c3de6b15a9983a007d5aec7192f783a41212404f [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
MG Mud User88f12472016-06-24 23:31:02 +02002PreventFollow()
Zesstra953f9972017-02-18 15:37:36 +01003***************
MG Mud User88f12472016-06-24 23:31:02 +02004
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra953f9972017-02-18 15:37:36 +01006FUNKTION
7========
MG Mud User88f12472016-06-24 23:31:02 +02008
Zesstra953f9972017-02-18 15:37:36 +01009 int PreventFollow(object dest)
MG Mud User88f12472016-06-24 23:31:02 +020010
MG Mud User88f12472016-06-24 23:31:02 +020011
Zesstra953f9972017-02-18 15:37:36 +010012ARGUMENTE
13=========
MG Mud User88f12472016-06-24 23:31:02 +020014
Zesstra953f9972017-02-18 15:37:36 +010015 dest: Zielobjekt, in das der Verfolgte bewegt werden soll.
MG Mud User88f12472016-06-24 23:31:02 +020016
MG Mud User88f12472016-06-24 23:31:02 +020017
Zesstra953f9972017-02-18 15:37:36 +010018FUNKTION
19========
MG Mud User88f12472016-06-24 23:31:02 +020020
Zesstra953f9972017-02-18 15:37:36 +010021 In jedem Verfolger, der mit AddPursuer in die Liste der Verfolger
22 eingetragen wurde, wird vor dem Bewegen in das Zielobjekt die Funktion
23 PreventFollow mit dem Zielobjekt als Argument aufgerufen.
MG Mud User88f12472016-06-24 23:31:02 +020024
MG Mud User88f12472016-06-24 23:31:02 +020025
Zesstra953f9972017-02-18 15:37:36 +010026RUECKGABEWERT
27=============
28
29 0: Verfolger darf in das Zielobjekt folgen
30 1: Verfolger darf in dieses Zielobjekt nicht folgen
31 (Verfolgung bleibt weiterhin aktiv)
32 2: Verfolger darf in dieses Zielobjekt nicht folgen
33 (Verfolgung wird abgebrochen und Verfolger aus der Verfolgerliste
34 ausgetragen)
35
36
37BEMERKUNG
38=========
39
40 Durch PreventFollow kann der raeumliche Bereich, in dem verfolgt werden
41 darf, eingeschraenkt werden.
42
43
44BEISPIELE
45=========
46
47 Man moechte, dass ein NPC auf einer Insel nicht mit dem Spieler in das
48 Boot steigt, um mit dem Spieler zusammen von der Insel herunterzukommen.
49
50 #define PATH(x) ("/d/.../.../mein/pfad/+(x)")
51
52 ...
53
54 int PreventFollow(object boot)
55 {
56 if ( object_name(boot)[0..strlen(PATH("boot"))-1] == PATH("boot") )
57 return 1;
58 }
59
60 Diese Funktions-Definition ist sehr flexibel, denn sie erlaubt sowohl
61 spaetere Pfadanpassung als auch mehrere Boote.
62 Da ueber die Funktion strlen() nur bis zum letzten Buchstaben des
63 angegebenen Strings getestet wird, wird also gleichzeitig auch auf
64 boot[1], boot[2] usw. getestet.
65
66
67SIEHE AUCH
68==========
69
70 "AddPursuer", "RemovePursuer"
71
72Last modified: Tue Jun 10 13:59:30 2003 by Gabylon