fix B04005 and B04006

[B04003 and B04004 are still marked "Reported"]

<Someone>:
> You aren't very skilled at reaching from the saddled blue dragon.
> Continue your attempt to set the land mine? [yn] (n)
> You begin setting your land mine.
> There is the trigger of your mine in a pile of soil below you.
> KAABLAMM!!!  The air currents set your land mine off!
> I somehow suspect that it'd be more than the air currents, if I were
> trying to arm a land mine from dragonback while not very good at
> controlling it.

<Someone>:
> What do you want to use or apply? [cmu or ?*]
> You aren't very skilled at reaching from the saddled warhorse.
> Continue your attempt to set the land mine? [yn] (n)
> You begin setting your land mine.  You escape your land mine.
> Is "escape" really the right word here?
This commit is contained in:
nethack.allison
2003-07-12 14:55:44 +00:00
parent 08bbe34a9f
commit b88e0a13ab
3 changed files with 9 additions and 4 deletions
+1
View File
@@ -179,6 +179,7 @@ NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
/* Flags to control dotrap() in trap.c */ /* Flags to control dotrap() in trap.c */
#define NOWEBMSG 0x01 /* suppress stumble into web message */ #define NOWEBMSG 0x01 /* suppress stumble into web message */
#define FORCEBUNGLE 0x02 /* adjustments appropriate for bungling */
/* Flags to control test_move in hack.c */ /* Flags to control test_move in hack.c */
#define DO_MOVE 0 /* really doing the move */ #define DO_MOVE 0 /* really doing the move */
+1 -1
View File
@@ -2094,7 +2094,7 @@ set_trap()
You("finish arming %s.", You("finish arming %s.",
the(defsyms[trap_to_defsym(what_trap(ttyp))].explanation)); the(defsyms[trap_to_defsym(what_trap(ttyp))].explanation));
if (((otmp->cursed || Fumbling) && (rnl(10) > 5)) || trapinfo.force_bungle) if (((otmp->cursed || Fumbling) && (rnl(10) > 5)) || trapinfo.force_bungle)
dotrap(ttmp, 0); dotrap(ttmp, trapinfo.force_bungle ? FORCEBUNGLE : 0);
} else { } else {
/* this shouldn't happen */ /* this shouldn't happen */
Your("trap setting attempt fails."); Your("trap setting attempt fails.");
+7 -3
View File
@@ -526,7 +526,8 @@ unsigned trflags;
register struct obj *otmp; register struct obj *otmp;
boolean already_seen = trap->tseen; boolean already_seen = trap->tseen;
boolean webmsgok = (!(trflags & NOWEBMSG)); boolean webmsgok = (!(trflags & NOWEBMSG));
boolean forcebungle = (trflags & FORCEBUNGLE);
nomul(0); nomul(0);
/* KMH -- You can't escape the Sokoban level traps */ /* KMH -- You can't escape the Sokoban level traps */
@@ -552,7 +553,8 @@ unsigned trflags;
defsyms[trap_to_defsym(ttype)].explanation); defsyms[trap_to_defsym(ttype)].explanation);
return; return;
} }
if(!Fumbling && ttype != MAGIC_PORTAL && ttype != ANTI_MAGIC && if(!Fumbling && ttype != MAGIC_PORTAL &&
ttype != ANTI_MAGIC && !forcebungle &&
(!rn2(5) || (!rn2(5) ||
((ttype == PIT || ttype == SPIKED_PIT) && is_clinger(youmonst.data)))) { ((ttype == PIT || ttype == SPIKED_PIT) && is_clinger(youmonst.data)))) {
You("escape %s %s.", You("escape %s %s.",
@@ -1043,7 +1045,9 @@ glovecheck: (void) rust_dmg(uarmg, "gauntlets", 1, TRUE, &youmonst);
trap->madeby_u ? "the trigger of your mine" : trap->madeby_u ? "the trigger of your mine" :
"a trigger"); "a trigger");
if (already_seen && rn2(3)) break; if (already_seen && rn2(3)) break;
pline("KAABLAMM!!! The air currents set %s%s off!", pline("KAABLAMM!!! %s %s%s off!",
forcebungle ? "Your inept attempt sets" :
"The air currents set",
already_seen ? a_your[trap->madeby_u] : "", already_seen ? a_your[trap->madeby_u] : "",
already_seen ? " land mine" : "it"); already_seen ? " land mine" : "it");
} else { } else {