Mercurial > hg > early-roguelike
changeset 170:0298a68cc179
Advanced Rogue family: fix messages from some scrolls.
When scrolls of magic mapping or gold detection were read, their
characteristic messages were displayed before overwriting the whole
screen to show the newly discovered information. They are now shown
after updating the screen, so they will be visible.
author | John "Elwin" Edwards |
---|---|
date | Thu, 02 Jul 2015 08:04:16 -0400 |
parents | 0d9ebab59a66 |
children | 80c060734f51 |
files | arogue5/scrolls.c arogue7/scrolls.c xrogue/scrolls.c |
diffstat | 3 files changed, 34 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/arogue5/scrolls.c Tue Jun 30 15:32:32 2015 -0400 +++ b/arogue5/scrolls.c Thu Jul 02 08:04:16 2015 -0400 @@ -317,8 +317,10 @@ * Scroll of magic mapping. */ if (is_scroll && s_know[S_MAP] != TRUE) { - msg("Oh, now this scroll has a map on it."); - s_know[S_MAP] = TRUE; + waddstr(msgw, morestr); + draw(msgw); + wait_for(msgw, ' '); + msg(""); } overwrite(stdscr, hw); /* @@ -361,6 +363,11 @@ * And set up for display */ overwrite(hw, cw); + draw(cw); + if (is_scroll && s_know[S_MAP] != TRUE) { + msg("Oh, now this scroll has a map on it."); + s_know[S_MAP] = TRUE; + } when S_GFIND: /* * Scroll of gold detection @@ -380,8 +387,13 @@ } if (gtotal) { if (is_scroll) s_know[S_GFIND] = TRUE; + waddstr(msgw, morestr); + draw(msgw); + wait_for(msgw, ' '); + msg(""); + overlay(hw,cw); + draw(cw); msg("You begin to feel greedy and you sense gold."); - overlay(hw,cw); break; } }
--- a/arogue7/scrolls.c Tue Jun 30 15:32:32 2015 -0400 +++ b/arogue7/scrolls.c Thu Jul 02 08:04:16 2015 -0400 @@ -291,10 +291,11 @@ /* * Scroll of magic mapping. */ - if (is_scroll && s_know[S_MAP] != TRUE) { - msg("Oh, now this scroll has a map on it."); - s_know[S_MAP] = TRUE; - } + waddstr(msgw, morestr); + clearok(msgw, FALSE); + draw(msgw); + wait_for(' '); + msg(""); overwrite(stdscr, hw); /* * Take all the things we want to keep hidden out of the window @@ -336,6 +337,11 @@ * And set up for display */ overwrite(hw, cw); + draw(cw); + if (is_scroll && s_know[S_MAP] != TRUE) { + msg("Oh, now this scroll has a map on it."); + s_know[S_MAP] = TRUE; + } when S_GFIND: /* * Scroll of gold detection @@ -367,14 +373,14 @@ } if (gtotal) { if (is_scroll) s_know[S_GFIND] = TRUE; - msg("You begin to feel greedy and you sense gold."); waddstr(msgw, morestr); clearok(msgw, FALSE); draw(msgw); + wait_for(' '); + msg(""); overlay(hw, cw); draw(cw); - wait_for(' '); - msg(""); + msg("You begin to feel greedy and you sense gold."); break; } }
--- a/xrogue/scrolls.c Tue Jun 30 15:32:32 2015 -0400 +++ b/xrogue/scrolls.c Thu Jul 02 08:04:16 2015 -0400 @@ -333,10 +333,7 @@ draw(cw); goto map_jump; /* skip over regular mapping routine */ } - if (is_scroll && s_know[S_MAP] != TRUE) { - msg("Oh, now this scroll has a map on it."); - s_know[S_MAP] = TRUE; - } + rmmsg(); overwrite(stdscr, hw); /* * Take all the things we want to keep hidden out of the window @@ -378,6 +375,11 @@ * And set up for display */ overwrite(hw, cw); + draw(cw); + if (is_scroll && s_know[S_MAP] != TRUE) { + msg("Oh, now this scroll has a map on it."); + s_know[S_MAP] = TRUE; + } map_jump: /* blessed map jump from above */ when S_GFIND: /*