changeset 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 9b5f1e6aa35a
children 82b2a046d151
files arogue5/command.c arogue5/move.c arogue7/command.c arogue7/move.c xrogue/command.c xrogue/move.c xrogue/scrolls.c
diffstat 7 files changed, 10 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/arogue5/command.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/arogue5/command.c	Mon Jun 29 20:37:32 2015 -0400
@@ -817,8 +817,8 @@
     if (level > 0) new_level(NORMLEV);
     else {
 	level = -1;	/* Indicate that we are new to the outside */
+	new_level(OUTSIDE); 	/* Leaving the dungeon */
 	msg("You emerge into the %s", daytime ? "light" : "night");
-	new_level(OUTSIDE); 	/* Leaving the dungeon */
     }
 
     if (no_phase) unphase();
--- a/arogue5/move.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/arogue5/move.c	Mon Jun 29 20:37:32 2015 -0400
@@ -84,9 +84,9 @@
 	    if (is_player) {
 		level++;
 		pstats.s_hpt -= roll(1, 10);
-		msg("You fell into a trap!");
 		if (pstats.s_hpt <= 0) death(D_FALL);
 		new_level(NORMLEV);
+		msg("You fell into a trap!");
 	    }
 	    else {
 		if (can_see) msg("The %s fell into a trap!", mname);
--- a/arogue7/command.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/arogue7/command.c	Mon Jun 29 20:37:32 2015 -0400
@@ -1005,8 +1005,8 @@
     if (level > 0) new_level(NORMLEV);
     else {
 	level = -1;	/* Indicate that we are new to the outside */
+	new_level(OUTSIDE); 	/* Leaving the dungeon */
 	msg("You emerge into the %s", daytime ? "light" : "night");
-	new_level(OUTSIDE); 	/* Leaving the dungeon */
     }
 
     if (no_phase) unphase();
--- a/arogue7/move.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/arogue7/move.c	Mon Jun 29 20:37:32 2015 -0400
@@ -88,9 +88,9 @@
 	    if (is_player) {
 		level++;
 		pstats.s_hpt -= roll(1, 10);
-		msg("You fell into a trap!");
 		if (pstats.s_hpt <= 0) death(D_FALL);
 		new_level(NORMLEV);
+		msg("You fell into a trap!");
 	    }
 	    else {
 		if (can_see) msg("%s fell into a trap!", prname(mname, TRUE));
--- a/xrogue/command.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/xrogue/command.c	Mon Jun 29 20:37:32 2015 -0400
@@ -975,10 +975,10 @@
             prev_max = 1000;
         level--;
         if (level <= 0) level = 1;
-            msg("You find yourself in strange surroundings... ");
         if (wizard) addmsg("Going up through a worm hole. ");
             take_with();
             new_level(OUTSIDE);
+            msg("You find yourself in strange surroundings... ");
             return;
    }
 
@@ -1030,19 +1030,19 @@
         prev_max = 1000;    /* flag used in n_level.c */
     level--;
         if (level <= 0) level = 1;
-        msg("You emerge into the %s. ", daytime ? "eerie light" : "dark night");
     if (wizard) msg("Going up: cur_max=%d level=%d. ", cur_max, level);
         take_with();
         new_level(OUTSIDE);     /* Leaving the dungeon for outside */
+        msg("You emerge into the %s. ", daytime ? "eerie light" : "dark night");
     return;
  }
     else {
         prev_max = 1;   /* flag used in n_level.c */
         level = -1;     /* Indicate that we are new to the outside */
-        msg("You emerge into the %s. ", daytime ? "eerie light" : "dark night");
     if (wizard) msg("Going up: cur_max=%d level=%d. ", cur_max, level);
         take_with();
         new_level(OUTSIDE); 
+        msg("You emerge into the %s. ", daytime ? "eerie light" : "dark night");
     return;
     }
 
--- 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 {
--- a/xrogue/scrolls.c	Fri Jun 26 11:42:02 2015 -0400
+++ b/xrogue/scrolls.c	Mon Jun 29 20:37:32 2015 -0400
@@ -432,8 +432,8 @@
 
                 level = rnd(201)+80;   /* cursed teleport range */
 
+                new_level(NORMLEV);
                 msg("You are banished to the lower regions! ");
-                new_level(NORMLEV);
 
                 status(TRUE);
                 mpos = 0;