Eine einfache Waffe
![]()
// Dieses Objekt soll erklaeren, wie man eine simple Waffe // ohne viel Schnickschnack implementiert. // Es wird das Verstaendnis gundlegender Methoden zur // Implementation 'normaler' Objekte vorausgesetzt. // Siehe dazu das Beispielobjekt 'einfaches_objekt' im // gleichen Verzeichnis // Wir leiten uns von der Standardwaffe der Mudlib ab. inherit "std/weapon"; #include <properties.h> /* Definition der Properties */ #include <combat.h> /* Definition der kampfspezifischen Konstanten */ void create() { // Speichersparen // d.h. wenn es kein Clone ist (nur unsere Blueprint bzw. Vorlage), dann // wird der Rest des create() nicht ausgeführt if (!clonep()) return; // MUSS SEIN! Das ist der Aufruf des ererbten create() aus der // Standardwaffe." ::create(); SetProp(P_LONG, "Dieses Messer hat einen festen Griff, und eine starke Klinge, " "man kann es als Waffe benutzen."); SetProp(P_NAME, "Messer"); SetProp(P_PLURAL, "Messer"); SetProp(P_GENDER, NEUTER); // Ueber diesen Begriff kann man das Objekt ansprechen // Bitte immer die Singular- _und_ die Plural-Id angeben! AddId("messer", "messer"); // jedes Objekt hat einen Wert SetProp(P_VALUE, 240); // und ein Gewicht (in Gramm) SetProp(P_WEIGHT, 250); // und eine Sperrigkeit SetProp(P_BULKINESS, 35); // der Waffentyp // Jeder Waffe muss ein Waffentyp zugeordnet werden. Da // wir ein Messer haben wollen, benutzen wir natuerlich // den Typ WT_KNIFE SetProp(P_WEAPON_TYPE, WT_KNIFE); // und der Schadenstyp // Hier geben wir an, welcher Art der Schaden ist, den // diese Waffe verursachen soll. Mit einem Messer kann // man schneiden (DT_SLASH) und/oder zustechen (DT_PIERCE) SetProp(P_DAM_TYPE, ({DT_SLASH, DT_PIERCE})); // Jetzt brauchen wir noch eine Angabe, wieviel Schaden // unser Messer verursachen koennen soll. Hierzu richte // man sich nach den offiziellen Richtlinien in der Man- // page 'waffen_ruestungen' // Da unser Messer eigentlich nicht als Waffe gedacht // war, halten wir uns ein wenig zurueck. SetProp(P_WC, 25); // Anzahl der Haende, die gebraucht werden, um die Waffe zu zuecken SetProp(P_NR_HANDS, 1); // Details kann man nie genug haben... AddDetail(({"griff", "holzgriff", "messergriff"}), "Das Messer ist mit einem Griff aus festem Holz" " versehen."); AddDetail(({"holz"}), "Du hast keine Ahnung, was fuer ein Holz das ist," " aber es ist verdammt fest."); AddDetail(({"klinge", "messerklinge"}), "Die Klinge des Messers ist aeusserst scharf."); } |
| Start » Magierhandbuch » Dokumentation » Programmierbeispiele » Waffe | |
|
| |