#include "sstlinux.h"
static int linecount; /* for paging */
-static int curses = TRUE;
WINDOW *curwnd;
static void outro(void)
/* wrap up, either normally or due to signal */
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
clear();
curs_set(1);
(void)refresh();
}
}
-void iostart(int usecurses)
+void iostart(void)
{
- if ((curses = usecurses)) {
+ if (game.options & OPTION_CURSES) {
if (atexit(outro)){
fprintf(stderr,"Unable to register outro(), exiting...\n");
void waitfor(void)
/* wait for user action -- OK to do nothing if on a TTY */
{
- if (curses)
+ if (game.options & OPTION_CURSES)
getch();
}
prompt = "[PRESS ENTER TO CONTINUE]";
}
- if (curses) {
+ if (game.options & OPTION_CURSES) {
drawmaps(0);
setwnd(prompt_window);
wclear(prompt_window);
void skip(int i)
{
while (i-- > 0) {
- if (curses) {
+ if (game.options & OPTION_CURSES) {
proutn("\n\r");
} else {
linecount++;
static void vproutn(char *fmt, va_list ap)
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
vwprintw(curwnd, fmt, ap);
wrefresh(curwnd);
}
skip(1);
for (s = buf; *s; s++) {
delay(500);
- if (curses) {
+ if (game.options & OPTION_CURSES) {
waddch(curwnd, *s);
wrefresh(curwnd);
}
void cgetline(char *line, int max)
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
wgetnstr(curwnd, line, max);
strcat(line, "\n");
wrefresh(curwnd);
void setwnd(WINDOW *wnd)
/* change windows -- OK for this to be a no-op in tty mode */
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
curwnd=wnd;
curs_set(wnd == fullscreen_window || wnd == message_window || wnd == prompt_window);
}
void clreol (void)
/* clear to end of line -- can be a no-op in tty mode */
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
wclrtoeol(curwnd);
wrefresh(curwnd);
}
void clrscr (void)
/* clear screen -- can be a no-op in tty mode */
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
wclear(curwnd);
wmove(curwnd,0,0);
wrefresh(curwnd);
void textcolor (int color)
{
#ifdef A_COLOR
- if (curses) {
+ if (game.options & OPTION_CURSES) {
switch(color) {
case DEFAULT:
wattrset(curwnd, 0);
void highvideo (void)
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
wattron(curwnd, A_REVERSE);
}
}
void drawmaps(short l)
/* hook to be called after moving to redraw maps */
{
- if (curses) {
- if (l == 1)
- sensor();
+ if (game.options & OPTION_CURSES) {
+ if (l == 1)
+ sensor(FALSE);
if (l != 2) {
setwnd(srscan_window);
wmove(curwnd, 0, 0);
void boom(int ii, int jj)
/* enemy fall down, go boom */
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
setwnd(srscan_window);
drawmaps(2);
wmove(srscan_window, ii*2+3, jj+2);
void warble(void)
/* sound and visual effects for teleportation */
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
drawmaps(1);
setwnd(message_window);
sound(50);
void tracktorpedo(int x, int y, int ix, int iy, int wait, int l, int i, int n, int iquad)
/* torpedo-track animation */
{
- if (!curses) {
+ if (!game.options & OPTION_CURSES) {
if (l == 1) {
if (n != 1) {
skip(1);
void makechart(void)
{
- if (curses) {
+ if (game.options & OPTION_CURSES) {
setwnd(message_window);
wclear(message_window);
chart(0);
void setpassword(void)
{
- if (!curses) {
+ if (!(game.options & OPTION_CURSES)) {
while (TRUE) {
scan();
strcpy(game.passwd, citem);