| |
| FindDistantGroups() |
| ******************* |
| |
| |
| FUNKTION |
| ======== |
| |
| varargs mixed FindDistantGroups(object pl, int dist, int dy, int dx) |
| |
| |
| DEFINIERT IN |
| ============ |
| |
| /std/spellbook.c |
| |
| |
| ARGUMENTE |
| ========= |
| |
| pl - Caster |
| dist - Entfernung |
| dy - Tiefe (default 100) |
| dx - Breite (default 100*MAX_TEAM_ROWLEN) |
| |
| |
| BESCHREIBUNG |
| ============ |
| |
| Ermitteld feindliche (bei Spielern NPCs, bei NPCs Spieler) und |
| freundliche (bei Spielern Spieler, bei NPCs NPCs) Lebewesen, |
| die sich in Entfernung <dist> in einem Bereich der Breite <dx> |
| und Tiefe <dy> befinden. |
| |
| |
| RUECKGABEWERT |
| ============= |
| |
| Array mit zwei Arrays als Inhalt: |
| ({ feindliche Lebewesen, freundliche Lebewesen }) |
| |
| |
| BEMERKUNGEN |
| =========== |
| |
| Die Entfernungsangaben sind als cm. zu verstehen. |
| Jedes Lebewesen belegt 50cm x 50cm mit Abstand 50cm |
| zum naechsten Lebewesen in jeder Richtung. |
| Die Breitenangabe wirkt sich nur in der Anzahl der |
| Lebewesen aus, die zufaellig pro Reihe ausgewaehlt werden. |
| Die Skillattribute SA_RANGE und SA_EXTENSION werden beruecksichtigt. |
| |
| |
| BEISPIEL |
| ======== |
| |
| dist=200, dy=200, dx=200, ein Punkt = 50cm x 50cm |
| . . . . . . . . . . . . . |
| 3. . . . . . . G . . . . . . |
| . . . . . . . . . . . . . |
| 2. . . . . . G . G . . . . .dist+dy/2-+ |
| . . . . . . . . . . . . . | |
| 1. . . . . G . G . G . . . . dist +-+ (Gegner G) |
| ---.-.-.-.-.-.-.-.-.-.-.-.-. | | |
| 1. . . . . F . F . F . . . .dist-dy/2-+ | (Freunde F) |
| . . . . . . . . . . . . . | |
| 2. . . . . . F . S . . . . .------------+ (Reihe des Spielers S) |
| . . . . . . . . . . . . . |
| 3. . . . . . . F . . . . . . |
| . . . . . . . . . . . . . |
| Abgedeckter Bereich: 100cm bis 300cm |
| Reihe 3: 375cm..425cm 375>300 -> nicht erwischt |
| Reihe 2: 275cm..325cm 275<300 -> erwischt |
| Gegner Reihe 1: 175cm..225cm 100<175,225<300 -> erwischt |
| Freunde Reihe 1: 75cm..125cm 100<125 -> erwischt |
| Reihe 2: -25cm...25cm 100> 25 -> nicht erwischt |
| Reihe 3: -125cm..-75cm 100>-75 -> nicht erwischt |
| Ergebnis: ({({G,G,G,G}),({F,F})}) |
| (Maximal 2 Lebewesen pro Reihe bei Breite 200). |
| |
| |
| SIEHE AUCH |
| ========== |
| |
| teams, FindDistantGroup |