for (l = 1; l <= n; l++) {
ix = (x += deltax) + 0.5;
iy = (y += deltay) + 0.5;
- if (ix < 1 || ix > QUADSIZE || iy < 1 || iy > QUADSIZE) {
+ if (!VALID_SECTOR(ix, iy)) {
/* Leaving quadrant -- allow final enemy attack */
/* Don't do it if being pushed by Nova */
if (nenhere != 0 && iattak != 2) {
newcnd();
- for (l = 1; l <= nenhere; l++) {
+ for_local_enemies(l) {
finald = sqrt((ix-game.kx[l])*(double)(ix-game.kx[l]) +
(iy-game.ky[l])*(double)(iy-game.ky[l]));
game.kavgd[l] = 0.5 * (finald+game.kdist[l]);
/* No quadrant change -- compute new avg enemy distances */
game.quad[sectx][secty] = ship;
if (nenhere) {
- for (l = 1; l <= nenhere; l++) {
+ for_local_enemies(l) {
finald = sqrt((ix-game.kx[l])*(double)(ix-game.kx[l]) +
(iy-game.ky[l])*(double)(iy-game.ky[l]));
game.kavgd[l] = 0.5 * (finald+game.kdist[l]);
sortkl();
if (!game.state.galaxy[quadx][quady].supernova && iattak == 0)
attack(0);
- for (l = 1 ; l <= nenhere; l++) game.kavgd[l] = game.kdist[l];
+ for_local_enemies(l) game.kavgd[l] = game.kdist[l];
}
newcnd();
iattak = 0;
shield = inshld;
torps = intorps;
lsupres = inlsr;
- if (stdamtim != 1e30 &&
- (game.future[FCDBAS] < 1e30 || isatb == 1) && iseenit == 0) {
+ if (game.damage[DRADIO] == 0.0 &&
+ (game.future[FCDBAS] < FOREVER || isatb == 1) && iseenit == 0) {
/* get attack report from base */
prout("Lt. Uhura- \"Captain, an important message from the starbase:\"");
attakreport(0);
}
itemp = 1;
}
- if (irowq<1 || irowq > GALSIZE || icolq<1 || icolq > GALSIZE ||
- irows<1 || irows > QUADSIZE || icols<1 || icols > QUADSIZE) {
- huh();
- return;
- }
+ if (!VALID_QUADRANT(icolq,irowq)||!VALID_SECTOR(icols,irows)) {
+ huh();
+ return;
+ }
skip(1);
if (!isprobe) {
if (itemp) {
for (l = 1; l <= n; l++) {
x += deltax;
ix = x + 0.5;
- if (ix < 1 || ix > QUADSIZE) break;
y += deltay;
iy = y +0.5;
- if (iy < 1 || iy > QUADSIZE) break;
+ if (!VALID_SECTOR(ix, iy)) break;
if (game.quad[ix][iy] != IHDOT) {
blooey = 0;
twarp = 0;
be sooner */
if (game.state.nscrem) game.future[FSCMOVE] = 0.2777;
isatb = 0;
- game.future[FCDBAS] = game.future[FSCDBAS] = 1e30;
+ game.future[FCDBAS] = game.future[FSCDBAS] = FOREVER;
batx = baty = 0;
/* Make sure Galileo is consistant -- Snapshot may have been taken
prout("Engineer Scott- \"The probe launcher is damaged, Sir.\"");
return;
}
- if (game.future[FDSPROB] != 1e30) {
+ if (game.future[FDSPROB] != FOREVER) {
chew();
skip(1);
if (game.damage[DRADIO] != 0 && condit != IHDOCKED) {
ddist = sqrt(square(basex-sectx)+square(basey-secty));
}
else {
- ddist = 1e30;
- for (l = 1; l <= game.state.rembase; l++) {
+ ddist = FOREVER;
+ for_starbases(l) {
xdist=10.0*sqrt(square(game.state.baseqx[l]-quadx)+square(game.state.baseqy[l]-quady));
if (xdist < ddist) {
ddist = xdist;
for (l = 1; l <= 5; l++) {
ix = basex+3.0*Rand()-1;
iy = basey+3.0*Rand()-1;
- if (ix>=1 && ix<=QUADSIZE && iy>=1 && iy<=QUADSIZE && game.quad[ix][iy]==IHDOT) {
+ if (VALID_SECTOR(ix,iy) && game.quad[ix][iy]==IHDOT) {
/* found one -- finish up */
sectx=ix;
secty=iy;