Dilithium crystal indicator.
[super-star-trek.git] / battle.c
index 5389821ab5d3dd048a2867eeaaa83b9a265b1fea..9b35e4f0ad838da1523e79f5a4852a83350eeeef 100644 (file)
--- a/battle.c
+++ b/battle.c
@@ -1,5 +1,4 @@
 #include <unistd.h>
-#include "conio.h"
 #include "sst.h"
 
 void doshield(int i) {
@@ -175,7 +174,6 @@ void ram(int ibumpd, int ienm, int ix, int iy) {
 
 void torpedo(double course, double r, int inx, int iny, double *hit, int wait, int i, int n) {
         int l, iquad=0, ix=0, iy=0, jx=0, jy=0, shoved=0, ll;
-       int crx,cry;
        
        double ac=course + 0.25*r;
        double angle = (15.0-ac)*0.5235988;
@@ -187,10 +185,10 @@ void torpedo(double course, double r, int inx, int iny, double *hit, int wait, i
        if (fabs(deltay) > bigger) bigger = fabs(deltay);
        deltax /= bigger;
        deltay /= bigger;
-        crx=wherex();
-        cry=wherey();
-        if (game.damage[DSRSENS]==0 || condit==IHDOCKED) setwnd(LEFTUPPER_WINDOW);
-       else setwnd(LOWER_WINDOW);
+        if (game.damage[DSRSENS]==0 || condit==IHDOCKED) 
+           setwnd(srscan_window);
+       else 
+           setwnd(message_window);
        /* Loop to move a single torpedo */
        for (l=1; l <= 15; l++) {
                x += deltax;
@@ -204,8 +202,8 @@ void torpedo(double course, double r, int inx, int iny, double *hit, int wait, i
                wait = 1;
                if (iquad==IHDOT) continue;
                /* hit something */
-               setwnd(LOWER_WINDOW);
-               gotoxy(crx,cry);
+               setwnd(message_window);
+               prout("");      /* start new line after text track */
                switch(iquad) {
                        case IHE: /* Hit our ship */
                        case IHF:
@@ -322,7 +320,7 @@ void torpedo(double course, double r, int inx, int iny, double *hit, int wait, i
                                plnetx = plnety = 0;
                                game.quad[ix][iy] = IHDOT;
                                if (landed==1) {
-                                       /* captain parishes on planet */
+                                       /* captain perishes on planet */
                                        finish(FDPLANET);
                                }
                                return;
@@ -400,9 +398,8 @@ void torpedo(double course, double r, int inx, int iny, double *hit, int wait, i
                }
                break;
        }
-        if(curwnd!=LOWER_WINDOW) {
-           setwnd(LOWER_WINDOW);
-           gotoxy(crx,cry);
+        if(curwnd!=message_window) {
+           setwnd(message_window);
        }
        if (shoved) {
                game.quad[jx][jy]=iquad;