blob: 5a3bfb00a21d4f48b616ee3672699bdd9262f67c [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001P_ATTACK_BUSY
2*************
MG Mud User88f12472016-06-24 23:31:02 +02003
MG Mud User88f12472016-06-24 23:31:02 +02004
Zesstra953f9972017-02-18 15:37:36 +01005NAME
6====
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 P_ATTACK_BUSY "attack_busy"
MG Mud User88f12472016-06-24 23:31:02 +02009
MG Mud User88f12472016-06-24 23:31:02 +020010
Zesstra953f9972017-02-18 15:37:36 +010011DEFINIERT IN
12============
13
14 /sys/living/combat.h
15
16
17BESCHREIBUNG
18============
19
20 Ueber diese Property kann festgestellt werden, ob ein Spieler noch
21 Spezialwaffen (zB Flammenkugel) einsetzen kann.
22
23
24
25 Ist der Wert bei Abfrage ungleich 0, dann darf der Spieler in dieser
26 Runde keine Aktion mehr durchfuehren. Mit SetProp(P_ATTACK_BUSY, 1)
27 wird eine Aktion verbraucht.
28
29 Intern wird relativ fein gerechnet, ein SetProp(P_ATTACK_BUSY, x)
30 wird in das Abziehen von x*100 Punkten umgerechnet. Der Wert freier
31 Aktionen pro Runde berechnet sich wie folgt:
32
33
34
35 Spieler: 100 + QuerySkillAttribute(SA_SPEED)
36 Seher: Spieler + 200 + QueryProp(P_LEVEL)
37
38 Das Maximum liegt bei 500.
39 Damit betraegt die Anzahl der moeglichen Aktionen pro Runde: Wert/100,
40 also maximal 5 Aktionen pro Runde.
41
42 Zaubersprueche zaehlen im Normalfall auch als eine Aktion.
43
44
45BEMERKUNGEN
46===========
47
48 Benutzt man P_ATTACK_BUSY fuer eine sich nicht sofort verbrauchende
49 Sache, kann ein Seher dieses Objekt im Normalfall dreimal pro Runde
50 benutzen. Wenn ungewollt, muss das ueber einen Zeitmarker selbst
51 verhindert werden.
52
53
54BEISPIELE
55=========
56
57 (Code eines Objektes ist in
58 /doc/beispiele/testobjekte/attack_busy_sensitive_testobj.c)
59 // einfacher Test auf ATTACK_BUSY und anschliessendes Setzen
60 if (this_player()->QueryProp(P_ATTACK_BUSY)) {
61 write("Du hast dafuer momentan einfach nicht mehr die Puste.\n");
62 return 1;
63 }
64 this_player()->SetProp(P_ATTACK_BUSY, 1);
MG Mud User88f12472016-06-24 23:31:02 +020065
667. Mar 2011 Gloinson