Mercurial > hg > early-roguelike
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 {