]> granicus.if.org Git - nethack/commitdiff
Give quest guardians some equipment
authorPasi Kallinen <paxed@alt.org>
Sat, 8 Oct 2016 18:09:31 +0000 (21:09 +0300)
committerPasi Kallinen <paxed@alt.org>
Sat, 8 Oct 2016 18:17:58 +0000 (21:17 +0300)
doc/fixes36.1
src/makemon.c

index 3cb943939febd922427f0e0a5c29ab3cb989fbd4..47995a24fec5129b34a64601c9c5e4873a120fa2 100644 (file)
@@ -344,6 +344,10 @@ don't show monster vs. monster attack message, if the message refers to
        a monster that cannot be sensed by the hero
 umber hulk gazing at hidden mimic forces mimic to unhide
 show some timed hero properties in wizard-mode #timeout
+give quest guardians some equipment
+hero polyed into ghoul can only eat non-veggy corpses or eggs
+kicking activates statue traps
+pets start with apport equal to your charisma
 
 
 Fixes to Post-3.6.0 Problems that Were Exposed Via git Repository
index a058cb16c0b6513941f53ca73e0ba87a38ee3698..3422cb2bf98759d840d3b6aaf9149b5e06672614 100644 (file)
@@ -269,6 +269,58 @@ register struct monst *mtmp;
         } else if (mm == PM_NINJA) { /* extra quest villains */
             (void) mongets(mtmp, rn2(4) ? SHURIKEN : DART);
             (void) mongets(mtmp, rn2(4) ? SHORT_SWORD : AXE);
+        } else if (ptr->msound == MS_GUARDIAN) {
+            /* quest "guardians" */
+            switch (mm) {
+            case PM_STUDENT:
+            case PM_ATTENDANT:
+            case PM_ABBOT:
+            case PM_ACOLYTE:
+            case PM_GUIDE:
+            case PM_APPRENTICE:
+                if (rn2(2))
+                    (void) mongets(mtmp, rn2(3) ? DAGGER : KNIFE);
+                if (rn2(5))
+                    (void) mongets(mtmp, rn2(3) ? LEATHER_JACKET : LEATHER_CLOAK);
+                if (rn2(3))
+                    (void) mongets(mtmp, rn2(3) ? LOW_BOOTS : HIGH_BOOTS);
+                if (rn2(3))
+                    (void) mongets(mtmp, POT_HEALING);
+                break;
+            case PM_CHIEFTAIN:
+            case PM_PAGE:
+            case PM_ROSHI:
+            case PM_WARRIOR:
+                (void) mongets(mtmp, rn2(3) ? LONG_SWORD : SHORT_SWORD);
+                (void) mongets(mtmp, rn2(3) ? CHAIN_MAIL : LEATHER_ARMOR);
+                if (rn2(2))
+                    (void) mongets(mtmp, rn2(2) ? LOW_BOOTS : HIGH_BOOTS);
+                if (!rn2(3))
+                    (void) mongets(mtmp, LEATHER_CLOAK);
+                if (!rn2(3)) {
+                    (void) mongets(mtmp, BOW);
+                    m_initthrow(mtmp, ARROW, 12);
+                }
+                break;
+            case PM_HUNTER:
+                (void) mongets(mtmp, rn2(3) ? SHORT_SWORD : DAGGER);
+                if (rn2(2))
+                    (void) mongets(mtmp, rn2(2) ? LEATHER_JACKET : LEATHER_ARMOR);
+                (void) mongets(mtmp, BOW);
+                m_initthrow(mtmp, ARROW, 12);
+                break;
+            case PM_THUG:
+                (void) mongets(mtmp, CLUB);
+                (void) mongets(mtmp, rn2(3) ? DAGGER : KNIFE);
+                if (rn2(2))
+                    (void) mongets(mtmp, LEATHER_GLOVES);
+                (void) mongets(mtmp, rn2(2) ? LEATHER_JACKET : LEATHER_ARMOR);
+                break;
+            case PM_NEANDERTHAL:
+                (void) mongets(mtmp, CLUB);
+                (void) mongets(mtmp, LEATHER_ARMOR);
+                break;
+            }
         }
         break;