]> granicus.if.org Git - nethack/commitdiff
Using magic portals and level teleporters stuns for a few turns
authorPasi Kallinen <paxed@alt.org>
Sun, 27 Feb 2022 09:25:54 +0000 (11:25 +0200)
committerPasi Kallinen <paxed@alt.org>
Sun, 27 Feb 2022 09:25:58 +0000 (11:25 +0200)
It's taxing to teleport long distances.

Yes, this makes the entrance to the planes and the quest more
dangerous, and nerfs portal dancing Fort Ludios.

doc/fixes3-7-0.txt
src/teleport.c

index cfb259257f48b64037cead0701e9d6116ab78d9a..862456ef5f17252096cc4e719707c7e4cd407239 100644 (file)
@@ -825,6 +825,7 @@ if a lit potion of oil on the floor was launched by an explosion and it hit
        tried to extinguish it as a light source
 place_object() validated coordinates after using them to index level.objects
 killed rope golem may drop leashes and bullwhips
+using magic portals and level teleporters stuns hero for a few turns
 
 
 Fixes to 3.7.0-x Problems that Were Exposed Via git Repository
index c128ae8f4a6dfa212afed2682cce2f1879c0d196..baae6f350dc9c1764cf2e80aa149ab9ee6b69b76 100644 (file)
@@ -1085,6 +1085,7 @@ domagicportal(register struct trap* ttmp)
         return;
     }
 
+    make_stunned((HStun & TIMEOUT) + 3L, FALSE);
     target_level = ttmp->dst;
     schedule_goto(&target_level, UTOTYPE_PORTAL,
                   "You feel dizzy for a moment, but the sensation passes.",
@@ -1132,6 +1133,7 @@ level_tele_trap(struct trap* trap, unsigned int trflags)
         You("are momentarily blinded by a flash of light.");
     else
         You("are momentarily disoriented.");
+    make_stunned((HStun & TIMEOUT) + 3L, FALSE);
     deltrap(trap);
     newsym(u.ux, u.uy); /* get rid of trap symbol */
     level_tele();
@@ -1506,6 +1508,7 @@ mlevel_tele_trap(
             if (trap)
                 seetrap(trap);
         }
+        mtmp->mstun = 1;
         migrate_to_level(mtmp, ledger_no(&tolevel), migrate_typ, (coord *) 0);
         return Trap_Moved_Mon; /* no longer on this level */
     }