]> granicus.if.org Git - nethack/commitdiff
replace some trap function result magic numbers
authornhmall <nhmall@nethack.org>
Wed, 9 Feb 2022 00:16:42 +0000 (19:16 -0500)
committernhmall <nhmall@nethack.org>
Wed, 9 Feb 2022 00:16:42 +0000 (19:16 -0500)
include/trap.h
src/apply.c
src/dokick.c
src/mhitm.c
src/monmove.c
src/muse.c
src/trap.c
src/uhitm.c

index 60e4aa9e4d4ecd8c16b8bfe831555aebd6773747..8b7cfb82fb0f362b4adb573c15f4e9492611db56 100644 (file)
@@ -82,6 +82,9 @@ enum trap_types {
     TRAPNUM      = 24
 };
 
+/* some trap-related function return results */
+enum { Trap_No_Effect = 0, Trap_Is_Gone = 0, Trap_Killed_Mon = 2 };
+
 #define is_pit(ttyp) ((ttyp) == PIT || (ttyp) == SPIKED_PIT)
 #define is_hole(ttyp)  ((ttyp) == HOLE || (ttyp) == TRAPDOOR)
 #define undestroyable_trap(ttyp) ((ttyp) == MAGIC_PORTAL         \
index 45ac82ea9f3b6075c358486b4ef74b2af09778f3..b7ffd6f35d48916ec8678481ce9e4eda3fed39f6 100644 (file)
@@ -509,7 +509,7 @@ use_magic_whistle(struct obj *obj)
                     mtmp->mundetected = 0; /* reveal non-mimic hider */
                     if (canspotmon(mtmp))
                         ++pet_cnt;
-                    if (mintrap(mtmp) == 2)
+                    if (mintrap(mtmp) == Trap_Killed_Mon)
                         change_luck(-1);
                 }
             }
index 8f9b81255292b020a4ca1cd321e04dc25d8f0355..b65cd51e0a154e9c431167af899107f3acd682d1 100644 (file)
@@ -99,7 +99,7 @@ kickdmg(struct monst *mon, boolean clumsy)
                 place_monster(mon, mdx, mdy);
                 newsym(mon->mx, mon->my);
                 set_apparxy(mon);
-                if (mintrap(mon) == 2)
+                if (mintrap(mon) == Trap_Killed_Mon)
                     trapkilled = TRUE;
             }
         }
index eaa43cda5aaad32bd73f430f63f6e4808fad7c8e..5a0a10aca95e2614761f9c7adad9b546b467a5ab 100644 (file)
@@ -438,7 +438,7 @@ mattackm(register struct monst *magr, register struct monst *mdef)
                             pline("%s divides as %s hits it!", buf,
                                   mon_nam(magr));
                         }
-                        mintrap(mclone);
+                        (void) mintrap(mclone);
                     }
                 }
             } else
@@ -810,7 +810,7 @@ gulpmm(register struct monst *magr, register struct monst *mdef,
         place_monster(magr, dx, dy);
         newsym(dx, dy);
         /* aggressor moves to <dx,dy> and might encounter trouble there */
-        if (minliquid(magr) || (t_at(dx, dy) && mintrap(magr) == 2))
+        if (minliquid(magr) || (t_at(dx, dy) && mintrap(magr) == Trap_Killed_Mon))
             status |= MM_AGR_DIED;
     } else if (status & MM_AGR_DIED) { /* aggressor died */
         place_monster(mdef, dx, dy);
index 25b6bce1ed706a5625f06ccf118cfaef70f4eab5..83e3b1e3028ff623097adbd7c70d1623addafe5b 100644 (file)
@@ -1023,7 +1023,7 @@ m_move(register struct monst* mtmp, register int after)
     if (mtmp->mtrapped) {
         int i = mintrap(mtmp);
 
-        if (i >= 2) {
+        if (i >= Trap_Killed_Mon) {
             newsym(mtmp->mx, mtmp->my);
             return 2;
         } /* it died */
@@ -1491,7 +1491,7 @@ m_move(register struct monst* mtmp, register int after)
             }
 
             newsym(omx, omy); /* update the old position */
-            if (mintrap(mtmp) >= 2) {
+            if (mintrap(mtmp) >= Trap_Killed_Mon) {
                 if (mtmp->mx)
                     newsym(mtmp->mx, mtmp->my);
                 return 2; /* it died */
index e2c1833e6b80657800a0746a2cd8a809208cb375..a3e8c58fd10b926e3978f501edf8aa52fd560fab 100644 (file)
@@ -2777,7 +2777,7 @@ muse_unslime(
         }
         /* hack to avoid mintrap()'s chance of avoiding known trap */
         mon->mtrapseen &= ~(1 << (FIRE_TRAP - 1));
-        mintrap(mon);
+        (void) mintrap(mon);
     } else if (otyp == STRANGE_OBJECT) {
         /* monster is using fire breath on self */
         if (vis)
index 759bb52990f9c3a6eb2ef220528ac4fd7992a1f6..d6763b749a4033d6650cd4ecfb9afe933c919cab 100644 (file)
@@ -941,7 +941,7 @@ trapeffect_arrow_trap(
             You_hear("a loud click!");
             deltrap(trap);
             newsym(u.ux, u.uy);
-            return 0;
+            return Trap_Is_Gone;
         }
         trap->once = 1;
         seetrap(trap);
@@ -970,7 +970,7 @@ trapeffect_arrow_trap(
                       Monnam(mtmp));
             deltrap(trap);
             newsym(mtmp->mx, mtmp->my);
-            return 0;
+            return Trap_Is_Gone;
         }
         trap->once = 1;
         otmp = t_missile(ARROW, trap);
@@ -979,9 +979,9 @@ trapeffect_arrow_trap(
         if (thitm(8, mtmp, otmp, 0, FALSE))
             trapkilled = TRUE;
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -999,7 +999,7 @@ trapeffect_dart_trap(
             You_hear("a soft click.");
             deltrap(trap);
             newsym(u.ux, u.uy);
-            return 0;
+            return Trap_Is_Gone;
         }
         trap->once = 1;
         seetrap(trap);
@@ -1036,7 +1036,7 @@ trapeffect_dart_trap(
                       Monnam(mtmp));
             deltrap(trap);
             newsym(mtmp->mx, mtmp->my);
-            return 0;
+            return Trap_Is_Gone;
         }
         trap->once = 1;
         otmp = t_missile(DART, trap);
@@ -1047,9 +1047,9 @@ trapeffect_dart_trap(
         if (thitm(7, mtmp, otmp, 0, FALSE))
             trapkilled = TRUE;
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1115,7 +1115,7 @@ trapeffect_rocktrap(
                       mon_nam(mtmp));
             deltrap(trap);
             newsym(mtmp->mx, mtmp->my);
-            return 0;
+            return Trap_Is_Gone;
         }
         trap->once = 1;
         otmp = t_missile(ROCK, trap);
@@ -1124,9 +1124,9 @@ trapeffect_rocktrap(
         if (thitm(0, mtmp, otmp, d(2, 6), FALSE))
             trapkilled = TRUE;
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1159,7 +1159,7 @@ trapeffect_sqky_board(
         boolean in_sight = canseemon(mtmp) || (mtmp == u.usteed);
 
         if (is_flyer(mtmp->data))
-            return 0;
+            return Trap_No_Effect;
         /* stepped on a squeaky board */
         if (in_sight) {
             if (!Deaf) {
@@ -1182,7 +1182,7 @@ trapeffect_sqky_board(
         /* wake up nearby monsters */
         wake_nearto(mtmp->mx, mtmp->my, 40);
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1198,18 +1198,18 @@ trapeffect_bear_trap(
         int dmg = d(2, 4);
 
         if ((Levitation || Flying) && !forcetrap)
-            return 0;
+            return Trap_No_Effect;
         feeltrap(trap);
         if (amorphous(g.youmonst.data) || is_whirly(g.youmonst.data)
             || unsolid(g.youmonst.data)) {
             pline("%s bear trap closes harmlessly through you.",
                   A_Your[trap->madeby_u]);
-            return 0;
+            return Trap_No_Effect;
         }
         if (!u.usteed && g.youmonst.data->msize <= MZ_SMALL) {
             pline("%s bear trap closes harmlessly over you.",
                   A_Your[trap->madeby_u]);
-            return 0;
+            return Trap_No_Effect;
         }
         set_utrap((unsigned) rn1(4, 4), TT_BEARTRAP);
         if (u.usteed) {
@@ -1253,9 +1253,9 @@ trapeffect_bear_trap(
         if (mtmp->mtrapped)
             trapkilled = thitm(0, mtmp, (struct obj *) 0, d(2, 4), FALSE);
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1285,7 +1285,7 @@ trapeffect_slp_gas_trap(
             }
         }
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1412,9 +1412,9 @@ trapeffect_rust_trap(
             (void) split_mon(mtmp, (struct monst *) 0);
         }
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1494,9 +1494,9 @@ trapeffect_fire_trap(
         if (see_it && t_at(mtmp->mx, mtmp->my))
             seetrap(trap);
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1521,7 +1521,7 @@ trapeffect_pit(
 
         /* KMH -- You can't escape the Sokoban level traps */
         if (!Sokoban && (Levitation || (Flying && !plunged)))
-            return 0;
+            return Trap_No_Effect;
         feeltrap(trap);
         if (!Sokoban && is_clinger(g.youmonst.data) && !plunged) {
             if (trap->tseen) {
@@ -1532,7 +1532,7 @@ trapeffect_pit(
                       ttype == SPIKED_PIT ? "full of spikes " : "");
                 You("don't fall in!");
             }
-            return 0;
+            return Trap_No_Effect;
         }
         if (!Sokoban) {
             char verbbuf[BUFSZ];
@@ -1648,10 +1648,10 @@ trapeffect_pit(
                     seetrap(trap);
                     pline("%s doesn't fall into the pit.", Monnam(mtmp));
                 }
-                return 0;
+                return Trap_No_Effect;
             }
             if (!inescapable)
-                return 0;               /* avoids trap */
+                return Trap_No_Effect;               /* avoids trap */
             fallverb = "is dragged"; /* sokoban pit */
         }
         if (!passes_walls(mptr))
@@ -1669,9 +1669,9 @@ trapeffect_pit(
                                        rnd((tt == PIT) ? 6 : 10), FALSE))
             trapkilled = TRUE;
 
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1685,7 +1685,7 @@ trapeffect_hole(
             seetrap(trap); /* normally done in fall_through */
             impossible("dotrap: %ss cannot exist on this level.",
                        trapname(trap->ttyp, TRUE));
-            return 0; /* don't activate it after all */
+            return Trap_No_Effect; /* don't activate it after all */
         }
         fall_through(TRUE, (trflags & TOOKPLUNGE));
     } else {
@@ -1699,7 +1699,7 @@ trapeffect_hole(
         if (!Can_fall_thru(&u.uz)) {
             impossible("mintrap: %ss cannot exist on this level.",
                        trapname(tt, TRUE));
-            return 0; /* don't activate it after all */
+            return Trap_No_Effect; /* don't activate it after all */
         }
         if (is_flyer(mptr) || is_floater(mptr) || mptr == &mons[PM_WUMPUS]
             || (mtmp->wormno && count_wsegs(mtmp) > 5)
@@ -1716,7 +1716,7 @@ trapeffect_hole(
                         pline("%s doesn't fall through the hole.",
                               Monnam(mtmp));
                 }
-                return 0; /* inescapable = FALSE; */
+                return Trap_No_Effect; /* inescapable = FALSE; */
             }
             if (inescapable) { /* sokoban hole */
                 if (in_sight) {
@@ -1726,11 +1726,11 @@ trapeffect_hole(
                     seetrap(trap);
                 }
             } else
-                return 0;
+                return Trap_No_Effect;
         }
         return trapeffect_level_telep(mtmp, trap, trflags);
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1747,7 +1747,7 @@ trapeffect_telep_trap(
 
         mtele_trap(mtmp, trap, in_sight);
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1771,7 +1771,7 @@ trapeffect_level_telep(
         if (mlev_res)
             return mlev_res;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1794,12 +1794,12 @@ trapeffect_web(
 
         feeltrap(trap);
         if (mu_maybe_destroy_web(&g.youmonst, webmsgok, trap))
-            return 0;
+            return Trap_No_Effect;
         if (webmaker(g.youmonst.data)) {
             if (webmsgok)
                 pline(trap->madeby_u ? "You take a walk on your web."
                       : "There is a spider web here.");
-            return 0;
+            return Trap_No_Effect;
         }
         if (webmsgok) {
             char verbbuf[BUFSZ];
@@ -1839,14 +1839,15 @@ trapeffect_web(
                 u.usteed->mx = u.ux;
                 u.usteed->my = u.uy;
 
-                /* mintrap currently does not return 2(died) for webs */
+                /* mintrap currently does not return Trap_Killed_Mon
+                   (mon died) for webs */
                 if (mintrap(u.usteed)) {
                     u.usteed->mtrapped = 0;
                     if (strongmonst(u.usteed->data))
                         str = 17;
                 } else {
                     reset_utrap(FALSE);
-                    return 0;
+                    return Trap_No_Effect;
                 }
 
                 webmsgok = FALSE; /* mintrap printed the messages */
@@ -1881,9 +1882,9 @@ trapeffect_web(
         struct permonst *mptr = mtmp->data;
 
         if (webmaker(mptr))
-            return 0;
+            return Trap_No_Effect;
         if (mu_maybe_destroy_web(mtmp, in_sight, trap))
-            return 0;
+            return Trap_No_Effect;
         tear_web = FALSE;
         switch (monsndx(mptr)) {
         case PM_OWLBEAR: /* Eric Backus */
@@ -1939,7 +1940,7 @@ trapeffect_web(
         }
         return mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1953,7 +1954,7 @@ trapeffect_statue_trap(
     } else {
         /* monsters don't trigger statue traps */
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -1973,7 +1974,7 @@ trapeffect_magic_trap(
             u.uen = (u.uenmax += 2);
             if (u.uenmax > u.uenpeak)
                 u.uenpeak = u.uenmax;
-            return 0;
+            return Trap_No_Effect;
         } else {
             domagictrap();
         }
@@ -1983,7 +1984,7 @@ trapeffect_magic_trap(
         if (!rn2(21))
             return trapeffect_fire_trap(mtmp, trap, trflags);
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2076,9 +2077,9 @@ trapeffect_anti_magic(
             if (see_it)
                 newsym(trap->tx, trap->ty);
         }
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2131,7 +2132,7 @@ trapeffect_poly_trap(
                 seetrap(trap);
         }
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2150,13 +2151,13 @@ trapeffect_landmine(
 
         if ((Levitation || Flying) && !forcetrap) {
             if (!already_seen && rn2(3))
-                return 0;
+                return Trap_No_Effect;
             feeltrap(trap);
             pline("%s %s in a pile of soil below you.",
                   already_seen ? "There is" : "You discover",
                   trap->madeby_u ? "the trigger of your mine" : "a trigger");
             if (already_seen && rn2(3))
-                return 0;
+                return Trap_No_Effect;
             pline("KAABLAMM!!!  %s %s%s off!",
                   forcebungle ? "Your inept attempt sets"
                   : "The air currents set",
@@ -2170,7 +2171,7 @@ trapeffect_landmine(
             static boolean recursive_mine = FALSE;
 
             if (recursive_mine)
-                return 0;
+                return Trap_No_Effect;
             feeltrap(trap);
             pline("KAABLAMM!!!  You triggered %s land mine!",
                   a_your[trap->madeby_u]);
@@ -2204,7 +2205,7 @@ trapeffect_landmine(
         xchar tx = trap->tx, ty = trap->ty;
 
         if (rn2(3))
-            return 0; /* monsters usually don't set it off */
+            return Trap_No_Effect; /* monsters usually don't set it off */
         if (is_flyer(mptr)) {
             boolean already_seen = trap->tseen;
 
@@ -2214,7 +2215,7 @@ trapeffect_landmine(
                 seetrap(trap);
             }
             if (rn2(3))
-                return 0;
+                return Trap_No_Effect;
             if (in_sight) {
                 newsym(mtmp->mx, mtmp->my);
                 pline_The("air currents set %s off!",
@@ -2237,7 +2238,7 @@ trapeffect_landmine(
             trapkilled = TRUE;
         } else {
             /* monsters recursively fall into new pit */
-            if (mintrap(mtmp) == 2)
+            if (mintrap(mtmp) == Trap_Killed_Mon)
                 trapkilled = TRUE;
         }
         /* a boulder may fill the new pit, crushing monster */
@@ -2248,9 +2249,9 @@ trapeffect_landmine(
             g.multi = -1;
             g.nomovemsg = "The explosion awakens you!";
         }
-        return trapkilled ? 2 : mtmp->mtrapped;
+        return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2296,10 +2297,10 @@ trapeffect_rolling_boulder_trap(
                 deltrap(trap);
                 newsym(mtmp->mx, mtmp->my);
             }
-            return trapkilled ? 2 : mtmp->mtrapped;
+            return trapkilled ? Trap_Killed_Mon : mtmp->mtrapped;
         }
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2314,7 +2315,7 @@ trapeffect_magic_portal(
     } else {
         return trapeffect_level_telep(mtmp, trap, trflags);
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2357,7 +2358,7 @@ trapeffect_vibrating_square(
             }
         }
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 static int
@@ -2416,7 +2417,7 @@ trapeffect_selector(
                    (mtmp == &g.youmonst) ? "You" : "Some monster",
                    trap->ttyp);
     }
-    return 0;
+    return Trap_No_Effect;
 }
 
 void
@@ -2505,7 +2506,7 @@ steedintrap(struct trap* trap, struct obj* otmp)
     boolean trapkilled, steedhit;
 
     if (!steed || !trap)
-        return 0;
+        return Trap_No_Effect;
     tt = trap->ttyp;
     steed->mx = u.ux;
     steed->my = u.uy;
@@ -2515,7 +2516,7 @@ steedintrap(struct trap* trap, struct obj* otmp)
     case ARROW_TRAP:
         if (!otmp) {
             impossible("steed hit by non-existent arrow?");
-            return 0;
+            return Trap_No_Effect;
         }
         trapkilled = thitm(8, steed, otmp, 0, FALSE);
         steedhit = TRUE;
@@ -2523,7 +2524,7 @@ steedintrap(struct trap* trap, struct obj* otmp)
     case DART_TRAP:
         if (!otmp) {
             impossible("steed hit by non-existent dart?");
-            return 0;
+            return Trap_No_Effect;
         }
         trapkilled = thitm(7, steed, otmp, 0, FALSE);
         steedhit = TRUE;
@@ -2573,7 +2574,7 @@ steedintrap(struct trap* trap, struct obj* otmp)
 
     if (trapkilled) {
         dismount_steed(DISMOUNT_POLY);
-        return 2;
+        return Trap_Killed_Mon;
     }
     return steedhit ? 1 : 0;
 }
@@ -3119,7 +3120,7 @@ mintrap(register struct monst *mtmp)
                              || (tt == HOLE && !mindless(mptr)))) {
             /* it has been in such a trap - perhaps it escapes */
             if (rn2(4))
-                return 0;
+                return Trap_No_Effect;
         } else {
             mtmp->mtrapseen |= (1 << (tt - 1));
         }
@@ -3131,7 +3132,7 @@ mintrap(register struct monst *mtmp)
 
         trap_result = trapeffect_selector(mtmp, trap, 0);
     }
-    return (trap_result == 2) ? trap_result : mtmp->mtrapped;
+    return (trap_result == Trap_Killed_Mon) ? trap_result : mtmp->mtrapped;
 }
 
 /* Combine cockatrice checks into single functions to avoid repeating code. */
index 536bb4fab05545659ba4f2bdcfd858e63fd2b7a8..b967e51b1c4fb6c11d7e5d303ec38203e0eeefb4 100644 (file)
@@ -1359,7 +1359,7 @@ hmon_hitmon(
                 Sprintf(withwhat, " with %s", yname(obj));
             pline("%s divides as you hit it%s!", Monnam(mon), withwhat);
             hittxt = TRUE;
-            mintrap(mclone);
+            (void) mintrap(mclone);
         }
     }