teleport message sequencing
"You materialize at another location," was delivered while the previous location still controlled line of sight. Very noticeable if you started from underwater and landed on the surface in an area which hadn't been mapped yet.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
$NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.171 $ $NHDT-Date: 1586382777 2020/04/08 21:52:57 $
|
$NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.172 $ $NHDT-Date: 1586384219 2020/04/08 22:16:59 $
|
||||||
|
|
||||||
General Fixes and Modified Features
|
General Fixes and Modified Features
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
@@ -168,6 +168,7 @@ fix door created into random wall or position opening into solid wall
|
|||||||
being more general; change its default to True
|
being more general; change its default to True
|
||||||
change inconsistent achievement spelling of "Mine Town" to "Minetown"
|
change inconsistent achievement spelling of "Mine Town" to "Minetown"
|
||||||
fix crash in water_damage_chain
|
fix crash in water_damage_chain
|
||||||
|
teleport feedback "you materialize at another location" was given too soon
|
||||||
X11: was still initializing map to 'stone' instead of 'unexplored' after they
|
X11: was still initializing map to 'stone' instead of 'unexplored' after they
|
||||||
became separate glyphs
|
became separate glyphs
|
||||||
X11: for text map without color, add support for black&white ice; draw it in
|
X11: for text map without color, add support for black&white ice; draw it in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 teleport.c $NHDT-Date: 1585211492 2020/03/26 08:31:32 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.118 $ */
|
/* NetHack 3.6 teleport.c $NHDT-Date: 1586384219 2020/04/08 22:16:59 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.122 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Robert Patrick Rankin, 2011. */
|
/*-Copyright (c) Robert Patrick Rankin, 2011. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -368,10 +368,6 @@ int teleds_flags;
|
|||||||
unplacebc(); /* to match placebc() below */
|
unplacebc(); /* to match placebc() below */
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_teleport && flags.verbose)
|
|
||||||
You("materialize in %s location!",
|
|
||||||
(nux == u.ux0 && nuy == u.uy0) ? "the same" : "a different");
|
|
||||||
|
|
||||||
/* must set u.ux, u.uy after drag_ball(), which may need to know
|
/* must set u.ux, u.uy after drag_ball(), which may need to know
|
||||||
the old position if allow_drag is true... */
|
the old position if allow_drag is true... */
|
||||||
u_on_newpos(nux, nuy); /* set u.<x,y>, usteed-><mx,my>; cliparound() */
|
u_on_newpos(nux, nuy); /* set u.<x,y>, usteed-><mx,my>; cliparound() */
|
||||||
@@ -391,6 +387,12 @@ int teleds_flags;
|
|||||||
g.vision_full_recalc = 1;
|
g.vision_full_recalc = 1;
|
||||||
nomul(0);
|
nomul(0);
|
||||||
vision_recalc(0); /* vision before effects */
|
vision_recalc(0); /* vision before effects */
|
||||||
|
|
||||||
|
/* this used to take place sooner, but if a --More-- prompt was issued
|
||||||
|
then the old map display was shown instead of the new one */
|
||||||
|
if (is_teleport && flags.verbose)
|
||||||
|
You("materialize in %s location!",
|
||||||
|
(nux == u.ux0 && nuy == u.uy0) ? "the same" : "a different");
|
||||||
/* if terrain type changes, levitation or flying might become blocked
|
/* if terrain type changes, levitation or flying might become blocked
|
||||||
or unblocked; might issue message, so do this after map+vision has
|
or unblocked; might issue message, so do this after map+vision has
|
||||||
been updated for new location instead of right after u_on_newpos() */
|
been updated for new location instead of right after u_on_newpos() */
|
||||||
|
|||||||
Reference in New Issue
Block a user