blob: 100f92dcfea1a17445104bc219242f76003b8828 [file] [log] [blame]
PreventFollow()
FUNKTION:
int PreventFollow(object dest)
ARGUMENTE:
dest: Zielobjekt, in das der Verfolgte bewegt werden soll.
FUNKTION:
In jedem Verfolger, der mit AddPursuer in die Liste der Verfolger
eingetragen wurde, wird vor dem Bewegen in das Zielobjekt die Funktion
PreventFollow mit dem Zielobjekt als Argument aufgerufen.
RUECKGABEWERT:
0: Verfolger darf in das Zielobjekt folgen
1: Verfolger darf in dieses Zielobjekt nicht folgen
(Verfolgung bleibt weiterhin aktiv)
2: Verfolger darf in dieses Zielobjekt nicht folgen
(Verfolgung wird abgebrochen und Verfolger aus der Verfolgerliste
ausgetragen)
BEMERKUNG:
Durch PreventFollow kann der raeumliche Bereich, in dem verfolgt werden
darf, eingeschraenkt werden.
BEISPIELE:
Man moechte, dass ein NPC auf einer Insel nicht mit dem Spieler in das
Boot steigt, um mit dem Spieler zusammen von der Insel herunterzukommen.
#define PATH(x) ("/d/.../.../mein/pfad/+(x)")
...
int PreventFollow(object boot)
{
if ( object_name(boot)[0..strlen(PATH("boot"))-1] == PATH("boot") )
return 1;
}
Diese Funktions-Definition ist sehr flexibel, denn sie erlaubt sowohl
spaetere Pfadanpassung als auch mehrere Boote.
Da ueber die Funktion strlen() nur bis zum letzten Buchstaben des
angegebenen Strings getestet wird, wird also gleichzeitig auch auf
boot[1], boot[2] usw. getestet.
SIEHE AUCH:
"AddPursuer", "RemovePursuer"
----------------------------------------------------------------------------
Last modified: Tue Jun 10 13:59:30 2003 by Gabylon