/* wait for user action -- OK to do nothing if on a TTY */
{
if (game.options & OPTION_CURSES)
- getch();
+ wgetch(prompt_window);
}
-void pause_game(bool announcement)
+void announce(void)
{
- char *prompt;
- char buf[BUFSIZ];
- if (announcement) {
- if (game.skill > SKILL_FAIR)
- prompt = _("[ANOUNCEMENT ARRIVING...]");
- else
- prompt = _("[IMPORTANT ANNOUNCEMENT ARRIVING -- PRESS ENTER TO CONTINUE]");
- }
- else {
- if (game.skill > SKILL_FAIR)
+ skip(1);
+ prouts(_("[ANOUNCEMENT ARRIVING...]"));
+ skip(1);
+}
+
+static void pause_game(void)
+{
+ char *prompt;
+ char buf[BUFSIZ];
+ if (game.skill > SKILL_FAIR)
prompt = _("[CONTINUE?]");
else
prompt = _("[PRESS ENTER TO CONTINUE]");
- }
- if (game.options & OPTION_CURSES) {
- drawmaps(0);
- setwnd(prompt_window);
- wclear(prompt_window);
- waddstr(prompt_window, prompt);
- wgetnstr(prompt_window, buf, sizeof(buf));
- wclear(prompt_window);
- wrefresh(prompt_window);
- setwnd(message_window);
- } else {
- putchar('\n');
- proutn(prompt);
- fgets(buf, sizeof(buf), stdin);
- if (announcement) {
+ if (game.options & OPTION_CURSES) {
+ drawmaps(0);
+ setwnd(prompt_window);
+ wclear(prompt_window);
+ waddstr(prompt_window, prompt);
+ wgetnstr(prompt_window, buf, sizeof(buf));
+ wclear(prompt_window);
+ wrefresh(prompt_window);
+ setwnd(message_window);
+ } else {
int j;
+ putchar('\n');
+ proutn(prompt);
+ fgets(buf, sizeof(buf), stdin);
for (j = 0; j < rows; j++)
putchar('\n');
+ linecount = 0;
}
- linecount = 0;
- }
}
while (i-- > 0) {
if (game.options & OPTION_CURSES) {
if (curwnd == message_window && getcury(curwnd) >= getmaxy(curwnd) - 3) {
- pause_game(false);
+ pause_game();
clrscr();
} else {
proutn("\n");
} else {
linecount++;
if (linecount >= rows)
- pause_game(false);
+ pause_game();
else
putchar('\n');
}