game.shield = game.inshld;
game.torps = game.intorps;
game.lsupres = game.inlsr;
- if (game.damage[DRADIO] == 0.0 &&
+ if (!damaged(DRADIO) &&
(is_scheduled(FCDBAS) || game.isatb == 1) && game.iseenit == 0) {
/* get attack report from base */
prout("Lt. Uhura- \"Captain, an important message from the starbase:\"");
return;
}
while (automatic == -1) {
- if (game.damage[DCOMPTR]) {
+ if (damaged(DCOMPTR)) {
if (isprobe)
prout("Computer damaged; manual navigation only");
else
double power;
game.ididit = 0;
- if (game.damage[DIMPULS]) {
+ if (damaged(DIMPULS)) {
chew();
skip(1);
prout("Engineer Scott- \"The impulse engines are damaged, Sir.\"");
}
-void warp(int i)
+void warp(bool timewarp)
{
int blooey=0, twarp=0, iwarp;
double power;
- if (i!=2) { /* Not WARPX entry */
+ if (!timewarp) { /* Not WARPX entry */
game.ididit = 0;
if (game.damage[DWARPEN] > 10.0) {
chew();
prout("Engineer Scott- \"The impulse engines are damaged, Sir.\"");
return;
}
- if (game.damage[DWARPEN] > 0.0 && game.warpfac > 4.0) {
+ if (damaged(DWARPEN) && game.warpfac > 4.0) {
chew();
skip(1);
prout("Engineer Scott- \"Sorry, Captain. Until this damage");
game.ididit = 0;
skip(1);
prout("Engineering to bridge--");
- if (game.shldup==0 || 0.5*power > game.energy) {
+ if (!game.shldup || 0.5*power > game.energy) {
iwarp = pow((game.energy/(game.dist+0.05)), 0.333333333);
if (iwarp <= 0) {
prout("We can't do it, Captain. We haven't the energy.");
prout("Warp engines inoperative.");
return;
}
- if (game.damage[DWARPEN] > 0.0 && aaitem > 4.0) {
+ if (damaged(DWARPEN) && aaitem > 4.0) {
prout("Engineer Scott- \"I'm doing my best, Captain,");
prout(" but right now we can only go warp 4.\"");
return;
chew();
/* is captain on planet? */
if (game.landed==1) {
- if (game.damage[DTRANSP]) {
+ if (damaged(DTRANSP)) {
finish(FPNOVA);
return;
}
crmshp();
skip(1);
prout("safely out of quadrant.");
- if (game.damage[DRADIO] == 0.0)
+ if (!damaged(DRADIO))
game.state.galaxy[game.quadrant.x][game.quadrant.y].charted = true;
/* Try to use warp engines */
- if (game.damage[DWARPEN]) {
+ if (damaged(DWARPEN)) {
skip(1);
prout("Warp engines damaged.");
finish(FSNOVAED);
if (distreq < game.dist) game.dist = distreq;
game.optime = 10.0*game.dist/game.wfacsq;
game.direc = 12.0*Rand(); /* How dumb! */
- game.justin = 0;
- game.inorbit = 0;
- warp(2);
- if (game.justin == 0) {
+ game.justin = false;
+ game.inorbit = false;
+ warp(true);
+ if (!game.justin) {
/* This is bad news, we didn't leave quadrant. */
if (game.alldone) return;
skip(1);
prout("Ye Faerie Queene has no deep space probes.");
return;
}
- if (game.damage[DDSP] != 0.0) {
+ if (damaged(DDSP)) {
chew();
skip(1);
prout("Engineer Scott- \"The probe launcher is damaged, Sir.\"");
if (is_scheduled(FDSPROB)) {
chew();
skip(1);
- if (game.damage[DRADIO] != 0 && game.condit != IHDOCKED) {
+ if (damaged(DRADIO) && game.condit != IHDOCKED) {
prout("Spock- \"Records show the previous probe has not yet");
prout(" reached its destination.\"");
}
prout("Lt. Uhura- \"But Captain, we're already docked.\"");
return;
}
- if (game.damage[DRADIO] != 0) {
+ if (damaged(DRADIO)) {
prout("Subspace radio damaged.");
return;
}