X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=ai.c;h=1367f43747ead849898d1ed5450e4c80ff7498fe;hb=1c22a200da79b10c888c63f412906d60a05b68e2;hp=ad550a14cdecba56c208324c855cc03c2d5b88ad;hpb=49483a1747cd310e33eea758b32a453fb46d4aac;p=super-star-trek.git diff --git a/ai.c b/ai.c index ad550a1..1367f43 100644 --- a/ai.c +++ b/ai.c @@ -3,9 +3,9 @@ static int tryexit(int lookx, int looky, int ienm, int loccom, int irun) { int iqx, iqy, l; - iqx = quadx+(lookx+9)/10 - 1; - iqy = quady+(looky+9)/10 - 1; - if (iqx < 1 || iqx > 8 || iqy < 1 || iqy > 8 || + iqx = quadx+(lookx+(QUADSIZE-1))/QUADSIZE - 1; + iqy = quady+(looky+(QUADSIZE-1))/QUADSIZE - 1; + if (iqx < 1 || iqx > GALSIZE || iqy < 1 || iqy > GALSIZE || game.state.galaxy[iqx][iqy] > 899) return 0; /* no can do -- neg energy, supernovae, or >8 Klingons */ if (ienm == IHR) return 0; /* Romulans cannot escape! */ @@ -84,7 +84,7 @@ static void movebaddy(int comx, int comy, int loccom, int ienm) { if (ienm==IHS && (game.kpower[loccom] <= 500.0 || (condit==IHDOCKED && game.damage[DPHOTON]==0))) { irun = 1; - motion = -10; + motion = -QUADSIZE; } else { /* decide whether to advance, retreat, or hold position */ @@ -165,7 +165,7 @@ static void movebaddy(int comx, int comy, int loccom, int ienm) { /* calcuate preferred number of steps */ nsteps = motion < 0 ? -motion : motion; if (motion > 0 && nsteps > mdist) nsteps = mdist; /* don't overshoot */ - if (nsteps > 10) nsteps = 10; /* This shouldn't be necessary */ + if (nsteps > QUADSIZE) nsteps = QUADSIZE; /* This shouldn't be necessary */ if (nsteps < 1) nsteps = 1; /* This shouldn't be necessary */ #ifdef DEBUG if (idebug) { @@ -196,14 +196,14 @@ static void movebaddy(int comx, int comy, int loccom, int ienm) { success = 0; attempts = 0; /* Settle mysterious hang problem */ while (attempts++ < 20 && !success) { - if (lookx < 1 || lookx > 10) { + if (lookx < 1 || lookx > QUADSIZE) { if (motion < 0 && tryexit(lookx, looky, ienm, loccom, irun)) return; if (krawlx == mx || my == 0) break; lookx = nextx + krawlx; krawlx = -krawlx; } - else if (looky < 1 || looky > 10) { + else if (looky < 1 || looky > QUADSIZE) { if (motion < 0 && tryexit(lookx, looky, ienm, loccom, irun)) return; if (krawly == my || mx == 0) break; @@ -302,7 +302,7 @@ static int movescom(int iqx, int iqy, int flag, int *ipage) { int i; if ((iqx==quadx && iqy==quady) || - iqx < 1 || iqx > 8 || iqy < 1 || iqy > 8 || + iqx < 1 || iqx > GALSIZE || iqy < 1 || iqy > GALSIZE || game.state.galaxy[iqx][iqy] > 899) return 1; if (flag) { /* Avoid quadrants with bases if we want to avoid Enterprise */ @@ -364,8 +364,8 @@ static int movescom(int iqx, int iqy, int flag, int *ipage) { void scom(int *ipage) { int i, i2, j, ideltax, ideltay, ibqx, ibqy, sx, sy, ifindit, iwhichb; int iqx, iqy; - int basetbl[6]; - double bdist[6]; + int basetbl[BASEMAX]; + double bdist[BASEMAX]; int flag; #ifdef DEBUG if (idebug) prout("SCOM"); @@ -546,15 +546,15 @@ void movetho(void) { if (ithere==0 || justin == 1) return; if (ithx == 1 && ithy == 1) { - idx = 1; idy = 10; + idx = 1; idy = QUADSIZE; } - else if (ithx == 1 && ithy == 10) { - idx = 10; idy = 10; + else if (ithx == 1 && ithy == QUADSIZE) { + idx = QUADSIZE; idy = QUADSIZE; } - else if (ithx == 10 && ithy == 10) { - idx = 10; idy = 1; + else if (ithx == QUADSIZE && ithy == QUADSIZE) { + idx = QUADSIZE; idy = 1; } - else if (ithx == 10 && ithy == 1) { + else if (ithx == QUADSIZE && ithy == 1) { idx = 1; idy = 1; } else { @@ -590,9 +590,9 @@ void movetho(void) { /* check to see if all holes plugged */ for (i = 1; i < 11; i++) { if (game.quad[1][i]!=IHWEB && game.quad[1][i]!=IHT) return; - if (game.quad[10][i]!=IHWEB && game.quad[10][i]!=IHT) return; + if (game.quad[QUADSIZE][i]!=IHWEB && game.quad[QUADSIZE][i]!=IHT) return; if (game.quad[i][1]!=IHWEB && game.quad[i][1]!=IHT) return; - if (game.quad[i][10]!=IHWEB && game.quad[i][10]!=IHT) return; + if (game.quad[i][QUADSIZE]!=IHWEB && game.quad[i][QUADSIZE]!=IHT) return; } /* All plugged up -- Tholian splits */ game.quad[ithx][ithy]=IHWEB;