]> git.cameronkatri.com Git - bsdgames-darwin.git/blobdiff - sail/dr_1.c
de-register
[bsdgames-darwin.git] / sail / dr_1.c
index 75605b37be383f459875efde200f3f5d6f18b8ce..782d8d55713d3e6c8eaad5ef23f7c2fea63b6bcd 100644 (file)
@@ -1,4 +1,4 @@
-/*     $NetBSD: dr_1.c,v 1.3 1995/04/22 10:36:46 cgd Exp $     */
+/*     $NetBSD: dr_1.c,v 1.18 2001/02/05 01:10:08 christos Exp $       */
 
 /*
  * Copyright (c) 1983, 1993
  * SUCH DAMAGE.
  */
 
+#include <sys/cdefs.h>
 #ifndef lint
 #if 0
 static char sccsid[] = "@(#)dr_1.c     8.1 (Berkeley) 5/31/93";
 #else
-static char rcsid[] = "$NetBSD: dr_1.c,v 1.3 1995/04/22 10:36:46 cgd Exp $";
+__RCSID("$NetBSD: dr_1.c,v 1.18 2001/02/05 01:10:08 christos Exp $");
 #endif
 #endif /* not lint */
 
+#include <ctype.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "extern.h"
 #include "driver.h"
 
-unfoul()
+static int     fightitout(struct ship *, struct ship *, int);
+
+void
+unfoul(void)
 {
-       register struct ship *sp;
+       struct ship *sp;
        struct ship *to;
-       register int nat;
-       register i;
+       int nat;
+       int i;
 
        foreachship(sp) {
                if (sp->file->captain[0])
@@ -56,19 +65,20 @@ unfoul()
                nat = capship(sp)->nationality;
                foreachship(to) {
                        if (nat != capship(to)->nationality &&
-                           !toughmelee(sp, to, 0, 0))
+                           !is_toughmelee(sp, to, 0, 0))
                                continue;
                        for (i = fouled2(sp, to); --i >= 0;)
-                               if (die() <= 2)
+                               if (dieroll() <= 2)
                                        cleanfoul(sp, to, 0);
                }
        }
 }
 
-boardcomp()
+void
+boardcomp(void)
 {
        int crew[3];
-       register struct ship *sp, *sq;
+       struct ship *sp, *sq;
 
        foreachship(sp) {
                if (*sp->file->captain)
@@ -129,9 +139,8 @@ boardcomp()
        }
 }
 
-fightitout(from, to, key)
-struct ship *from, *to;
-int key;
+static int
+fightitout(struct ship *from, struct ship *to, int key)
 {
        struct ship *fromcap, *tocap;
        int crewfrom[3], crewto[3], menfrom, mento;
@@ -162,18 +171,18 @@ int key;
        fromstrength = menfrom * fromcap->specs->qual;
        strengthto = mento * tocap->specs->qual;
        for (count = 0;
-            (fromstrength < strengthto * 3 && strengthto < fromstrength * 3
+            ((fromstrength < strengthto * 3 && strengthto < fromstrength * 3)
              || fromstrength == -1) && count < 4;
             count++) {
                index = fromstrength/10;
                if (index > 8)
                        index = 8;
-               toinjured = MT[index][2 - die() / 3];
+               toinjured = MT[index][2 - dieroll() / 3];
                totalto += toinjured;
                index = strengthto/10;
                if (index > 8)
                        index = 8;
-               frominjured = MT[index][2 - die() / 3];
+               frominjured = MT[index][2 - dieroll() / 3];
                totalfrom += frominjured;
                menfrom -= frominjured;
                mento -= toinjured;
@@ -182,21 +191,21 @@ int key;
        }
        if (fromstrength >= strengthto * 3 || count == 4) {
                unboard(to, from, 0);
-               subtract(from, totalfrom, crewfrom, fromcap, pcfrom);
-               subtract(to, totalto, crewto, tocap, pcto);
-               makesignal(from, "boarders from %s repelled", to);
-               (void) sprintf(message, "killed in melee: %d.  %s: %d",
+               subtract(from, fromcap, totalfrom, crewfrom, pcfrom);
+               subtract(to, tocap, totalto, crewto, pcto);
+               makemsg(from, "boarders from %s repelled", to->shipname);
+               sprintf(message, "killed in melee: %d.  %s: %d",
                        totalto, from->shipname, totalfrom);
-               Write(W_SIGNAL, to, 1, (int) message, 0, 0, 0);
+               Writestr(W_SIGNAL, to, message);
                if (key)
                        return 1;
        } else if (strengthto >= fromstrength * 3) {
                unboard(from, to, 0);
-               subtract(from, totalfrom, crewfrom, fromcap, pcfrom);
-               subtract(to, totalto, crewto, tocap, pcto);
+               subtract(from, fromcap, totalfrom, crewfrom, pcfrom);
+               subtract(to, tocap, totalto, crewto, pcto);
                if (key) {
                        if (fromcap != from)
-                               Write(W_POINTS, fromcap, 0,
+                               Write(W_POINTS, fromcap,
                                        fromcap->file->points -
                                                from->file->struck
                                                ? from->specs->pts
@@ -207,22 +216,21 @@ int key;
    I guess that what is going on here is that the pointer is multiplied
    or something. */
 
-                       Write(W_CAPTURED, from, 0, to->file->index, 0, 0, 0);
+                       Write(W_CAPTURED, from, to->file->index, 0, 0, 0);
                        topoints = 2 * from->specs->pts + to->file->points;
                        if (from->file->struck)
                                topoints -= from->specs->pts;
-                       Write(W_POINTS, to, 0, topoints, 0, 0, 0);
+                       Write(W_POINTS, to, topoints, 0, 0, 0);
                        mento = crewto[0] ? crewto[0] : crewto[1];
                        if (mento) {
-                               subtract(to, mento, crewto, tocap, pcto);
-                               subtract(from, - mento, crewfrom, to, 0);
+                               subtract(to, tocap, mento, crewto, pcto);
+                               subtract(from, to, - mento, crewfrom, 0);
                        }
-                       (void) sprintf(message, "captured by the %s!",
-                               to->shipname);
-                       Write(W_SIGNAL, from, 1, (int) message, 0, 0, 0);
-                       (void) sprintf(message, "killed in melee: %d.  %s: %d",
+                       sprintf(message, "captured by the %s!", to->shipname);
+                       Writestr(W_SIGNAL, from, message);
+                       sprintf(message, "killed in melee: %d.  %s: %d",
                                totalto, from->shipname, totalfrom);
-                       Write(W_SIGNAL, to, 1, (int) message, 0, 0, 0);
+                       Writestr(W_SIGNAL, to, message);
                        mento = 0;
                        return 0;
                }
@@ -230,17 +238,18 @@ int key;
        return 0;
 }
 
-resolve()
+void
+resolve(void)
 {
        int thwart;
-       register struct ship *sp, *sq;
+       struct ship *sp, *sq;
 
        foreachship(sp) {
                if (sp->file->dir == 0)
                        continue;
                for (sq = sp + 1; sq < ls; sq++)
                        if (sq->file->dir && meleeing(sp, sq) && meleeing(sq, sp))
-                               (void) fightitout(sp, sq, 0);
+                               fightitout(sp, sq, 0);
                thwart = 2;
                foreachship(sq) {
                        if (sq->file->dir && meleeing(sq, sp))
@@ -260,10 +269,11 @@ resolve()
        }
 }
 
-compcombat()
+void
+compcombat(void)
 {
-       register n;
-       register struct ship *sp;
+       int n;
+       struct ship *sp;
        struct ship *closest;
        int crew[3], men = 0, target, temp;
        int r, guns, ready, load, car;
@@ -352,11 +362,12 @@ compcombat()
                                hit++;
                        hit += QUAL[index][capship(sp)->specs->qual - 1];
                        for (n = 0; n < 3 && sp->file->captured == 0; n++)
-                               if (!crew[n])
+                               if (!crew[n]) {
                                        if (index <= 5)
                                                hit--;
                                        else
                                                hit -= 2;
+                               }
                        if (ready & R_INITIAL) {
                                if (!r)
                                        sp->file->readyL &= ~R_INITIAL;
@@ -367,11 +378,12 @@ compcombat()
                                else
                                        hit += 2;
                        }
-                       if (sp->file->captured != 0)
+                       if (sp->file->captured != 0) {
                                if (index <= 1)
                                        hit--;
                                else
                                        hit -= 2;
+                       }
                        hit += AMMO[index][load - 1];
                        temp = sp->specs->class;
                        if ((temp >= 5 || temp == 1) && windspeed == 5)
@@ -383,22 +395,24 @@ compcombat()
                        if (hit >= 0) {
                                if (load != L_GRAPE)
                                        hit = hit > 10 ? 10 : hit;
-                               table(shootat, load, hit, closest, sp, die());
+                               table(sp, closest, shootat, load, hit, dieroll());
                        }
                }
        }
 }
 
-next()
+int
+next(void)
 {
-       if (++turn % 55 == 0)
+       if (++turn % 55 == 0) {
                if (alive)
                        alive = 0;
                else
                        people = 0;
+       }
        if (people <= 0 || windspeed == 7) {
-               register struct ship *s;
-               struct ship *bestship;
+               struct ship *s;
+               struct ship *bestship = NULL;
                float net, best = 0.0;
                foreachship(s) {
                        if (*s->file->captain)
@@ -410,22 +424,26 @@ next()
                        }
                }
                if (best > 0.0) {
-                       char *p = getenv("WOTD");
-                       if (p == 0)
+                       char *tp = getenv("WOTD");
+                       const char *p;
+                       if (tp == 0)
                                p = "Driver";
-                       if (islower(*p))
-                               *p = toupper(*p);
-                       (void) strncpy(bestship->file->captain, p,
+                       else {
+                               if (islower(*tp))
+                                       *tp = toupper(*tp);
+                               p = tp;
+                       }
+                       strncpy(bestship->file->captain, p,
                                sizeof bestship->file->captain);
                        bestship->file->captain
                                [sizeof bestship->file->captain - 1] = 0;
-                       log(bestship);
+                       logger(bestship);
                }
                return -1;
        }
-       Write(W_TURN, SHIP(0), 0, turn, 0, 0, 0);
-       if (turn % 7 == 0 && (die() >= cc->windchange || !windspeed)) {
-               switch (die()) {
+       Write(W_TURN, SHIP(0), turn, 0, 0, 0);
+       if (turn % 7 == 0 && (dieroll() >= cc->windchange || !windspeed)) {
+               switch (dieroll()) {
                case 1:
                        winddir = 1;
                        break;
@@ -449,7 +467,7 @@ next()
                if (winddir < 1)
                        winddir += 8;
                if (windspeed)
-                       switch (die()) {
+                       switch (dieroll()) {
                        case 1:
                        case 2:
                                windspeed--;
@@ -461,7 +479,7 @@ next()
                        }
                else
                        windspeed++;
-               Write(W_WIND, SHIP(0), 0, winddir, windspeed, 0, 0);
+               Write(W_WIND, SHIP(0), winddir, windspeed, 0, 0);
        }
        return 0;
 }