New files.
Change-Id: I48a4499648415430ad35d597cc0864d68f052a95
diff --git a/npc/zwerg4.c b/npc/zwerg4.c
new file mode 100644
index 0000000..14528ea
--- /dev/null
+++ b/npc/zwerg4.c
@@ -0,0 +1,59 @@
+inherit "/std/npc";
+
+#include <new_skills.h>
+#include __PATH__(1)"defs.h"
+
+
+protected void create() {
+ if (!clonep()) {
+ set_next_reset(-1);
+ return;
+ }
+ ::create();
+
+ create_default_npc(20, 600);
+
+ SetProp(P_SHORT, "Ein spiegelblanker Zwerg");
+ SetProp(P_LONG, BSLF(
+ "Dieser Zwerg ist (oha!) FRISCHGEWASCHEN!!\n"
+ "Er ist so spiegelblank, dass Du Dir tatsaechlich vorstellen kannst, "
+ "dass er nicht nur Licht, sondern noch viel mehr reflektiert."));
+ SetProp(P_NAME, "Kawumm");
+ SetProp(P_ARTICLE, 0);
+ SetProp(P_GENDER, MALE);
+
+ AddId(({"zwerg", "kawumm"}));
+ SetProp(P_ALIGN, 100);
+ SetProp(P_RACE, "Zwerg");
+ SetProp(P_SIZE, 102);
+
+ SetProp(P_MURDER_MSG,
+ "He! Ich gehoere doch zu Notstroms Magiertutorial, %s.");
+ SetProp(P_DIE_MSG, " kippt um wie eine leere Bierflasche.\n");
+}
+
+/* Defend() wird aufgerufen, wenn dieses Objekt etwas auf die Omme bekommt -
+ oder bekommen soll. Resistenzen erledigt man am besten ueber die Prop aus
+ dem vorangegangenen Beispiel, aber manchmal moechte man ja etwas machen,
+ was ein wenig lustiger ist. */
+public int Defend(int dam, string|string* dam_type, int|mapping spell,
+ object enemy) {
+ if (mappingp(spell) && spell[SP_PHYSICAL_ATTACK]) {
+ tell_object(enemy, BSLF(
+ "Kawumm ist so glaenzend plankpoliert, dass er Deinen Angriff glatt "
+ "reflektiert."));
+ tell_room(ENV(enemy), BSLF(
+ "Kawumm ist so glaenzend plankpoliert, dass er den Angriff von "+
+ enemy->name()+"glatt reflektiert."),
+ ({enemy}));
+
+ m_add(spell, SP_RECURSIVE, 1);
+ enemy->Defend(dam, dam_type, spell, enemy);
+ /* Wir geben hier 0 zurueck, sind also vollstaendig immun gegen
+ Spells ohne physische Schadenskomponente. Man koennte auch einen
+ kleinen Teil des Schadens durchkommen lassen, aber dann haette
+ der Zwerg einen anderen Namen: */
+ return 0;
+ }
+ return ::Defend(dam, dam_type, spell, enemy);
+}
diff --git a/room/huette8.c b/room/huette8.c
new file mode 100644
index 0000000..c37c419
--- /dev/null
+++ b/room/huette8.c
@@ -0,0 +1,18 @@
+inherit "/std/room";
+
+#include __PATH__(1)"defs.h"
+
+
+protected void create() {
+ ::create();
+
+ SetProp(P_INT_SHORT, "Eine schummrige Huette");
+ SetProp(P_INT_LONG, BSLF(
+ "Diesmal ist der Zwerg so blitzeblank, dass er regelrecht spiegelt ..."));
+
+ SetProp(P_LIGHT, 1);
+ SetProp(P_INDOORS, 1);
+ SetProp(P_LIGHT_TYPE, LT_GLOWING);
+
+ AddItem(__PATH__(1)"npc/zwerg4", REFRESH_DESTRUCT);
+}