projects
/
super-star-trek.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Stas believes he's fixed the warp-out-of-supernova bug.
[super-star-trek.git]
/
io.c
diff --git
a/io.c
b/io.c
index b3e974e5124e1c202d1625e543431125d4db6c19..8698ab8ec9b68ab23e379a626deb566954f796de 100644
(file)
--- a/
io.c
+++ b/
io.c
@@
-121,7
+121,14
@@
void skip(int i)
{
while (i-- > 0) {
if (game.options & OPTION_CURSES) {
{
while (i-- > 0) {
if (game.options & OPTION_CURSES) {
- proutn("\n\r");
+ if (curwnd == message_window && linecount >= getmaxy(curwnd) - 3) {
+ pause_game(0);
+ clrscr();
+ } else {
+ proutn("\n");
+ if (curwnd == message_window)
+ linecount++;
+ }
} else {
linecount++;
if (linecount >= rows)
} else {
linecount++;
if (linecount >= rows)
@@
-167,7
+174,6
@@
void prouts(char *fmt, ...)
va_start(ap, fmt);
vsprintf(buf, fmt, ap);
va_end(ap);
va_start(ap, fmt);
vsprintf(buf, fmt, ap);
va_end(ap);
- skip(1);
for (s = buf; *s; s++) {
delay(30);
if (game.options & OPTION_CURSES) {
for (s = buf; *s; s++) {
delay(30);
if (game.options & OPTION_CURSES) {
@@
-219,6
+225,7
@@
void clrscr (void)
wmove(curwnd,0,0);
wrefresh(curwnd);
}
wmove(curwnd,0,0);
wrefresh(curwnd);
}
+ linecount = 0;
}
void textcolor (int color)
}
void textcolor (int color)
@@
-349,16
+356,18
@@
void warble(void)
/* sound and visual effects for teleportation */
{
if (game.options & OPTION_CURSES) {
/* sound and visual effects for teleportation */
{
if (game.options & OPTION_CURSES) {
- drawmaps(
1
);
+ drawmaps(
2
);
setwnd(message_window);
sound(50);
setwnd(message_window);
sound(50);
+ }
+ prouts(" . . . . . ");
+ if (game.options & OPTION_CURSES) {
delay(1000);
nosound();
delay(1000);
nosound();
- } else
- prouts(" . . . . . ");
+ }
}
}
-void tracktorpedo(int ix, int iy, int l, int i, int n)
+void tracktorpedo(int ix, int iy, int l, int i, int n
, int iquad
)
/* torpedo-track animation */
{
if (!game.options & OPTION_CURSES) {
/* torpedo-track animation */
{
if (!game.options & OPTION_CURSES) {
@@
-380,21
+389,21
@@
void tracktorpedo(int ix, int iy, int l, int i, int n)
drawmaps(2);
delay(400);
}
drawmaps(2);
delay(400);
}
- if ((
game.quad[ix][iy]==IHDOT)||(game.quad[ix][iy]
==IHBLANK)){
+ if ((
iquad==IHDOT)||(iquad
==IHBLANK)){
put_srscan_sym(ix, iy, '+');
sound(l*10);
delay(100);
nosound();
put_srscan_sym(ix, iy, '+');
sound(l*10);
delay(100);
nosound();
- put_srscan_sym(ix, iy,
game.quad[ix][iy]
);
+ put_srscan_sym(ix, iy,
iquad
);
}
else {
wattron(curwnd, A_REVERSE);
}
else {
wattron(curwnd, A_REVERSE);
- put_srscan_sym(ix, iy,
game.quad[ix][iy]
);
+ put_srscan_sym(ix, iy,
iquad
);
sound(500);
delay(1000);
nosound();
wattroff(curwnd, A_REVERSE);
sound(500);
delay(1000);
nosound();
wattroff(curwnd, A_REVERSE);
- put_srscan_sym(ix, iy,
game.quad[ix][iy]
);
+ put_srscan_sym(ix, iy,
iquad
);
}
} else {
proutn("%d - %d ", ix, iy);
}
} else {
proutn("%d - %d ", ix, iy);