Start Info Community Spielen
 
 

Morgengrauner Dokumentation

Dateipfad: /home/mud/mudlib/doc/lfun/AutoAttack

AutoAttack()
************


FUNKTION
========

   int AutoAttack(object ob)


DEFINIERT IN
============

   /std/npc/combat


ARGUMENTE
=========

   object ob
      Das ggf. annzugreifende Object. (Achtung, nicht nur Livings)


BESCHREIBUNG
============

   Diese Funktion wird aus heart_beat() heraus aufgerufen. Sie
   bestimmt, ob ein Living automatisch angegriffen werden soll oder
   nicht.


RUeCKGABEWERT
=============

   1 fuer Angriff, sonst 0.


BEMERKUNGEN
===========

   Da diese Funktion aus heart_beat() heraus aufgerufen wird, und zwar
   einmal pro anwesendem Objekt (nicht nur fuer Livings), sollte man
   hier moeglichst wenig Dinge tun. Verzichtet am besten ganz auf die
   Nutzung, falls irgendwie moeglich.

   Da auch NPCs uebergeben werden, kann man hier auch diese
   automatisch angreifen lassen, was normalerweise nicht der Fall ist.
   Dies funktioniert jedoch nur, wenn der heart_beat() eingeschaltet
   ist, also normalerweise nicht in Abwesenheit von Spielern.


BEISPIELE
=========

   inherit "/std/npc";

   #include 

   protected void create()
   {
     ...
     SetProp(P_AGGRESSIVE,1);
     ...
   }

   // Keine Leute angreifen, die auf der Freundesliste stehen.
   // Bei dieser Variante wir das P_AGGRESSIVE in ob nicht ausgewertet, falls
   // ob als Freund erkannt wird.
   int AutoAttack(object ob)
   {
     if(member(freunde,ob)!=-1) return 0;
     else return ::AutoAttack(ob);
   }


SIEHE AUCH
==========


heart_beat(), P_AGGRESSIVE

Letzte Aenderung: 28.08.2019, Bugfix


zurück zur Übersicht

YOUTUBE | FACEBOOK | TWITTER | DISCORD | FEEDBACK | IMPRESSUM | DATENSCHUTZ 1992–2023 © MorgenGrauen.