diff --git a/obj/axt3.c b/obj/axt3.c
new file mode 100644
index 0000000..bd06baf
--- /dev/null
+++ b/obj/axt3.c
@@ -0,0 +1,49 @@
+/*
+  Eine andere Moeglichkeit, eine Waffe nur fuer einen NPC zur Verfuegung zu
+  stellen ist ein wenig frustrierender fuer Spieler. Man sollte Beispiele
+  wie dieses nicht ungeprueft uebernehmen. Waffen, die kein Spieler zuecken
+  kann, stossen meist nicht auf sehr hohen Enthusiasmus beim Spieler, die
+  betreffende Gegend mehrmals zu aufzusuchen.
+*/
+inherit "/std/weapon";
+
+#include __PATH__(1)"defs.h"
+
+
+protected void create() {
+  if (!clonep()) {
+    set_next_reset(-1);
+    return;
+  }
+  ::create();
+
+  SetProp(P_SHORT, "Eine besondere Axt");
+  SetProp(P_LONG, BSLF(
+    "Dies ist die Axt von Kawumm, dem Zwerg. Niemand kann so damit zuhauen "
+    "wie er."));
+
+  SetProp(P_NAME, "Axt");
+  SetProp(P_GENDER, FEMALE);
+  AddId(({"axt"}));
+
+  SetProp(P_WC, 180);
+  SetProp(P_WEAPON_TYPE, WT_AXE);
+  SetProp(P_DAM_TYPE, DT_SLASH);
+  SetProp(P_NR_HANDS, 1);
+
+  SetProp(P_RESTRICTIONS, ([SR_FUN: "wield_check"]));
+
+  SetProp(P_VALUE, 200);
+  SetProp(P_WEIGHT, 3250);
+  SetProp(P_SIZE, 90);
+
+  SetProp(P_MATERIAL, ([MAT_STEEL:100]));
+}
+
+public mixed wield_check() {
+  if (interactive(ENV())
+    return BSLF(
+      "Dies ist Kawumms persoenliche Axt. Sie ist so dermassen unhandlich, "
+      "dass Du sie nicht zuecken kannst.");
+  return 1;
+}
