Next step towards structure merge.
[super-star-trek.git] / moving.c
index fae20ff504a56d0e1d7228881181174d3e755547..9eb70960c277f72971d3d356e0fec83af5253cf4 100644 (file)
--- a/moving.c
+++ b/moving.c
@@ -8,7 +8,7 @@ void move(void) {
        int trbeam = 0, n, l, ix, iy, kink, kinks, iquad;\r
 \r
        if (inorbit) {\r
-               prout("SULU- \"Leaving standard orbit.\"");\r
+               prout("Helmsman Sulu- \"Leaving standard orbit.\"");\r
                inorbit = 0;\r
        }\r
 \r
@@ -24,11 +24,11 @@ void move(void) {
        deltax /= bigger;\r
 \r
        /* If tractor beam is to occur, don't move full distance */\r
-       if (d.date+Time >= future[FTBEAM]) {\r
+       if (state.date+Time >= future[FTBEAM]) {\r
                trbeam = 1;\r
                condit = IHRED;\r
-               dist = dist*(future[FTBEAM]-d.date)/Time + 0.1;\r
-               Time = future[FTBEAM] - d.date + 1e-5;\r
+               dist = dist*(future[FTBEAM]-state.date)/Time + 0.1;\r
+               Time = future[FTBEAM] - state.date + 1e-5;\r
        }\r
        /* Move within the quadrant */\r
        quad[sectx][secty] = IHDOT;\r
@@ -50,7 +50,7 @@ void move(void) {
                                                                          (iy-ky[l])*(double)(iy-ky[l]));\r
                                                kavgd[l] = 0.5 * (finald+kdist[l]);\r
                                        }\r
-                                       if (d.galaxy[quadx][quady] != 1000) attack(0);\r
+                                       if (state.galaxy[quadx][quady] != 1000) attack(0);\r
                                        if (alldone) return;\r
                                }\r
                                /* compute final position -- new quadrant and sector */\r
@@ -112,7 +112,7 @@ void move(void) {
                                dist=0.1*sqrt((sectx-ix)*(double)(sectx-ix) +\r
                                                          (secty-iy)*(double)(secty-iy));\r
                                switch (iquad) {\r
-                                       case IHT: /* Ram a Tholean */\r
+                                       case IHT: /* Ram a Tholian */\r
                                        case IHK: /* Ram enemy ship */\r
                                        case IHC:\r
                                        case IHS:\r
@@ -179,7 +179,7 @@ label100:
                        kdist[l] = finald;\r
                }\r
                sortkl();\r
-               if (d.galaxy[quadx][quady] != 1000 && iattak == 0)\r
+               if (state.galaxy[quadx][quady] != 1000 && iattak == 0)\r
                        attack(0);\r
                for (l = 1 ; l <= nenhere; l++) kavgd[l] = kdist[l];\r
        }\r
@@ -443,7 +443,7 @@ void impuls(void) {
        }\r
        /* Make sure enough time is left for the trip */\r
        Time = dist/0.095;\r
-       if (Time >= d.remtime) {\r
+       if (Time >= state.remtime) {\r
                prout("First Officer Spock- \"Captain, our speed under impulse");\r
                prout("power is only 0.95 sectors per stardate. Are you sure");\r
                prout("we dare spend the time?\"");\r
@@ -515,13 +515,13 @@ void warp(int i) {
                                                \r
                /* Make sure enough time is left for the trip */\r
                Time = 10.0*dist/wfacsq;\r
-               if (Time >= 0.8*d.remtime) {\r
+               if (Time >= 0.8*state.remtime) {\r
                        skip(1);\r
                        prout("First Officer Spock- \"Captain, I compute that such");\r
                        proutn("  a trip would require approximately ");\r
-                       cramf(100.0*Time/d.remtime, 0, 2);\r
+                       cramf(100.0*Time/state.remtime, 0, 2);\r
                        prout(" percent of our");\r
-                       prout("  remaining time.  Are you sure this is wise?\"");\r
+                       prout(" remaining time.  Are you sure this is wise?\"");\r
                        if (ja() == 0) { ididit = 0; return;}\r
                }\r
        }\r
@@ -703,7 +703,7 @@ void atover(int igrab) {
                crmshp();\r
                skip(1);\r
                prout("safely out of quadrant.");\r
-               starch[quadx][quady] = damage[DRADIO] > 0.0 ? d.galaxy[quadx][quady]+1000:1;\r
+               starch[quadx][quady] = damage[DRADIO] > 0.0 ? state.galaxy[quadx][quady]+1000:1;\r
 \r
                /* Try to use warp engines */\r
                if (damage[DWARPEN]) {\r
@@ -735,28 +735,28 @@ void atover(int igrab) {
                        return;\r
                }\r
                /* Repeat if another snova */\r
-       } while (d.galaxy[quadx][quady] == 1000);\r
-       if (d.remkl==0) finish(FWON); /* Snova killed remaining enemy. */\r
+       } while (state.galaxy[quadx][quady] == 1000);\r
+       if (state.remkl==0) finish(FWON); /* Snova killed remaining enemy. */\r
 }\r
 \r
 void timwrp() {\r
        int l, ll, gotit;\r
        prout("***TIME WARP ENTERED.");\r
-       if (d.snap && Rand() < 0.5) {\r
+       if (state.snap && Rand() < 0.5) {\r
                /* Go back in time */\r
                proutn("You are traveling backwards in time ");\r
-               cramf(d.date-snapsht.date, 0, 2);\r
+               cramf(state.date-snapsht.date, 0, 2);\r
                prout(" stardates.");\r
-               d = snapsht;\r
-               d.snap = 0;\r
-               if (d.remcom) {\r
-                       future[FTBEAM] = d.date + expran(intime/d.remcom);\r
-                       future[FBATTAK] = d.date + expran(0.3*intime);\r
-               }\r
-               future[FSNOVA] = d.date + expran(0.5*intime);\r
-               future[FSNAP] = d.date +expran(0.25*d.remtime); /* next snapshot will\r
+               state = snapsht;\r
+               state.snap = 0;\r
+               if (state.remcom) {\r
+                       future[FTBEAM] = state.date + expran(intime/state.remcom);\r
+                       future[FBATTAK] = state.date + expran(0.3*intime);\r
+               }\r
+               future[FSNOVA] = state.date + expran(0.5*intime);\r
+               future[FSNAP] = state.date +expran(0.25*state.remtime); /* next snapshot will\r
                                                                                                           be sooner */\r
-               if (d.nscrem) future[FSCMOVE] = 0.2777;\r
+               if (state.nscrem) future[FSCMOVE] = 0.2777;\r
                isatb = 0;\r
                future[FCDBAS] = future[FSCDBAS] = 1e30;\r
                batx = baty = 0;\r
@@ -765,7 +765,7 @@ void timwrp() {
                   when on planet, which would give us two Galileos! */\r
                gotit = 0;\r
                for (l = 1; l <= inplan; l++) {\r
-                       if (d.plnets[l].known == 2) {\r
+                       if (state.plnets[l].known == 2) {\r
                                gotit = 1;\r
                                if (iscraft==1 && ship==IHE) {\r
                                        prout("Checkov-  \"Security reports the Galileo has disappeared, Sir!");\r
@@ -781,13 +781,13 @@ void timwrp() {
                }\r
 \r
                /* Revert star chart to earlier era, if it was known then*/\r
-               if (damage[DRADIO]==0.0 || stdamtim > d.date) {\r
+               if (damage[DRADIO]==0.0 || stdamtim > state.date) {\r
                        for (l = 1; l <= 8; l++)\r
                                for (ll = 1; ll <= 8; ll++)\r
                                        if (starch[l][ll] > 1)\r
-                                               starch[l][ll]=damage[DRADIO]>0.0 ? d.galaxy[l][ll]+1000 :1;\r
+                                               starch[l][ll]=damage[DRADIO]>0.0 ? state.galaxy[l][ll]+1000 :1;\r
                        prout("Spock has reconstructed a correct star chart from memory");\r
-                       if (damage[DRADIO] > 0.0) stdamtim = d.date;\r
+                       if (damage[DRADIO] > 0.0) stdamtim = state.date;\r
                }\r
        }\r
        else {\r
@@ -827,7 +827,7 @@ void probe(void) {
                skip(1);\r
                if (damage[DRADIO] != 0 && condit != IHDOCKED) {\r
                        prout("Spock-  \"Records show the previous probe has not yet");\r
-                       prout("   reached it's destination.\"");\r
+                       prout("   reached its destination.\"");\r
                }\r
                else\r
                        prout("Uhura- \"The previous probe is still reporting data, Sir.\"");\r
@@ -870,7 +870,7 @@ void probe(void) {
        probey = quady*10 + secty - 1;\r
        probecx = quadx;\r
        probecy = quady;\r
-       future[FDSPROB] = d.date + 0.01; // Time to move one sector\r
+       future[FDSPROB] = state.date + 0.01; // Time to move one sector\r
        prout("Ensign Chekov-  \"The deep space probe is launched, Captain.\"");\r
        return;\r
 }\r
@@ -890,7 +890,7 @@ void help(void) {
                prout("Subspace radio damaged.");\r
                return;\r
        }\r
-       if (d.rembase==0) {\r
+       if (state.rembase==0) {\r
                prout("Lt. Uhura-  \"Captain, I'm not getting any response from Starbase.\"");\r
                return;\r
        }\r
@@ -908,16 +908,16 @@ void help(void) {
        }\r
        else {\r
                ddist = 1e30;\r
-               for (l = 1; l <= d.rembase; l++) {\r
-                       xdist=10.0*sqrt(square(d.baseqx[l]-quadx)+square(d.baseqy[l]-quady));\r
+               for (l = 1; l <= state.rembase; l++) {\r
+                       xdist=10.0*sqrt(square(state.baseqx[l]-quadx)+square(state.baseqy[l]-quady));\r
                        if (xdist < ddist) {\r
                                ddist = xdist;\r
                                line = l;\r
                        }\r
                }\r
                /* Since starbase not in quadrant, set up new quadrant */\r
-               quadx = d.baseqx[line];\r
-               quady = d.baseqy[line];\r
+               quadx = state.baseqx[line];\r
+               quady = state.baseqy[line];\r
                newqad(1);\r
        }\r
        /* dematerialize starship */\r