MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | /* Paracelsus: Lebensring |
| 2 | ** |
| 3 | ** Ein Beispiel fuer die Anwendung von P_M_HEALTH_MOD |
| 4 | ** |
| 5 | ** Zieht ein Spieler diesen Ring an, so erhoehen sich seine maximalen |
| 6 | ** Lebenspunkte dabei um 10, waehrend seine max. Konzentrationspunkte |
| 7 | ** um 5 erniedrigt werden. |
| 8 | */ |
| 9 | |
| 10 | // Diese Pragmas sorgen dafuer, dass der Driver darauf achtet, dass bei |
| 11 | // Funktionsargumenten, -Rueckgabewerten und teilweise bei Zuweisung von |
| 12 | // Werten an Variablen der richtige Datentyp verwendet wird (z.b. kein string |
| 13 | // anstelle eines int verwendet wird). Sollte in keinem Objekt fehlen. |
| 14 | #pragma strong_types, save_types, rtt_checks |
| 15 | |
| 16 | inherit "/std/armour"; |
| 17 | |
| 18 | #include <properties.h> |
| 19 | #include <armour.h> |
| 20 | #include <language.h> |
| 21 | #include <combat.h> |
| 22 | |
| 23 | protected void create() |
| 24 | { |
| 25 | ::create(); |
| 26 | |
| 27 | SetProp(P_SHORT,"Ein Lebensring"); |
| 28 | SetProp(P_LONG, |
| 29 | "Ein kleiner Ring aus einem seltsamen, gruenen Material.\n"); |
| 30 | SetProp(P_INFO, |
| 31 | "Dieser Ring unterstuetzt die Gesundheit.\n"+ |
| 32 | "Dabei schwaecht er leider den Geist.\n"); |
| 33 | SetProp(P_NAME,"Lebensring"); |
| 34 | SetProp(P_GENDER,MALE); |
| 35 | SetProp(P_WEIGHT,80); |
| 36 | SetProp(P_VALUE,2000+random(501)); |
| 37 | SetProp(P_ARMOUR_TYPE,AT_RING); |
| 38 | SetProp(P_AC,0); // keine Schutzwirkung im Kampf |
| 39 | SetProp(P_MATERIAL,MAT_MISC_MAGIC); |
| 40 | |
| 41 | // ----> |
| 42 | |
| 43 | SetProp(P_M_HEALTH_MOD, |
| 44 | ([ |
| 45 | P_HP : 10, // Max. LP um 10 erhoehen |
| 46 | P_SP : -5 // Max. KP um 5 verringern |
| 47 | ]) ); |
| 48 | |
| 49 | // <---- |
| 50 | |
| 51 | AddId( ({"ring","lebensring"}) ); |
| 52 | |
| 53 | AddDetail( "material", |
| 54 | "Es ist gruen.\n"); |
| 55 | } |
| 56 | |