De-FORTRANize the future array.
authorEric S. Raymond <esr@thyrsus.com>
Mon, 7 Feb 2005 18:35:02 +0000 (18:35 +0000)
committerEric S. Raymond <esr@thyrsus.com>
Mon, 7 Feb 2005 18:35:02 +0000 (18:35 +0000)
events.c
sst.h

index d65b188bea58aad088c3b37cfbcf0f174cdd21cc..4297e1d3c2f8194d10dc46d9a0f9197d32a3b287 100644 (file)
--- a/events.c
+++ b/events.c
@@ -18,7 +18,7 @@ void events(void)
        line = FSPY;
        if (alldone) return;
        datemin = fintim;
-       for (l = 1; l <= NEVENTS; l++)
+       for (l = 1; l < NEVENTS; l++)
            if (game.future[l] < datemin) {
                line = l;
                datemin = game.future[l];
diff --git a/sst.h b/sst.h
index d9ed121d3de13dbcce6d335adf5d453df933f12a..c9154adf43ea09aa879611bc2ba754cdd6800fa5 100644 (file)
--- a/sst.h
+++ b/sst.h
@@ -16,7 +16,6 @@
 
 #define PHASEFAC (2.0)
 #define PLNETMAX (10)
-#define NEVENTS (8)
 #define GALSIZE        (8)
 #define QUADSIZE (10)
 #define BASEMAX        (6)
@@ -116,6 +115,19 @@ typedef struct {
 #define DDSP    14  // Added deep space probe
 #define NDEVICES (15)  // Number of devices
 
+/* Define future events */
+#define FSPY   0       // Spy event happens always (no future[] entry)
+                                       // can cause SC to tractor beam Enterprise
+#define FSNOVA  1   // Supernova
+#define FTBEAM  2   // Commander tractor beams Enterprise
+#define FSNAP   3   // Snapshot for time warp
+#define FBATTAK 4   // Commander attacks base
+#define FCDBAS  5   // Commander destroys base
+#define FSCMOVE 6   // Supercommander moves (might attack base)
+#define FSCDBAS 7   // Supercommander destroys base
+#define FDSPROB 8   // Move deep space probe
+#define NEVENTS (9)
+
 // Scalar variables that are needed for freezing the game
 // are placed in a structure. #defines are used to access by their
 // original names. Gee, I could have done this with the d structure,
@@ -135,7 +147,7 @@ EXTERN struct {
     double kdist[(QUADSIZE+1)*(QUADSIZE+1)];           // enemy distances
     double kavgd[(QUADSIZE+1)*(QUADSIZE+1)];           // average distances
     double damage[NDEVICES];   // damage encountered
-    double future[NEVENTS+1];  // future events
+    double future[NEVENTS];    // future events
     char passwd[10];           // Self Destruct password
     int kx[(QUADSIZE+1)*(QUADSIZE+1)];                 // enemy sector locations
     int ky[(QUADSIZE+1)*(QUADSIZE+1)];
@@ -331,18 +343,6 @@ typedef enum {FWON, FDEPLETE, FLIFESUP, FNRG, FBATTLE,
                          FHOLE} FINTYPE ;
 enum loctype {neither, quadrant, sector};
 
-/* Define future events */
-#define FSPY   0       // Spy event happens always (no future[] entry)
-                                       // can cause SC to tractor beam Enterprise
-#define FSNOVA  1   // Supernova
-#define FTBEAM  2   // Commander tractor beams Enterprise
-#define FSNAP   3   // Snapshot for time warp
-#define FBATTAK 4   // Commander attacks base
-#define FCDBAS  5   // Commander destroys base
-#define FSCMOVE 6   // Supercommander moves (might attack base)
-#define FSCDBAS 7   // Supercommander destroys base
-#define FDSPROB 8   // Move deep space probe
-
 #ifdef INCLUDED
 char *device[NDEVICES] = {
        "S. R. Sensors",