blob: e09d9fa7b7e3902532dbaa14cbea1452374003d1 [file] [log] [blame]
StopHuntFor()
*************
FUNKTION
========
varargs int StopHuntFor(object arg,int silent);
DEFINIERT IN
============
/std/living/combat.c
ARGUMENTE
=========
arg
Der Gegner, welcher nicht mehr bekaempft werden soll.
silent
Flag, welches gesetzt anzeigt, dass die beiden Ex-Streithaehne
ueber das einseitige Friedensangebot nicht informiert werden
sollen.
RUeCKGABEWERT
=============
Flag: Bei 0 war der Gegner nicht auffindbar, bei 1 Erfolg.
BESCHREIBUNG
============
Mit dieser Funktion kann man ein Lebewesen <arg> als Gegner
austragen. Im Normalfall erhalten sowohl das aktuelle Objekt, als
auch der Gegner eine Information darueber. Dies kann jedoch mit dem
gesetzten Flag <silent> unterbunden werden.
Es ist auch moeglich, auf diese Meldung Einfluss zu nehmen, indem
man die Funktion StopHuntText() ueberschreibt, welche dafuer
verantwortlich ist.
Achtung: Um zwischen beiden Streithaehnen Frieden zu schliessen,
muss der eine Gegner jeweils bei dem anderen ausgetragen werden. Ein
einzelnes StopHuntFor() ist sozusagen nur ein einseitiges
Friedensangebot.
BEMERKUNGEN
===========
Soll ein Viech unter bestimmten Umstaenden nicht angreifbar sein, ist in
keinem Fall StopHuntFor() im Defend() zu verwenden, sondern P_NO_ATTACK.
Grund: Stoppt man unliebsame Kaempfe jeweils am Anfang vom Defend, kann ein
Gegner gefahrlos Angriffsspells ausfuehren (und ueben), ohne dass die Gefahr
besteht, dass der NPC zurueckschlaegt.
BEISPIELE
=========
Man will aus irgendeinem Grund den Kampf zwischen sich und Gegner enemy
einstellen:
...
StopHuntFor(enemy); // enemy nicht mehr bekaempfen
enemy->StopHuntFor(this_object()); // enemy soll mich nicht bekaempfen.
...
SIEHE AUCH
==========
StopHuntText(), SelectEnemy(), QueryEnemies(), IsEnemy()
16.03.2008, Zesstra