QueryNearDefenders(): Defender ohne Teamreihe
Defender muessen keine Livings sein und muessen keine Teamreihe
haben. Daher Objekt im Environment ohne Teamreihe ebenfalls
als "nahe" akzeptieren, in dem alle mit Teamreihe <= 1
akzeptiert werden.
Ausserdem die Klammerung der Pruefungen expliziter gemacht.
Change-Id: Ie72ca9b6f0aec20f5137158c03c4cfe0ef1d0fff
diff --git a/std/living/combat.c b/std/living/combat.c
index 6a992f7..6c968f9 100644
--- a/std/living/combat.c
+++ b/std/living/combat.c
@@ -910,10 +910,14 @@
return filter(defenders,
function int(object o)
{
+ // Nahe sind: Objekte im eigenen Inventar oder Objekt im Environment,
+ // welche in Teamreihe 1 oder 0 (haben einfach keine Teamreihe) sind.
return (objectp(o) &&
- (environment(o) == environment(ME) || environment(o) == ME) &&
- o->PresentPosition() == 1);
- });
+ ( environment(o) == ME ||
+ (environment(o) == environment(ME) && o->PresentPosition() <= 1) )
+ );
+ }
+ );
}
public void InformDefend(object enemy)