QueryEnemies()
**************


FUNKTION
========

   mixed QueryEnemies();


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

   /std/living/combat.c


ARGUMENTE
=========

   keine


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

   Array mit Array aus bekannten Gegnern und Array aus Zeiten


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

   Diese Funktion enthaelt ein Array, das zwei Elemente enthaelt, die
   wiederum Arrays sind:
     1. Array: Die bekannten Gegner als Objektpointer.
     2. Array: Die zugeordneten Zeiten, wie lange ein Gegner noch als
               solcher bekannt sein soll.
   Im Normalfall wird ein Gegner dann bekannt, wenn man gezielt
   jemanden atackiert, oder wenn man einen Angriff abwehren muss.
   Dann wird der Gegner intern abgespeichert, und es wird eine Zeit
   gesetzt, die dann runtergezaehlt wird. Ist die Zeit auf 0, so wird
   der Gegner wieder automatisch ausgetragen.
   (Standardmaessig betraegt diese Zeit 600 Sekunden (300 Heartbeats).)
   Man kann sich die Gegner auch in Form eines Mappings zurueckgeben
   lassen. Dies erreicht man mittels der Funktion GetEnemies().


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

   Kill(), Attack(), Defend(), do_my_heart_beat(), PresentEnemies(),
   GetEnemies(), SelectEnemy(), QueryPreferedEnemy(), P_PREFERED_ENEMY

29.12.2007, Zesstra
