prout(_(" destroyed, %d remaining."), game.state.rembase);
}
else prout(_("There are %d bases."), game.inbase);
- if (!damaged(DRADIO) || game.condit == IHDOCKED || game.iseenit) {
+ if (!damaged(DRADIO) || game.condition == docked || game.iseenit) {
/* Don't report this if not seen and
either the radio is dead or not at base! */
attakreport(false);
- game.iseenit = 1;
+ game.iseenit = true;
}
if (game.casual) prout(_("%d casualt%s suffered so far."),
game.casual, game.casual==1? "y" : "ies");
if (game.nprobes!=1) proutn(_("s"));
prout(".");
}
- if ((!damaged(DRADIO) || game.condit == IHDOCKED)
+ if ((!damaged(DRADIO) || game.condition == docked)
&& is_scheduled(FDSPROB)) {
if (game.isarmed)
proutn(_("An armed deep space probe is in"));
chew();
if (damaged(DLRSENS)) {
/* Now allow base's sensors if docked */
- if (game.condit != IHDOCKED) {
+ if (game.condition != docked) {
prout(_("LONG-RANGE SENSORS DAMAGED."));
return;
}
if (!damaged(DRADIO))
rechart();
- if (game.lastchart < game.state.date && game.condit == IHDOCKED) {
+ if (game.lastchart < game.state.date && game.condition == docked) {
prout(_("Spock- \"I revised the Star Chart from the starbase's records.\""));
rechart();
}
{
if (goodScan || (abs(i-game.sector.x)<= 1 && abs(j-game.sector.y) <= 1)){
if ((game.quad[i][j]==IHMATER0)||(game.quad[i][j]==IHMATER1)||(game.quad[i][j]==IHMATER2)||(game.quad[i][j]==IHE)||(game.quad[i][j]==IHF)){
- switch (game.condit) {
- case IHRED: textcolor(RED); break;
- case IHGREEN: textcolor(GREEN); break;
- case IHYELLOW: textcolor(YELLOW); break;
- case IHDOCKED: textcolor(CYAN); break;
- case IHDEAD: textcolor(BROWN);
+ switch (game.condition) {
+ case red: textcolor(RED); break;
+ case green: textcolor(GREEN); break;
+ case yellow: textcolor(YELLOW); break;
+ case docked: textcolor(CYAN); break;
+ case dead: textcolor(BROWN);
}
if (game.quad[i][j] != game.ship)
highvideo();
proutn(_("Stardate %.1f, Time Left %.2f"), game.state.date, game.state.remtime);
break;
case 2:
- if (game.condit != IHDOCKED) newcnd();
- switch (game.condit) {
- case IHRED: cp = "RED"; break;
- case IHGREEN: cp = "GREEN"; break;
- case IHYELLOW: cp = "YELLOW"; break;
- case IHDOCKED: cp = "DOCKED"; break;
- case IHDEAD: cp="DEAD"; break;
+ if (game.condition != docked) newcnd();
+ switch (game.condition) {
+ case red: cp = "RED"; break;
+ case green: cp = "GREEN"; break;
+ case yellow: cp = "YELLOW"; break;
+ case docked: cp = "DOCKED"; break;
+ case dead: cp="DEAD"; break;
}
for (t=0;t<NDEVICES;t++)
if (game.damage[t]>0)
case 4:
proutn(_("Life Support "));
if (damaged(DLIFSUP)) {
- if (game.condit == IHDOCKED)
+ if (game.condition == docked)
proutn(_("DAMAGED, Base provides"));
else
proutn(_("DAMAGED, reserves=%4.2f"), game.lsupres);
}
}
-int srscan(int l)
+void srscan(scantype type)
/* short-range scan */
{
/* the "sy" request is undocumented */
int i, j, jj, req=0;
int goodScan=true, leftside=true, rightside=true, title=false;
- switch (l) {
+ switch (type) {
case SCAN_FULL: // SRSCAN
if (damaged(DSRSENS)) {
/* Allow base's sensors if docked */
- if (game.condit != IHDOCKED) {
+ if (game.condition != docked) {
prout(_(" S.R. SENSORS DAMAGED!"));
goodScan=false;
}
prout(_("UNRECOGNIZED REQUEST. Legal requests are:"));
prout(_(" date, condition, position, lsupport, warpfactor,"));
prout(_(" energy, torpedoes, shields, klingons, time, system, bases."));
- return false;
+ return;
}
// no break
case SCAN_STATUS: // STATUS
leftside=false;
break;
}
- if (game.condit != IHDOCKED) newcnd();
+ if (game.condition != docked) newcnd();
for (i = 1; i <= max(QUADSIZE, sizeof(requests)/sizeof(requests[0])); i++) {
jj = (req!=0 ? req : i);
if (leftside && i <= QUADSIZE) {
if (rightside)
status(jj);
if (i<sizeof(requests)/sizeof(requests[0])) skip(1);
- if (req!=0) return(goodScan);
+ if (req!=0) return;
}
prout("");
if (title) chart(true);
- return(goodScan);
}
void eta(void)
/* use computer to get estimated time of arrival for a warp jump */
{
- int ix1, ix2, iy1, iy2;
+ coord w1, w2;
bool wfl, prompt = false;
double ttime, twarp, tpower;
if (damaged(DCOMPTR)) {
return;
}
}
- iy1 = aaitem +0.5;
+ w1.y = aaitem +0.5;
if (scan() != IHREAL) {
huh();
return;
}
- ix1 = aaitem + 0.5;
+ w1.x = aaitem + 0.5;
if (scan() == IHREAL) {
- iy2 = aaitem + 0.5;
+ w2.y = aaitem + 0.5;
if (scan() != IHREAL) {
huh();
return;
}
- ix2 = aaitem + 0.5;
+ w2.x = aaitem + 0.5;
}
else {
- if (game.quadrant.y>ix1) ix2 = 1;
- else ix2=QUADSIZE;
- if (game.quadrant.x>iy1) iy2 = 1;
- else iy2=QUADSIZE;
+ if (game.quadrant.y>w1.x) w2.x = 1;
+ else w2.x=QUADSIZE;
+ if (game.quadrant.x>w1.y) w2.y = 1;
+ else w2.y=QUADSIZE;
}
- if (!VALID_QUADRANT(ix1, iy1) || !VALID_SECTOR(ix2, iy2)) {
+ if (!VALID_QUADRANT(w1.x, w1.y) || !VALID_SECTOR(w2.x, w2.y)) {
huh();
return;
}
- game.dist = sqrt(square(iy1-game.quadrant.x+0.1*(iy2-game.sector.x))+
- square(ix1-game.quadrant.y+0.1*(ix2-game.sector.y)));
+ game.dist = sqrt(square(w1.y-game.quadrant.y+0.1*(w2.y-game.sector.y))+
+ square(w1.x-game.quadrant.x+0.1*(w2.x-game.sector.x)));
wfl = false;
if (prompt) prout(_("Answer \"no\" if you don't know the value:"));
prout(_("Unfortunately, the Federation will be destroyed by then."));
if (twarp > 6.0)
prout(_("You'll be taking risks at that speed, Captain"));
- if ((game.isatb==1 && game.state.kscmdr.y == iy1 && game.state.kscmdr.x == ix1 &&
+ if ((game.isatb==1 && same(game.state.kscmdr, w1) &&
scheduled(FSCDBAS)< ttime+game.state.date)||
- (scheduled(FCDBAS)<ttime+game.state.date && game.battle.y==iy1 && game.battle.x == ix1))
+ (scheduled(FCDBAS)<ttime+game.state.date && same(game.battle, w1)))
prout(_("The starbase there will be destroyed by then."));
proutn(_("New warp factor to try? "));
if (scan() == IHREAL) {