X-Git-Url: https://jxself.org/git/?p=super-star-trek.git;a=blobdiff_plain;f=src%2Freports.c;h=22a7cee19eafa012f2036e438a03ea27d75402fd;hp=0948073b01a4d6a2e88bd7573184ed9d51012a94;hb=459d6afcbe13be588b29c8bd1fbffb39b13fdee1;hpb=a0ab45afa68fbc41df45581addf497ccc8204263 diff --git a/src/reports.c b/src/reports.c index 0948073..22a7cee 100644 --- a/src/reports.c +++ b/src/reports.c @@ -6,23 +6,23 @@ void attakreport(int curt) { if (!curt) { - if (game.future[FCDBAS] < FOREVER) { + if (is_scheduled(FCDBAS)) { prout("Starbase in %s is currently under Commander attack.", - cramlc(quadrant, game.batx, game.baty)); + cramlc(quadrant, game.battle)); prout("It can hold out until Stardate %d.", - (int)game.future[FCDBAS]); + (int)scheduled(FCDBAS)); } if (game.isatb == 1) { prout("Starbase in %s is under Super-commander attack.", - cramlc(quadrant, game.state.isx, game.state.isy)); + cramlc(quadrant, game.state.kscmdr)); prout("It can hold out until Stardate %d.", - (int)game.future[FSCDBAS]); + (int)scheduled(FSCDBAS)); } } else { - if (game.future[FCDBAS] < FOREVER) - proutn("Base in %i - %i attacked by C. Alive until %.1f", game.batx, game.baty, game.future[FCDBAS]); - if (game.isatb == 1) - proutn("Base in %i - %i attacked by S. Alive until %.1f", game.state.isx, game.state.isy, game.future[FSCDBAS]); + if (is_scheduled(FCDBAS)) + proutn("Base in %i - %i attacked by C. Alive until %.1f", game.battle.x, game.battle.y, scheduled(FCDBAS)); + if (game.isatb) + proutn("Base in %i - %i attacked by S. Alive until %.1f", game.state.kscmdr.x, game.state.kscmdr.y, scheduled(FSCDBAS)); } clreol(); } @@ -87,13 +87,13 @@ void report(void) if (game.nprobes!=1) proutn("s"); prout("."); } - if ((game.damage[DRADIO] == 0.0 || game.condit == IHDOCKED)&& - game.future[FDSPROB] != FOREVER) { + if ((game.damage[DRADIO] == 0.0 || game.condit == IHDOCKED) + && is_scheduled(FDSPROB)) { if (game.isarmed) proutn("An armed deep space probe is in"); else proutn("A deep space probe is in"); - proutn(cramlc(quadrant, game.probecx, game.probecy)); + proutn(cramlc(quadrant, game.probec)); prout("."); } if (game.icrystl) { @@ -128,14 +128,14 @@ void lrscan(void) else { prout("Long-range scan"); } - for (x = game.quadx-1; x <= game.quadx+1; x++) { + for (x = game.quadrant.x-1; x <= game.quadrant.x+1; x++) { proutn(" "); - for (y = game.quady-1; y <= game.quady+1; y++) { + for (y = game.quadrant.y-1; y <= game.quadrant.y+1; y++) { if (!VALID_QUADRANT(x, y)) proutn(" -1"); else { if (!game.damage[DRADIO]) - game.state.galaxy[x][y].charted = TRUE; + game.state.galaxy[x][y].charted = true; game.state.chart[x][y].klingons = game.state.galaxy[x][y].klingons; game.state.chart[x][y].starbase = game.state.galaxy[x][y].starbase; game.state.chart[x][y].stars = game.state.galaxy[x][y].stars; @@ -151,7 +151,8 @@ void lrscan(void) void dreprt(void) { - int jdam = FALSE, i; + bool jdam = false; + int i; chew(); for (i = 0; i < NDEVICES; i++) { @@ -159,7 +160,7 @@ void dreprt(void) if (!jdam) { prout("DEVICE -REPAIR TIMES-"); prout(" IN FLIGHT DOCKED"); - jdam = TRUE; + jdam = true; } prout(" %16s %8.2f %8.2f", device[i], @@ -206,7 +207,7 @@ void chart(int nn) proutn("%d |", i); for_quadrants(j) { char buf[4]; - if ((game.options & OPTION_SHOWME) && i == game.quadx && j == game.quady) + if ((game.options & OPTION_SHOWME) && i == game.quadrant.x && j == game.quadrant.y) proutn("<"); else proutn(" "); @@ -219,7 +220,7 @@ void chart(int nn) else strcpy(buf, "..."); proutn(buf); - if ((game.options & OPTION_SHOWME) && i == game.quadx && j == game.quady) + if ((game.options & OPTION_SHOWME) && i == game.quadrant.x && j == game.quadrant.y) proutn(">"); else proutn(" "); @@ -227,11 +228,12 @@ void chart(int nn) proutn(" |"); if (iinhabited != UNINHABITED) + proutn("Major system %s", systemname(here)); + else + proutn("Sector is uninhabited"); + } + + break; + case 11: attakreport(1); break; } @@ -320,31 +332,33 @@ static void status(int req) int srscan(int l) { + /* the "sy" request is undocumented */ static char requests[][3] = - {"","da","co","po","ls","wa","en","to","sh","kl","ti"}; - int leftside=TRUE, rightside=TRUE, i, j, jj, req=0, nn=FALSE; - int goodScan=TRUE; + {"","da","co","po","ls","wa","en","to","sh","kl","sy", "ti"}; + + int i, j, jj, req=0; + int goodScan=true, leftside=true, rightside=true, nn=false; switch (l) { case SCAN_FULL: // SRSCAN if (game.damage[DSRSENS] != 0) { /* Allow base's sensors if docked */ if (game.condit != IHDOCKED) { prout(" S.R. SENSORS DAMAGED!"); - goodScan=FALSE; + goodScan=false; } else prout(" [Using Base's sensors]"); } else prout(" Short-range scan"); if (goodScan && !game.damage[DRADIO]) { - game.state.chart[game.quadx][game.quady].klingons = game.state.galaxy[game.quadx][game.quady].klingons; - game.state.chart[game.quadx][game.quady].starbase = game.state.galaxy[game.quadx][game.quady].starbase; - game.state.chart[game.quadx][game.quady].stars = game.state.galaxy[game.quadx][game.quady].stars; - game.state.galaxy[game.quadx][game.quady].charted = TRUE; + game.state.chart[game.quadrant.x][game.quadrant.y].klingons = game.state.galaxy[game.quadrant.x][game.quadrant.y].klingons; + game.state.chart[game.quadrant.x][game.quadrant.y].starbase = game.state.galaxy[game.quadrant.x][game.quadrant.y].starbase; + game.state.chart[game.quadrant.x][game.quadrant.y].stars = game.state.galaxy[game.quadrant.x][game.quadrant.y].stars; + game.state.galaxy[game.quadrant.x][game.quadrant.y].charted = true; } scan(); - if (isit("chart")) nn = TRUE; - if (isit("no")) rightside = FALSE; + if (isit("chart")) nn = true; + if (isit("no")) rightside = false; chew(); prout(" 1 2 3 4 5 6 7 8 9 10"); break; @@ -358,17 +372,17 @@ int srscan(int l) if (req > sizeof(requests)/sizeof(requests[0])) { prout("UNRECOGNIZED REQUEST. Legal requests are:"); prout(" date, condition, position, lsupport, warpfactor,"); - prout(" energy, torpedoes, shields, klingons, time, bases."); - return FALSE; + prout(" energy, torpedoes, shields, klingons, time, system, bases."); + return false; } // no break case SCAN_STATUS: // STATUS chew(); - leftside = FALSE; + leftside = false; skip(1); // no break case SCAN_NO_LEFTSIDE: // REQUEST - leftside=FALSE; + leftside=false; break; } if (game.condit != IHDOCKED) newcnd(); @@ -393,8 +407,8 @@ int srscan(int l) void eta(void) { - int ix1, ix2, iy1, iy2, prompt=FALSE; - int wfl; + int ix1, ix2, iy1, iy2; + bool wfl, prompt = false; double ttime, twarp, tpower; if (game.damage[DCOMPTR] != 0.0) { prout("COMPUTER DAMAGED, USE A POCKET CALCULATOR."); @@ -402,7 +416,7 @@ void eta(void) return; } if (scan() != IHREAL) { - prompt = TRUE; + prompt = true; chew(); proutn("Destination quadrant and/or sector? "); if (scan()!=IHREAL) { @@ -425,9 +439,9 @@ void eta(void) ix2 = aaitem + 0.5; } else { - if (game.quady>ix1) ix2 = 1; + if (game.quadrant.y>ix1) ix2 = 1; else ix2=QUADSIZE; - if (game.quadx>iy1) iy2 = 1; + if (game.quadrant.x>iy1) iy2 = 1; else iy2=QUADSIZE; } @@ -435,12 +449,12 @@ void eta(void) huh(); return; } - game.dist = sqrt(square(iy1-game.quadx+0.1*(iy2-game.sectx))+ - square(ix1-game.quady+0.1*(ix2-game.secty))); - wfl = FALSE; + 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))); + wfl = false; if (prompt) prout("Answer \"no\" if you don't know the value:"); - while (TRUE) { + for (;;) { chew(); proutn("Time or arrival date? "); if (scan()==IHREAL) { @@ -458,7 +472,7 @@ void eta(void) chew(); proutn("Warp factor? "); if (scan()== IHREAL) { - wfl = TRUE; + wfl = true; twarp = aaitem; if (twarp<1.0 || twarp > 10.0) { huh(); @@ -468,7 +482,7 @@ void eta(void) } prout("Captain, certainly you can give me one of these."); } - while (TRUE) { + for (;;) { chew(); ttime = (10.0*game.dist)/square(twarp); tpower = game.dist*twarp*twarp*twarp*(game.shldup+1); @@ -478,7 +492,7 @@ void eta(void) if (!wfl) return; proutn("New warp factor to try? "); if (scan() == IHREAL) { - wfl = TRUE; + wfl = true; twarp = aaitem; if (twarp<1.0 || twarp > 10.0) { huh(); @@ -514,13 +528,13 @@ void eta(void) 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.isy == ix1 && game.state.isx == iy1 && - game.future[FSCDBAS]< ttime+game.state.date)|| - (game.future[FCDBAS] 10.0) { huh();