diff xrogue/move.c @ 167:a0a57cf42810

ARogue family: don't hide messages caused by moving to a new level. new_level() redraws the whole screen, including the message line, so if msg() has just been called, the message will likely not last long enough to be noticed. These cases have been changed so that msg() is called after new_level(). If a fall through a trapdoor is fatal, "You fall into a trap!" is no longer printed, but the tombstone should make things clear.
author John "Elwin" Edwards
date Mon, 29 Jun 2015 20:37:32 -0400
parents e6179860cb76
children f54901b9c39b
line wrap: on
line diff
--- a/xrogue/move.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/xrogue/move.c	Mon Jun 29 20:37:32 2015 -0400
@@ -85,7 +85,6 @@
             if (is_player) {
                 level++;
                 pstats.s_hpt -= roll(1, 10);
-                msg("You fell through a trap! ");
                 if (pstats.s_hpt < 1) {
             pstats.s_hpt = -1;
             death(D_FALL);
@@ -93,6 +92,7 @@
         wclear(cw);
         wclear(mw);
                 new_level(NORMLEV);
+                msg("You fell through a trap! ");
             }
             else {
                 if (can_see) msg("%s fell into a trap!", prname(mname, TRUE));
@@ -142,13 +142,13 @@
             if (is_player) {
                 prev_max = 1000;    /* flag used in n_level.c */
         level++;
-                msg("You suddenly find yourself in strange surroundings! ");
                 pstats.s_hpt -= roll(1, 10);
                 if (pstats.s_hpt < 1) {
             pstats.s_hpt = -1;
             death(D_FALL);
         }
                 new_level(OUTSIDE);
+                msg("You suddenly find yourself in strange surroundings! ");
         return(ch);
             }
             else {