{
skip(1);
chew();
- if (game.inorbit!=0) {
+ if (game.inorbit) {
prout("Already in standard orbit.");
return;
}
- if (game.damage[DWARPEN] != 0 && game.damage[DIMPULS] != 0) {
+ if (damaged(DWARPEN) && damaged(DIMPULS)) {
prout("Both warp and impulse engines damaged.");
return;
}
if (consumeTime()) return;
game.height = (1400.0+7200.0*Rand());
prout("Sulu- \"Entered orbit at altitude %.2f kilometers.\"", game.height);
- game.inorbit = 1;
- game.ididit=1;
+ game.inorbit = true;
+ game.ididit = true;
}
void sensor(void)
{
skip(1);
chew();
- if (game.damage[DSRSENS] != 0.0) {
+ if (damaged(DSRSENS)) {
prout("Short range sensors damaged.");
return;
}
{
chew();
skip(1);
- if (game.damage[DTRANSP] != 0) {
+ if (damaged(DTRANSP)) {
prout("Transporter damaged.");
- if (game.damage[DSHUTTL]==0 && (game.state.plnets[game.iplnet].known==shuttle_down || game.iscraft == 1)) {
+ if (!damaged(DSHUTTL) && (game.state.plnets[game.iplnet].known==shuttle_down || game.iscraft == 1)) {
skip(1);
proutn("Spock- \"May I suggest the shuttle craft, Sir?\" ");
if (ja() != 0) shuttle();
}
return;
}
- if (game.inorbit==0) {
+ if (!game.inorbit) {
crmshp();
prout(" not in standard orbit.");
return;
}
- if (game.shldup!=0) {
+ if (game.shldup) {
prout("Impossible to transport through shields.");
return;
}
{
chew();
skip(1);
- if(game.damage[DSHUTTL] != 0.0) {
+ if(damaged(DSHUTTL)) {
if (game.damage[DSHUTTL] == -1.0) {
if (game.inorbit && game.state.plnets[game.iplnet].known == shuttle_down)
prout("Ye Faerie Queene has no shuttle craft bay to dock it at.");
}
else if (game.damage[DSHUTTL] > 0)
prout("The Galileo is damaged.");
- else prout("Shuttle craft is now serving Big Macs.");
+ else /* game.damage[DSHUTTL] < 0 */
+ prout("Shuttle craft is now serving Big Macs.");
return;
}
- if (game.inorbit==0) {
+ if (!game.inorbit) {
crmshp();
prout(" not in standard orbit.");
return;
prout("You will have to beam down to retrieve the shuttle craft.");
return;
}
- if (game.shldup!=0 || game.condit == IHDOCKED) {
+ if (game.shldup || game.condit == IHDOCKED) {
prout("Shuttle craft cannot pass through shields.");
return;
}
/* Kirk on planet */
if (game.iscraft==1) {
/* Galileo on ship! */
- if (game.damage[DTRANSP]==0) {
+ if (!damaged(DTRANSP)) {
proutn("Spock- \"Would you rather use the transporter?\" ");
if (ja() != 0) {
beam();
prout("Sulu- \"But Sir, there are no enemies in this quadrant.\"");
return;
}
- if (game.damage[DDRAY] > 0.0) {
+ if (damaged(DDRAY)) {
prout("Death Ray is damaged.");
return;
}
return;
}
-char *systemname(planet *planet)
+char *systemname(int pindx)
{
static char *names[NINHAB] =
{
/*
- * This started out life as the BSD Trek inhabited-planets list,
- * but I used <http://www.memory-alpha.org> to weed out planets
- * with no references in ST:TOS and to fill it out again to the
- * required length from "The Worlds of The Federation" list,
- * <http://memory-alpha.org/en/wiki/The_Worlds_of_the_Federation>.
- * Some misspellings have been silently corrected. (To be
- * fair, there was no Web when Eric Allman did his list.)
- *
+ * I used <http://www.memory-alpha.org> to find planets
+ * with references in ST:TOS. Eath and the Alpha Centauri
+ * Colony have been omitted.
+ *
* Some planets marked Class G and P here will be displayed as class M
* because of the way planets are generated. This is a known bug.
*/
"ERROR",
- // Added Federation Worlds
- "Deneva", /* TOS: "Operation -- Annihilate!" */
- "Eminiar VII", /* TOS: "A Taste of Armageddon" */
- "Hansen's Planet", /* TOS: "The Galileo Seven" */
- "Taurus IV", /* TOS: "The Galileo Seven" (class G) */
- "Aldebaran III", /* TOS: "The Deadly Years" */
- "Vulcan (T'Khasi)", /* many episodes */
- "Tellar Prime (Miracht)", /* TOS: "Journey to Babel" */
+ // Federation Worlds
"Andoria (Fesoan)", /* several episodes */
- "Antos IV (Doraphane)", /* TOS: "Whom Gods Destroy", "Who Mourns for Adonais?" */
- "Catulla (Cendo-Prae)", /* TOS: "The Way to Eden" */
- "Izar", /* TOS: "Whom Gods Destroy" */
- "Tiburon", /* TOS: "The Way to Eden" */
- "Merak II", /* TOS: "The Cloud Minders" */
- "Argelius II (Nelphia)", /* TOS: "Wolf in the Fold" ("IV" in BSD) */
- "Daran V", /* TOS: "For the World is Hollow and I Have Touched the Sky" */
+ "Tellar Prime (Miracht)", /* TOS: "Journey to Babel" */
+ "Vulcan (T'Khasi)", /* many episodes */
"Medusa", /* TOS: "Is There in Truth No Beauty?" */
- "Coridan (Desotriana)", /* TOS: "Journey to Babel" */
- "Berengaria IV", /* TOS: "This Side of Paradise" */
- "Capella IV (Kohath)", /* TOS: "Friday's Child" (Class G) */
+ "Argelius II (Nelphia)",/* TOS: "Wolf in the Fold" ("IV" in BSD) */
+ "Ardana", /* TOS: "The Cloud Minders" */
+ "Catulla (Cendo-Prae)", /* TOS: "The Way to Eden" */
"Gideon", /* TOS: "The Mark of Gideon" */
- "Iotia", /* TOS: "A Piece of the Action" */
+ "Aldebaran III", /* TOS: "The Deadly Years" */
+ "Alpha Majoris I", /* TOS: "Wolf in the Fold" */
+ "Altair IV", /* TOS: "Amok Time */
+ "Ariannus", /* TOS: "Let That Be Your Last Battlefield" */
+ "Benecia" /* TOS: "The Conscience of the King" */
+ "Beta Niobe I (Sarpeidon)", /* TOS: "All Our Yesterdays" */
+ "Alpha Carinae II", /* TOS: "The Ultimate Computer" */
+ "Capella IV (Kohath)", /* TOS: "Friday's Child" (Class G) */
+ "Daran V", /* TOS: "For the World is Hollow and I Have Touched the Sky" */
+ "Deneb II", /* TOS: "Wolf in the Fold" ("IV" in BSD) */
+ "Eminiar VII", /* TOS: "A Taste of Armageddon" */
+ "Gamma Canaris IV", /* TOS: "Metamorphosis" */
+ "Gamma Tranguli VI (Vaalel)", /* TOS: "The Apple" */
+ "Ingraham B", /* TOS: "Operation: Annihilate" */
+ "Janus IV", /* TOS: "The Devil in the Dark" */
+ "Makus III", /* TOS: "The Galileo Seven" */
+ "Marcos XII", /* TOS: "And the Children Shall Lead", */
+ "Omega IV", /* TOS: "The Omega Glory" */
+ "Regulus V", /* TOS: "Amok Time */
+ "Deeva", /* TOS: "Operation -- Annihilate!" */
/* Worlds from BSD Trek */
- //"Talos IV", /* TOS: "The Cage" (interdicted world) */
"Rigel II", /* TOS: "Shore Leave" ("III" in BSD) */
- "Deneb II", /* TOS: "Wolf in the Fold" ("IV" in BSD) */
- //"Canopus V", /* noncanonical */
- //"Icarus I", /* noncanonical */
- //"Prometheus II", /* noncanonical */
- //"Omega VII", /* noncanonical */
- //"Elysium I", /* noncanonical */
- "Scalos IV", /* TOS: "Wink of an Eye" */
- //"Procyon IV", /* noncanonical */
- //"Arachnid I", /* noncanonical */
- //"Argo VIII", /* noncanonical */
- //"Triad III", /* noncanonical */
- //"Echo IV", /* noncanonical */
- //"Nimrod III", /* noncanonical */
- //"Nemisis IV", /* noncanonical */
- //"Centarurus I", /* noncanonical */
- //"Kronos III", /* noncanonical */
- //"Spectros V", /* noncanonical */
"Beta III", /* TOS: "The Return of the Archons" */
- "Gamma Tranguli VI (Vaalel)", /* TOS: "The Apple" */
- "Pyris VII", /* TOS: "Catspaw" ("III" in BSD) */
"Triacus", /* TOS: "And the Children Shall Lead", */
- "Marcos XII", /* TOS: "And the Children Shall Lead", */
- //"Kaland", /* noncanonical */
- "Ardana", /* TOS: "The Cloud Minders" */
- //"Stratos", /* noncanonical */
- //"Eden", /* TOS: "The Way to Eden" (in Romulan space) */
- //"Arrikis", /* noncanonical */
- //"Epsilon Eridani IV", /* noncanonical */
"Exo III", /* TOS: "What Are Little Girls Made Of?" (Class P) */
- };
+#if 0
+ // Others
+ "Hansen's Planet", /* TOS: "The Galileo Seven" */
+ "Taurus IV", /* TOS: "The Galileo Seven" (class G) */
+ "Antos IV (Doraphane)", /* TOS: "Whom Gods Destroy", "Who Mourns for Adonais?" */
+ "Izar", /* TOS: "Whom Gods Destroy" */
+ "Tiburon", /* TOS: "The Way to Eden" */
+ "Merak II", /* TOS: "The Cloud Minders" */
+ "Coridan (Desotriana)", /* TOS: "Journey to Babel" */
+ "Iotia", /* TOS: "A Piece of the Action" */
+#endif
+ };
- return names[planet->inhabited];
+ return names[pindx];
}