#ifdef SERGEEV
crx=wherex();
cry=wherey();
- if (game.damage[DSRSENS]==0 || condit==IHDOCKED) setwnd(1);
- else setwnd(4);
+ if (game.damage[DSRSENS]==0 || condit==IHDOCKED) setwnd(LEFTUPPER_WINDOW);
+ else setwnd(LOWER_WINDOW);
#endif /* SERGEEV */
/* Loop to move a single torpedo */
for (l=1; l <= 15; l++) {
#ifndef SERGEEV
skip(1);
#else
- setwnd(4);
+ setwnd(LOWER_WINDOW);
gotoxy(crx,cry);
#endif
switch(iquad) {
break;
}
#ifdef SERGEEV
- if(curwnd!=4) {
- setwnd(4);
+ if(curwnd!=LOWER_WINDOW) {
+ setwnd(LOWER_WINDOW);
gotoxy(crx,cry);
}
#endif /* SERGEEV */
if (game.damage[DSRSENS]==0){
crx=wherex();
cry=wherey();
- setwnd(1);
+ setwnd(LEFTUPPER_WINDOW);
drawmaps(2);
gotoxy(jj*2+3,ii+2);
highvideo();
nosound();
lowvideo();
proutn("%c", game.quad[ii][jj]);
- setwnd(4);
+ setwnd(LOWER_WINDOW);
gotoxy(crx,cry);
_setcursortype(_NORMALCURSOR);
delay(500);
static int curses = TRUE;
#endif /* SERGEEV */
+#ifdef SERGEEV
+wnd wnds[6]={{1,1,80,25}, /* FULLSCREEN_WINDOW */
+ {1,1,25,12}, /* LEFTUPPER_WINDOW */
+ {26,2,80,12}, /* SRSCAN_WINDOW */
+ {65,1,80,10}, /* LRSCAN_WINDOW */
+ {1,13,80,23}, /* LOWER_WINDOW */
+ {1,24,80,25}, /* BOTTOM_WINDOW */
+};
+short curwnd;
+#endif /* SERGEEV */
+
static void outro(int sig) {
/* wrap up, either normally or due to signal */
if (curses) {
char buf[BUFSIZ];
#else /* SERGEEV */
drawmaps(0);
- setwnd(5);
+ setwnd(BOTTOM_WINDOW);
#endif /* SERGEEV */
if (i==1) {
if (skill > 2)
proutn(prompt);
getche();
clrscr();
- setwnd(4);
+ setwnd(LOWER_WINDOW);
clrscr();
#endif /* SERGEEV */
}
char *s, *p;
vasprintf(&s, fmt, ap);
p=s;
- if ((curwnd==4)&&(wherey()==wnds[curwnd].wndbottom-wnds[curwnd].wndtop)){
+ if ((curwnd==LOWER_WINDOW)&&(wherey()==wnds[curwnd].wndbottom-wnds[curwnd].wndtop)){
if (strchr(s,'\n')) {
p=strchr(s,'\n');
p[0]=0;
#endif /* SERGEEV */
}
#ifdef SERGEEV
- if ((curwnd==4)&&(wherey()>wnds[curwnd].wndbottom-wnds[curwnd].wndtop+1))
+ if ((curwnd==LOWER_WINDOW)&&(wherey()>wnds[curwnd].wndbottom-wnds[curwnd].wndtop+1))
cprintf("\r");
// setwnd(curwnd);
if (strchr(s,'\n') || strchr(s,'\r')) clreol();
posx=wherex();
posy=wherey();
drawmaps(1);
- setwnd(4);
+ setwnd(LOWER_WINDOW);
gotoxy(posx,posy);
sound(50);
delay(1000);
#ifdef SERGEEV
int cury;
cury=wherey()+wnds[curwnd].wndtop-wnds[wndnum].wndtop;
- if ((curwnd==0)&&(wndnum!=0)) clrscr();
+ if ((curwnd==FULLSCREEN_WINDOW)&&(wndnum!=FULLSCREEN_WINDOW)) clrscr();
window(wnds[wndnum].wndleft, wnds[wndnum].wndtop, wnds[wndnum].wndright, wnds[wndnum].wndbottom);
if ((curwnd==wndnum)&&(cury>wnds[wndnum].wndbottom-wnds[wndnum].wndtop+1)){
gotoxy(wnds[wndnum].wndright-wnds[wndnum].wndleft+1,wnds[wndnum].wndbottom-wnds[wndnum].wndtop+1);
{"HELP", HELP},
};
-#ifdef SERGEEV
-wnd wnds[6]={{1,1,80,25},{1,1,25,12},{26,2,80,12},{65,1,80,10},{1,13,80,23},{1,24,80,25}};
-short curwnd;
-#endif /* SERGEEV */
-
#define NUMCOMMANDS sizeof(commands)/sizeof(commands[0])
static void listCommands(int x) {
while (TRUE) {
if (key == IHEOL) {
#ifdef SERGEEV
- setwnd(5);
+ setwnd(BOTTOM_WINDOW);
#endif /* SERGEEV */
proutn("Help on what command? ");
key = scan();
}
#ifdef SERGEEV
- setwnd(4);
+ setwnd(LOWER_WINDOW);
#endif /* SERGEEV */
if (key == IHEOL) return;
for (i = 0; i < NUMCOMMANDS; i++) {
#ifdef SERGEEV
_setcursortype(_NOCURSOR);
if (l==1) sensor();
- if (l!=2) setwnd(1);
+ if (l!=2) setwnd(LEFTUPPER_WINDOW);
gotoxy(1,1);
strcpy(line,"s");
srscan(1);
if (l!=2){
- setwnd(2);
+ setwnd(SRSCAN_WINDOW);
clrscr();
srscan(2);
- setwnd(3);
+ setwnd(LRSCAN_WINDOW);
clrscr();
strcpy(line,"l");
lrscan();
int i, hitme;
#ifdef SERGEEV
clrscr();
- setwnd(4);
+ setwnd(LOWER_WINDOW);
#endif /* SERGEEV */
while (TRUE) { /* command loop */
drawmaps(1);
i = -1;
chew();
#ifdef SERGEEV
- setwnd(5);
+ setwnd(BOTTOM_WINDOW);
clrscr();
#endif /* SERGEEV */
proutn("COMMAND> ");
if (scan() == IHEOL) {
#ifdef SERGEEV
_setcursortype(_NOCURSOR);
- setwnd(4);
+ setwnd(LOWER_WINDOW);
clrscr();
chart(0);
_setcursortype(_NORMALCURSOR);
#ifdef SERGEEV
ididit=0;
clrscr();
- setwnd(4);
+ setwnd(LOWER_WINDOW);
clrscr();
#endif /* SERGEEV */
for (i=0; i < ABANDON; i++)
randomize();
textattr(7);
clrscr();
- setwnd(0);
+ setwnd(FULLSCREEN_WINDOW);
#endif /* SERGEEV */
line[0] = '\0';
for (i = optind; i < argc; i++) {
proutn("Do you want to play again? ");
if (!ja()) break;
#ifdef SERGEEV
- setwnd(0);
+ setwnd(FULLSCREEN_WINDOW);
clrscr();
#endif /* SERGEEV */
}
getline(line, sizeof(line));
#ifdef SERGEEV
fflush(stdin);
- if (curwnd==5){
+ if (curwnd==BOTTOM_WINDOW){
clrscr();
- setwnd(4);
+ setwnd(LOWER_WINDOW);
clrscr();
}
#endif /* SERGEEV */
int wndleft,wndtop,wndright,wndbottom;
} wnd;
extern wnd wnds[6];
+/* these need to track io.c:wnd */
+#define FULLSCREEN_WINDOW 0
+#define LEFTUPPER_WINDOW 1
+#define SRSCAN_WINDOW 2
+#define LRSCAN_WINDOW 3
+#define LOWER_WINDOW 4
+#define BOTTOM_WINDOW 5