| |
| AutoAttack() |
| ************ |
| |
| |
| FUNKTION |
| ======== |
| |
| int AutoAttack(object ob) |
| |
| |
| DEFINIERT IN |
| ============ |
| |
| /std/npc/combat |
| |
| |
| ARGUMENTE |
| ========= |
| |
| object ob |
| Das ggf. annzugreifende Object. (Achtung, nicht nur Livings) |
| |
| |
| BESCHREIBUNG |
| ============ |
| |
| Diese Funktion wird aus heart_beat() heraus aufgerufen. Sie |
| bestimmt, ob ein Living automatisch angegriffen werden soll oder |
| nicht. |
| |
| |
| RUeCKGABEWERT |
| ============= |
| |
| 1 fuer Angriff, sonst 0. |
| |
| |
| BEMERKUNGEN |
| =========== |
| |
| Da diese Funktion aus heart_beat() heraus aufgerufen wird, und zwar |
| einmal pro anwesendem Objekt (nicht nur fuer Livings), sollte man |
| hier moeglichst wenig Dinge tun. Verzichtet am besten ganz auf die |
| Nutzung, falls irgendwie moeglich. |
| |
| Da auch NPCs uebergeben werden, kann man hier auch diese |
| automatisch angreifen lassen, was normalerweise nicht der Fall ist. |
| Dies funktioniert jedoch nur, wenn der heart_beat() eingeschaltet |
| ist, also normalerweise nicht in Abwesenheit von Spielern. |
| |
| |
| BEISPIELE |
| ========= |
| |
| inherit "/std/npc"; |
| |
| #include <npc.h> |
| |
| protected void create() |
| { |
| ... |
| SetProp(P_AGGRESSIVE,1); |
| ... |
| } |
| |
| // Keine Leute angreifen, die auf der Freundesliste stehen. |
| // Bei dieser Variante wir das P_AGGRESSIVE in ob nicht ausgewertet, falls |
| // ob als Freund erkannt wird. |
| int AutoAttack(object ob) |
| { |
| if(member(freunde,ob)!=-1) return 0; |
| else return ::AutoAttack(ob); |
| } |
| |
| |
| SIEHE AUCH |
| ========== |
| |
| heart_beat(), P_AGGRESSIVE |
| |
| Letzte Aenderung: 28.08.2019, Bugfix |