]> git.pond.sub.org Git - empserver/blobdiff - src/lib/commands/anti.c
Update copyright notice.
[empserver] / src / lib / commands / anti.c
index bc62b9d50e1212be679f92a69996a428996beed3..37844c6318868fb8b1b050992f7d8008f163ad22 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2004, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                           Ken Stevens, Steve McClure
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -48,8 +48,6 @@
 #include "commands.h"
 #include "optlist.h"
 
-extern int etu_per_update;
-extern int sect_mob_neg_factor;
 /*
  * format: anti <SECT>
  */
@@ -59,7 +57,6 @@ anti(void)
     struct sctstr sect;
     int nsect;
     struct nstr_sect nstr;
-    int cond[I_MAX + 1];
     int mil, che, target;
     int avail_mil;
     int amil, ache;
@@ -79,10 +76,9 @@ anti(void)
            pr("  sect    subversion activity report\n");
            pr("  ----    --------------------------\n");
        }
-       getvec(VT_COND, cond, (char *)&sect, EF_SECTOR);
-       mil = getvar(V_MILIT, (char *)&sect, EF_SECTOR);
-       che = get_che_value(cond[C_CHE]);
-       target = get_che_cnum(cond[C_CHE]);
+       mil = sect.sct_item[I_MILIT];
+       che = sect.sct_che;
+       target = sect.sct_che_target;
        avail_mil = sect.sct_mobil / 2;
        if (mil <= avail_mil)
            avail_mil = mil;
@@ -116,11 +112,10 @@ anti(void)
            }
            if (mil - milkilled > 0) {
                sect.sct_mobil = sect.sct_mobil - chekilled - milkilled;
-               putvar(V_MILIT, mil - milkilled, (char *)&sect, EF_SECTOR);
+               sect.sct_item[I_MILIT] = mil - milkilled;
                if (ache == 0)
-                   cond[C_CHE] = 0;
-               set_che_value(cond[C_CHE], ache);
-               putvar(V_CHE, cond[C_CHE], (char *)&sect, EF_SECTOR);
+                   sect.sct_che_target = 0;
+               sect.sct_che = ache;
                putsect(&sect);
                pr("          Body count:  Military %d - Guerillas %d.\n",
                   milkilled, chekilled);
@@ -143,11 +138,12 @@ anti(void)
                    /* Ok, now leave anywhere from 16% to 25% of the che */
                    n_cheleft = (ache / (n_cheleft + 3));
                    ache -= n_cheleft;
-                   set_che_value(cond[C_CHE], n_cheleft);
-               } else
-                   cond[C_CHE] = 0;
-               putvar(V_MILIT, ache, (char *)&sect, EF_SECTOR);
-               putvar(V_CHE, cond[C_CHE], (char *)&sect, EF_SECTOR);
+                   sect.sct_che = n_cheleft;
+               } else {
+                   sect.sct_che = 0;
+                   sect.sct_che_target = 0;
+               }
+               sect.sct_item[I_MILIT] = ache;
                if (sect.sct_own == sect.sct_oldown)
                    sect.sct_oldown = 0;
                makelost(EF_SECTOR, sect.sct_own, 0, sect.sct_x,