MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | TestIgnoreSimple() |
| 2 | |
| 3 | FUNKTION: |
| 4 | public int TestIgnoreSimple(string *arg) |
| 5 | |
| 6 | DEFINIERT IN: |
| 7 | /std/player/comm.c |
| 8 | |
| 9 | ARGUMENTE: |
| 10 | arg |
| 11 | Liste von Strings, die getestet werden sollen |
| 12 | |
| 13 | BESCHREIBUNG: |
| 14 | TestIgnoreSimple() prueft, ob der Spieler min. einen der uebergebenen |
| 15 | Eintraege auf seiner Ignoriereliste hat. |
| 16 | Falls man mehrere Eintraege pruefen muss/moechte, ist es schneller, alle |
| 17 | Eintraege in einem zu uebergeben anstatt fuer jeden einzeln |
| 18 | TestIgnoreSimple() aufzurufen. |
| 19 | |
| 20 | RUeCKGABEWERT: |
| 21 | 1, falls es mindestens eine Uebereinstimmungen von arg und der |
| 22 | Ignoriere-Liste des Spielers gibt. |
| 23 | 0, sonst. |
| 24 | |
| 25 | BEISPIEL: |
| 26 | if (!this_player()->TestIgnoreSimple(({"andy"}))) |
| 27 | tell_object(this_player(), "Andy teilt Dir mit: Hallo!\n"); |
| 28 | |
| 29 | // Beispiel fuer eine Ignore-Check fuer Aktion (kratzen) fuer einen |
| 30 | // Spieler (this_player()) an einem anderen Spieler (target) |
| 31 | if (!target->TestIgnoreSimple(getuid(this_player()), |
| 32 | getuid(this_player())+".kratz", |
| 33 | getuid(this_player())+".kratze", |
| 34 | ".kratz", ".kratze"}))) { |
| 35 | tell_object(target, this_player()->Name()+" kratzt dich.\n"); |
| 36 | tell_object(this_player(), "Du kratzt "+target->Name()+".\n"); |
| 37 | } else |
| 38 | tell_object(this_player(), target->Name()+" ignoriert dich.\n"); |
| 39 | |
| 40 | // allumfassender Ignorier-Check in einer Gilde (Klerus) auf |
| 41 | // eine Aktion (kurieren) fuer einen bestimmten Spieler (den caster) |
| 42 | // an einem zu kurierenden Spieler (target) |
| 43 | if (target->TestIgnoreSimple(({getuid(caster), |
| 44 | getuid(caster)+".kuriere", |
| 45 | getuid(caster)+".kuriere.klerus", |
| 46 | ".kuriere", |
| 47 | ".kuriere.klerus"}))) |
| 48 | tell_object(caster, break_string( |
| 49 | target->Name()+" ignoriert deinen Versuch.", 78)); |
| 50 | |
| 51 | SIEHE AUCH: |
| 52 | P_IGNORE, AddIgnore, RemoveIgnore, TestIgnore, /std/player/comm.c |
| 53 | |
| 54 | 26.04.2014 Zesstra |
| 55 | |