MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | FindGroupP() |
| 2 | |
| 3 | FUNKTION: |
| 4 | object*FindGroupP(object pl,int who,int pr); |
| 5 | |
| 6 | DEFINIERT IN: |
| 7 | /std/spellbook.c |
| 8 | |
| 9 | ARGUMENTE: |
| 10 | pl |
| 11 | Lebewesen, von welchem die Freunde oder Feinde in der Umgebung |
| 12 | gefunden werden sollen. |
| 13 | who |
| 14 | Flag, welches anzeigt, ob Freunde oder Feinde gefunden werden |
| 15 | sollen (Konstanten definiert in '/sys/new_skills.h'): |
| 16 | FG_ENEMIES - (Wert -1) Feinde sollen gefunden werden |
| 17 | FG_FRIENDS - (Wert 1) Freunde sollen gefunden werden |
| 18 | FG_ALL - (Wert 0) alle Lebewesen sollen gefunden werden |
| 19 | pr |
| 20 | Wahrscheinlichkeit, mit der ein Lebewesen ausgesucht werden soll. |
| 21 | Hierbei geht vorher noch das Skillattribute SA_EXTENSION ein! |
| 22 | |
| 23 | RUeCKGABEWERT: |
| 24 | Array mit gefundenen Lebewesen |
| 25 | |
| 26 | BESCHREIBUNG: |
| 27 | Ausgesucht werden die Lebewesen genauso wie bei FindGroup(), nur |
| 28 | dass zum Schluss die einzelnen Lebewesen per Zufall ausgewaehlt |
| 29 | werden. Es ist also nicht gesichert, dass ueberhaupt ein Lebewesen |
| 30 | zurueckgeliefert wird, trotzdem welche gefunden wurden. |
| 31 | |
| 32 | BEISPIELE: |
| 33 | Man moechte im Schnitt 50% der Feinde finden, die man gleichzeitig |
| 34 | mit einem Spell belegt: |
| 35 | enemyList=FindGroupP(caster,FG_ENEMIES,50); |
| 36 | Dies gilt jedoch nur bei SA_EXTENSION==100, sonst wird mit |
| 37 | dementsprechend mehr oder weniger Wahrscheinlichkeit zurueckgegeben. |
| 38 | (also bei SA_EXTENSION==200 doppelt so viele -> 100%, also alle) |
| 39 | Das Skillattribute SA_EXTENSION kann auch durch SA_QUALITY |
| 40 | veraendert worden sein; das sollte beachtet werden. |
| 41 | |
| 42 | SIEHE AUCH: |
| 43 | FindGroup(), FindGroupP(), P_FRIEND, P_NO_GLOBAL_ATTACK |
| 44 | |
| 45 | ---------------------------------------------------------------------------- |
| 46 | Last modified: Mon Jan 25 15:04:31 1999 by Patryn |