kolibrios/programs/games/sstartrek/ru/finish.c

670 lines
27 KiB
C
Raw Normal View History

#include "sst.h"
#include <string.h>
#ifndef KOS32
#include <time.h>
#else
#include <kolibrisys.h>
#endif
void dstrct() {
/* Finish with a BANG! */
chew();
if (damage[DCOMPTR] != 0.0) {
/* prout("Computer damaged; cannot execute destruct sequence."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><E0A5A6><EFBFBD>; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><EFBFBD><E2AEA6><EFBFBD><EFBFBD>.");
return;
}
skip(1);
/* prouts("---WORKING---"); skip(1);
prout("SELF-DESTRUCT-SEQUENCE-ACTIVATED");
*/ prouts("---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>---"); skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
prouts(" 10"); skip(1);
prouts(" 9"); skip(1);
prouts(" 8"); skip(1);
prouts(" 7"); skip(1);
prouts(" 6"); skip(1);
/* prout("ENTER-CORRECT-PASSWORD-TO-CONTINUE-");
prout("SELF-DESTRUCT-SEQUENCE-OTHERWISE-");
prout("SELF-DESTRUCT-SEQUENCE-WILL-BE-ABORTED");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD>-");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
scan();
chew();
if (strcmp(passwd, citem) != 0) {
/* prouts("PASSWORD-REJECTED;"); skip(1);
prout("CONTINUITY-EFFECTED");
*/ prouts("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;"); skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
skip(1);
return;
}
prouts("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"); skip(1); /*PASSWORD-ACCEPTED*/
prouts(" 5"); skip(1);
prouts(" 4"); skip(1);
prouts(" 3"); skip(1);
prouts(" 2"); skip(1);
prouts(" 1"); skip(1);
if (Rand() < 0.15) {
prouts("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD>"); /*GOODBYE-CRUEL-WORLD*/
skip(1);
}
skip(2);
kaboom();
}
void kaboom(void) {
stars();
if (ship==IHE) prouts("***");
prouts("********* <20><><EFBFBD><EFBFBD><E0AEAF> ");/*Entropy of*/
crmshp();
prouts(" <20><><EFBFBD><EFBFBD><E1A8AC><EFBFBD><EFBFBD><E0AEA2><EFBFBD> *********");/*maximized*/
skip(1);
stars();
skip(1);
if (nenhere != 0) {
double whammo = 25.0 * energy;
int l=1;
while (l <= nenhere) {
if (kpower[l]*kdist[l] <= whammo)
deadkl(kx[l],ky[l], quad[kx[l]][ky[l]], kx[l], ky[l]);
l++;
}
}
finish(FDILITHIUM);
}
void finish(FINTYPE ifin) {
int igotit = 0;
alldone = 1;
skip(3);
/* printf("It is stardate %.1f .\n\n", d.date); */
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> %.1f .\n\n", d.date);
switch (ifin) {
case FWON: // Game has been won
if (d.nromrem != 0)
/* printf("The remaining %d Romulans surrender to Starfleet Command.\n", */
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d ஬㫠<E0AEAC>楢 ᤠ<><E1A4A0><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.\n",
d.nromrem);
/* prout("You have smashed the Klingon invasion fleet and saved");
prout("the Federation.");
*/ prout("<EFBFBD><EFBFBD><><E1ABAE><EFBFBD><EFBFBD> <20><EFBFBD><E0A5A1> <20><><EFBFBD><EFBFBD><E0A6A5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> ᯠ᫨ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
#ifdef CAPTURE
if (alive && brigcapacity-brigfree > 0) { // captured Klingon crew will get transfered to starbase
kcaptured += brigcapacity-brigfree;
/* printf("The %d captured Klingons are transferred to Star Fleet Command.\n", */
printf("<EFBFBD><EFBFBD>墠祭<EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> %d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A5A4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.\n",
brigcapacity-brigfree);
}
#endif
gamewon=1;
if (alive) {
double badpt;
badpt = 5.*d.starkl + casual + 10.*d.nplankl +
45.*nhelp+100.*d.basekl;
if (ship == IHF) badpt += 100.0;
else if (ship == 0) badpt += 200.0;
if (badpt < 100.0) badpt = 0.0; // Close enough!
if (d.date-indate < 5.0 ||
// killsPerDate >= RateMax
(d.killk+d.killc+d.nsckill)/(d.date-indate) >=
0.1*skill*(skill+1.0) + 0.1 + 0.008*badpt) {
skip(1);
/* prout("In fact, you have done so well that Starfleet Command"); */
prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
switch (skill) {
case SNOVICE:
/* prout("promotes you one step in rank from \"Novice\" to \"Fair\"."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\" <20><> \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\".");
break;
case SFAIR:
/* prout("promotes you one step in rank from \"Fair\" to \"Good\"."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\" <20><> \"<EFBFBD>⫨筨<EFBFBD><EFBFBD>\".");
break;
case SGOOD:
/* prout("promotes you one step in rank from \"Good\" to \"Expert\"."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> \"<EFBFBD>⫨筨<EFBFBD><EFBFBD>\" <20><> \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\".");
break;
case SEXPERT:
/* prout("promotes you to Commodore Emeritus."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
skip(1);
/* prout("Now that you think you're really good, try playing");
prout("the \"Emeritus\" game. It will splatter your ego.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><20><> <20><><EFBFBD><EFBFBD><E2A0A5><><><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><E0AEA1><EFBFBD><EFBFBD>");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><><E1ABAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\". <20><><EFBFBD> <20><><EFBFBD><EFBFBD><E5AEAC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>.");
break;
case SEMERITUS:
skip(1);
/* prout("Computer- ERROR-ERROR-ERROR-ERROR");
skip(1);
prout(" YOUR-SKILL-HAS-EXCEEDED-THE-CAPACITY-OF-THIS-PROGRAM");
prout(" THIS-PROGRAM-MUST-SURVIVE");
prout(" THIS-PROGRAM-MUST-SURVIVE");
prout(" THIS-PROGRAM-MUST-SURVIVE");
prout(" THIS-PROGRAM-MUST?- MUST ? - SUR? ? -? VI");
skip(1);
prout("Now you can retire and write your own Star Trek game!");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
skip(1);
prout(" <20><><EFBFBD>-<2D><><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
prout(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
prout(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
prout(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
prout(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-?- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ? - <20><><EFBFBD>? ? -? <20><><EFBFBD>");
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><><E1AFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD><E1A0A2> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2A2A5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>४!");
skip(1);
break;
}
if (skill > SGOOD) {
if (thawed
#ifdef DEBUG
&& !idebug
#endif
)
/* prout("You cannot get a citation, so..."); */
prout("<EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ⠪ <20><><EFBFBD>...");
else {
/* prout("Do you want your Commodore Emeritus Citation printed?");
proutn("(You need a 132 column printer.)");
*/ prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᯨ᮪ ᢮<><E1A2AE> <20><><EFBFBD><EFBFBD><EBA2A0><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?");
proutn("(<28><><EFBFBD> <20><><EFBFBD><EFBFBD><E0A5A1><EFBFBD><EFBFBD><EFBFBD> 132-ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0A8AD><EFBFBD>.)");
chew();
if (ja()) {
igotit = 1;
}
}
}
}
// Only grant long life if alive (original didn't!)
skip(1);
/* prout("LIVE LONG AND PROSPER."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
}
score(0);
if (igotit != 0) plaque();
return;
case FDEPLETE: // Federation Resources Depleted
/* prout("Your time has run out and the Federation has been");
prout("conquered. Your starship is now Klingon property,");
prout("and you are put on trial as a war criminal. On the");
proutn("basis of your record, you are ");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> <20><><20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><20><>墠祭<E5A2A0>.");
prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1><><E2A5AF><EFBFBD> <20><><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,");
prout("<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E3A4A8> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3AFAD><EFBFBD>.");
proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><> ");
if (d.remkl*3.0 > inkling) {
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");/*aquitted*/
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");/*LIVE LONG AND PROSPER*/
}
else {
/* prout("found guilty and");
prout("sentenced to death by slow torture.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
prout("<EFBFBD> <20><EFBFBD><E0A8A3><EFBFBD><EFBFBD> <20><><E1ACA5><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><E2AAA0>.");
alive = 0;
}
score(0);
return;
case FLIFESUP:
/* prout("Your life support reserves have run out, and");
prout("you die of thirst, starvation, and asphyxiation.");
prout("Your starship is a derelict in space.");
*/ prout("<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><E7A8AB><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20>");
prout("<EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 㬥૨ <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><EFBFBD><E0A5A9><EFBFBD><EFBFBD> <20> <20><><EFBFBD><E1ACAE>.");
break;
case FNRG:
/* prout("Your energy supply is exhausted.");
skip(1);
prout("Your starship is a derelict in space.");
*/ prout("<EFBFBD> <20><><EFBFBD><E0A0A1> <20><><EFBFBD><EFBFBD><E7A8AB><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.");
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><EFBFBD><E0A5A9><EFBFBD><EFBFBD> <20> <20><><EFBFBD><E1ACAE>.");
break;
case FBATTLE:
/* proutn("The ");
crmshp();
prout("has been destroyed in battle.");
skip(1);
prout("Dulce et decorum est pro patria mori.");
*/ proutn("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> ");
crmshp();
prout("<EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6> <20> <20><><EFBFBD>.");
skip(1);
prout("Dulce et decorum est pro patria mori.");
prout("/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><EFBFBD><E0A5AA><20><><><E0AEA4><EFBFBD><><E1ACA5><EFBFBD>./");
break;
case FNEG3:
/* prout("You have made three attempts to cross the negative energy");
prout("barrier which surrounds the galaxy.");
skip(1);
prout("Your navigation is abominable.");
*/ prout("<EFBFBD><EFBFBD><><E1A4A5><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫쭮<E2A5AB> <20><><EFBFBD><EFBFBD>");
prout(" <20><><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
skip(1);
prout("<EFBFBD><EFBFBD><><E3A6A0><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
score(0);
return;
case FNOVA:
/* prout("Your starship has been destroyed by a nova.");
prout("That was a great shot.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><><EFBFBD><><EFBFBD><E2AEA6> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⪠.");
skip(1);
break;
case FSNOVAED:
/* proutn("The ");
crmshp();
prout(" has been fried by a supernova.");
prout("...Not even cinders remain...");
*/ proutn("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> ");
crmshp();
prout(" <20><><EFBFBD><><EFBFBD><E2AEA6><><EFBFBD><E5ADAE><EFBFBD>.");
prout("...<2E> <20><> <20><><EFBFBD><E2A0AB><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>...");
break;
case FABANDN:
/* prout("You have been captured by the Klingons. If you still");
prout("had a starbase to be returned to, you would have been");
prout("repatriated and given another chance. Since you have");
prout("no starbases, you will be mercilessly tortured to death.");
*/ prout("<EFBFBD><EFBFBD> <20><20><>墠祭<E5A2A0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><20><> <20> <20><><EFBFBD> ");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><EFBFBD><E2A0AD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9A5AD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><>");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ன 蠭<>. <20><> <20><><EFBFBD><E1AAAE><EFBFBD><EFBFBD> <20>⠭権 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>,");
prout("<EFBFBD><EFBFBD><EFBFBD> <20><>ᯮ頤<E1AFAE><E9A0A4> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><><E1ACA5><EFBFBD>.");
break;
case FDILITHIUM:
/* prout("Your starship is now an expanding cloud of subatomic particles"); */
prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><EFBFBD><E0A5A2><EFBFBD><E2A8AB> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㡠⮬<E3A1A0><E2AEAC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
break;
case FMATERIALIZE:
/* prout("Starbase was unable to re-materialize your starship.");
prout("Sic transit gloria muntdi");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><><E1ACAE><EFBFBD> <20><><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><E0A8A0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><E0A0A1>.");
prout("Sic transit gloria muntdi");
prout("/<2F><><EFBFBD> <20><><EFBFBD><EFBFBD><E5AEA4> <20><><EFBFBD><EFBFBD><><E1ABA0>/");
break;
case FPHASER:
/* proutn("The ");
crmshp();
prout(" has been cremated by its own phasers.");
*/ proutn("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> ");
crmshp();
prout("<><EFBFBD><EFBFBD><E2AEA6><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2A2A5><EFBFBD><EFBFBD><>஢.");
break;
case FLOST:
/* prout("You and your landing party have been");
prout("converted to energy, dissipating through space.");
*/ prout("<EFBFBD><EFBFBD> <20> <20><><EFBFBD> <20><><EFBFBD><E1A0A4> ");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EBABA5><EFBFBD><EFBFBD> <20> <20><><EFBFBD><E1ACAE>.");
break;
case FMINING:
/* prout("You are left with your landing party on");
prout("a wild jungle planet inhabited by primitive cannibals.");
skip(1);
prout("They are very fond of \"Captain Kirk\" soup.");
skip(1);
proutn("Without your leadership, the ");
crmshp();
prout(" is destroyed.");
*/ prout("<EFBFBD><EFBFBD> <20><><EFBFBD><E2A0AB><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><E3AFAF> <20><><EFBFBD><E1A0A4>");
prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><E1A5AB><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1AAA8> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD>\".");
skip(1);
proutn("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><E0A0A1> ");
crmshp();
prout(" <20><><EFBFBD><><EFBFBD><E2AEA6>.");
break;
case FDPLANET:
/* prout("You and your mining party perish.");
skip(1);
prout("That was a great shot.");
*/ prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><E1ABA5><EFBFBD> <20><EFBFBD><E0AEAF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD> <20><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⪠.");
skip(1);
break;
case FSSC:
/* prout("The Galileo is instantly annihilated by the supernova."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0AEA2> <20>㯥୮<E3AFA5><E0ADAE><EFBFBD>.");
// no break;
case FPNOVA:
/* prout("You and your mining party are atomized.");
skip(1);
proutn("Mr. Spock takes command of the ");
crmshp();
prout(" and");
prout("joins the Romulans, reigning terror on the Federation.");
*/ prout("<EFBFBD><EFBFBD> <20> <20><><EFBFBD><E3AFAF> <20><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><E1AFA0><EFBFBD><EFBFBD> <20><> <20><EFBFBD>.");
skip(1);
proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><EFBFBD><E0A8AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
crmshp();
prout(" <20>");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> ஬㫠<E0AEAC>栬, <20><><EFBFBD><><E0A0A7><EFBFBD><E8A5AD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨.");
break;
case FSTRACTOR:
/* prout("The shuttle craft Galileo is also caught,");
prout("and breaks up under the strain.");
skip(1);
prout("Your debris is scattered for millions of miles.");
proutn("Without your leadership, the ");
crmshp();
prout(" is destroyed.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><><E1A8AB><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>,");
prout("<EFBFBD> <20><><EFBFBD><><EFBFBD><><E1A8AB><EFBFBD> <20>⥭<EFA3AE><E2A5AD>.");
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.");
proutn("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><E0A0A1> ");
crmshp();
prout(" <20><><EFBFBD><><EFBFBD><E2AEA6>.");
break;
case FDRAY:
/* prout("The mutants attack and kill Spock.");
prout("Your ship is captured by Klingons, and");
prout("your crew is put on display in a Klingon zoo.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E2A0AA><EFBFBD><EFBFBD><EFBFBD> <20><><E3A1A8> <20><><EFBFBD><EFBFBD><EFBFBD>.");
prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><><EFBFBD> <20><>墠祭 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><E2A5AF><EFBFBD>");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD><E2A0A2><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>થ.");
break;
case FTRIBBLE:
/* prout("Tribbles consume all remaining water,");
prout("food, and oxygen on your ship.");
skip(1);
prout("You die of thirst, starvation, and asphyxiation.");
prout("Your starship is a derelict in space.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮦࠫ<E1AEA6> <20><><EFBFBD> <20><><EFBFBD><E2A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>,");
prout("<EFBFBD><EFBFBD><EFBFBD> <20> <20><>᫮த <20><> <20><><20><><EFBFBD><E0A0A1>.");
skip(1);
prout("<EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 㬥૨ <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><EFBFBD><E0A5A9><EFBFBD><EFBFBD> <20> <20><><EFBFBD><E1ACAE>.");
break;
case FHOLE:
/* prout("Your ship is drawn to the center of the black hole.");
prout("You are crushed into extremely dense matter.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20><><E6A5AD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>.");
prout("<EFBFBD><EFBFBD><><E2A5AF><EFBFBD> <20><EFBFBD><E1AAAB><EFBFBD>⥫쭮 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><E1A2A5>⢥ठ<E2A2A5> <20><EFBFBD><EBABA8><EFBFBD>.");
break;
#ifdef CLOAKING
case FCLOAK:
ncviol++;
/* prout("You have violated the Treaty of Algeron.");
prout("The Romulan Empire can never trust you again.");
*/ prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>஭᪮<E0AEAD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8A5AD>.");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>.");
break;
#endif
}
#ifdef CLOAKING
if (ifin!=FWON && ifin!=FCLOAK && iscloaked!=0) {
/* prout("Your ship was cloaked so your subspace radio did not receive anything.");
prout("You may have missed some warning messages.");
*/ prout("<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ⠪ <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>࠭ᢥ<E0A0AD><E1A2A5><EFBFBD><EFBFBD><><E0A0A4> <20><><><EFBFBD>.");
prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0A5A4><EFBFBD><EFBFBD><E2A5AB><EFBFBD><EFBFBD><><EFBFBD><E9A5AD>.");
skip(1);
}
#endif
if (ship==IHF) ship= 0;
else if (ship == IHE) ship = IHF;
alive = 0;
if (d.remkl != 0) {
double goodies = d.remres/inresor;
double baddies = (d.remkl + 2.0*d.remcom)/(inkling+2.0*incom);
if (goodies/baddies >= 1.0+0.5*Rand()) {
/* prout("As a result of your actions, a treaty with the Klingon");
prout("Empire has been signed. The terms of the treaty are");
*/ prout("<EFBFBD><><E0A5A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><EFBFBD><E1ABAE><EFBFBD><><E1AEA3><EFBFBD><E8A5AD> <20>");
if (goodies/baddies >= 3.0+Rand()) {
/* prout("favorable to the Federation.");
skip(1);
prout("Congratulations!");
*/ prout("<EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨.");
skip(1);
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞!");
}
else
/* prout("highly unfavorable to the Federation."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫쭮 <20><><EFBFBD><EFBFBD><EBA3AE><20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨.");
}
else
/* prout("The Federation will be destroyed."); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><><EFBFBD><E2AEA6><EFBFBD>.");
}
else {
/* prout("Since you took the last Klingon with you, you are a");
prout("martyr and a hero. Someday maybe they'll erect a");
prout("statue in your memory. Rest in peace, and try not");
prout("to think about pigeons.");
*/ prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><E1AEA1> <20><> <20><><EFBFBD><>.");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEA8><EFBFBD> <20><><EFBFBD><20><> <20><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><E2AEAC> <20><><EFBFBD><EFBFBD>");
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><20> <20><><EFBFBD><EFBFBD><E0A0A9><EFBFBD><EFBFBD>");
prout("<EFBFBD><EFBFBD> <20><EFBFBD><E3ACA0> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.");
gamewon = 1;
}
score(0);
}
void score(int inGame) {
double timused = d.date - indate;
int ithperd, iwon, klship;
int dnromrem = d.nromrem; // Leave global value alone
if (!inGame) pause(0);
iskill = skill;
if ((timused == 0 || d.remkl != 0) && timused < 5.0) timused = 5.0;
perdate = (d.killc + d.killk + d.nsckill)/timused;
ithperd = 500*perdate + 0.5;
iwon = 0;
if (gamewon) iwon = 100*skill;
if (ship == IHE) klship = 0;
else if (ship == IHF) klship = 1;
else klship = 2;
if (gamewon == 0 || inGame) dnromrem = 0; // None captured if no win or if still in the game
iscore = 10*d.killk + 50*d.killc + ithperd + iwon
- 100*d.basekl - 100*klship - 45*nhelp -5*d.starkl - casual
+ 20*d.nromkl + 200*d.nsckill - 10*d.nplankl + dnromrem;
#ifdef CLOAKING
iscore -= 100*ncviol;
#endif
#ifdef CAPTURE
iscore += 3*kcaptured;
#endif
if (alive == 0) iscore -= 200;
skip(2);
/* if (inGame) prout("Your score so far --");
else prout("Your score --");
*/ if (inGame) prout("<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> --");
else prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> --");
if (d.nromkl)
/* printf(d.nromkl> 1 ? "%6d Romulan ships destroyed %5d\n" : "%6d Romulan ship destroyed %5d\n", */
printf(d.nromkl> 1 ? "%6d ஬㫠<E0AEAC><EFBFBD> <20><><EFBFBD><E0A0A1><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> %5d\n" : "%6d ஬㫠<E0AEAC><EFBFBD> <20><><EFBFBD><E0A0A1><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> %5d\n",
d.nromkl, 20*d.nromkl);
if (dnromrem)
/* printf(dnromrem > 1 ? "%6d Romulan ships captured %5d\n" : "%6d Romulan ship captured %5d\n", */
printf(dnromrem > 1 ? "%6d ஬㫠<E0AEAC><EFBFBD> <20><><EFBFBD><E0A0A1><EFBFBD> <20><>墠祭<E5A2A0> %5d\n" : "%6d ஬㫠<E0AEAC><EFBFBD> <20><><EFBFBD><E0A0A1><EFBFBD> <20><>墠祭<E5A2A0> %5d\n",
dnromrem, dnromrem);
if (d.killk)
/* printf(d.killk > 1 ? "%6d ordinary Klingon ships destroyed %5d\n" : "%6d ordinary Klingon ship destroyed %5d\n", */
printf(d.killk > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0A0A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> %5d\n",
d.killk, 10*d.killk);
if (d.killc)
/* printf(d.killc > 1 ? "%6d Klingon Commander ships destroyed %5d\n" : "%6d Klingon Commander ship destroyed %5d\n", */
printf(d.killc > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>஢ 㭨<><EFBFBD><E2AEA6><EFBFBD> %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>஢ 㭨<><EFBFBD><E2AEA6><EFBFBD> %5d\n",
d.killc, 50*d.killc);
if (d.nsckill)
/* printf("%6d Super-Commander ship destroyed %5d\n", */
printf("%6d <20><EFBFBD><E3AFA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>஢ 㭨<><EFBFBD><E2AEA6><EFBFBD> %5d\n",
d.nsckill, 200*d.nsckill);
if (ithperd)
/* printf("%6.2f Klingons per stardate %5d\n", */
printf("%6.2f <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><EFBFBD><E0A5A4><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> %5d\n",
perdate, ithperd);
#ifdef CAPTURE
if (kcaptured)
/* printf(kcaptured > 1 ? "%6d Klingons captured %5d\n" : "%6d Klingon captured %5d\n", */
printf(kcaptured > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>墠祭<E5A2A0> %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>墠祭<E5A2A0> %5d\n",
kcaptured, 3*kcaptured);
#endif
if (d.starkl)
/* printf(d.starkl > 1 ? "%6d stars destroyed by your action %5d\n" : "%6d star destroyed by your action %5d\n", */
printf(d.starkl > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⢨ﬨ %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⢨ﬨ %5d\n",
d.starkl, -5*d.starkl);
if (d.nplankl)
/* printf(d.nplankl > 1 ? "%6d planets destroyed by your action %5d\n" : "%6d planet destroyed by your action %5d\n", */
printf(d.nplankl > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⢨ﬨ %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⢨ﬨ %5d\n",
d.nplankl, -10*d.nplankl);
if (d.basekl)
printf(d.basekl > 1 ? "%6d <20>⠭権 㭨<><EFBFBD><E2AEA6><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⢨ﬨ %5d\n" : "%6d <20>⠭権 㭨<><EFBFBD><E2AEA6><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>⢨ﬨ %5d\n",
d.basekl, -100*d.basekl);
if (nhelp)
printf(nhelp > 1 ? "%6d <20><EFBFBD><EBA7AE><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>⠭権 %5d\n" : "%6d <20><EFBFBD><EBA7AE><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>⠭権 %5d\n",
nhelp, -45*nhelp);
if (casual)
printf(casual > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %5d\n",
casual, -casual);
if (klship)
printf(klship > 1 ? "%6d <20><><EFBFBD><E0A0A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> %5d\n" : "%6d <20><><EFBFBD><E0A0A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><><EFBFBD><E2AEA6><EFBFBD> %5d\n",
klship, -100*klship);
#ifdef CLOAKING
if (ncviol>0)
printf(ncviol > 1 ? "%6d <20><><EFBFBD><EFBFBD><EFBFBD><E8A5AD> <20><><EFBFBD><EFBFBD>஭᪮<E0AEAD><E1AAAE><><E1AEA3><EFBFBD><E8A5AD> %5d\n" : "%6d <20><><EFBFBD><EFBFBD><EFBFBD><E8A5AD> <20><><EFBFBD><EFBFBD>஭᪮<E0AEAD><E1AAAE><><E1AEA3><EFBFBD><E8A5AD> %5d\n",
ncviol, -100*ncviol);
#endif
if (alive==0)
/* prout("Penalty for getting yourself killed -200"); */
prout("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>, <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><><><E3A1A8> -200");
if (gamewon) {
skip(1);
/* proutn("Bonus for winning "); */
proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
switch (skill) {
/* case SNOVICE: proutn("Novice game "); break;
case SFAIR: proutn("Fair game "); break;
case SGOOD: proutn("Good game "); break;
case SEXPERT: proutn("Expert game "); break;
case SEMERITUS: proutn("Emeritus game"); break;
*/ case SNOVICE: proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>"); break;
case SFAIR: proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "); break;
case SGOOD: proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>⫨筨<E2ABA8><E7ADA8> "); break;
case SEXPERT: proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E1AFA5><EFBFBD> "); break;
case SEMERITUS: proutn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"); break;
}
printf(" %5d\n", iwon);
}
skip(2);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> %5d\n", iscore);/*TOTAL SCORE*/
/* if (inGame && skill < SGOOD) printf("REMEMBER--The score doesn't really matter until the mission is accomplished!\n"); */
if (inGame && skill < SGOOD) printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--<2D><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>!\n");
}
void plaque(void) {
FILE *fp=NULL;
#ifndef KOS32
time_t t;
#else
int kos_date, kos_time;
#endif
char *timestring;
int nskip;
char winner[128];
skip(2);
while (fp == NULL) {
/* printf("File or device name for your plaque:"); */
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><><E4A0A9> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><E2A8A6><EFBFBD><EFBFBD>:");
#ifndef KOS32
fgets(winner, 128, stdin);
#else
gets(winner);
#endif
winner[strlen(winner)-1] = '\0';
fp = fopen(winner, "w");
if (fp==NULL) {
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>.\n");/*Invalid name*/
}
}
/* printf("Enter name to go on plaque (up to 30 characters):"); */
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><E2ADAE> <20><><EFBFBD>窠 (<28><><EFBFBD><EFBFBD><E1A8AC> 30 ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>):");
#ifndef KOS32
fgets(winner, 128, stdin);
#else
gets(winner);
#endif
winner[strlen(winner)-1] = '\0';
winner[30] = '\0';
nskip = 64 - strlen(winner)/2;
fprintf(fp,"\n\n\n\n");
/* --------DRAW ENTERPRISE PICTURE. */
fprintf(fp, " EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE\n" );
fprintf(fp, " EEE E : : : E\n" );
fprintf(fp, " EE EEE E : : NCC-1701 : E\n");
fprintf(fp, " EEEEEEEEEEEEEEEE EEEEEEEEEEEEEEE E : : : E\n");
fprintf(fp, " E E EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE\n");
fprintf(fp, " EEEEEEEEE EEEEEEEEEEEEE E E\n");
fprintf(fp, " EEEEEEE EEEEE E E E E\n");
fprintf(fp, " EEE E E E E\n");
fprintf(fp, " E E E E\n");
fprintf(fp, " EEEEEEEEEEEEE E E\n");
fprintf(fp, " EEE : EEEEEEE EEEEEEEE\n");
fprintf(fp, " :E : EEEE E\n");
fprintf(fp, " .-E -:----- E\n");
fprintf(fp, " :E : E\n");
fprintf(fp, " EE : EEEEEEEE\n");
fprintf(fp, " EEEEEEEEEEEEEEEEEEEEEEE\n");
fprintf(fp, "\n\n\n");
fprintf(fp, " U. S. S. ENTERPRISE\n");
fprintf(fp, "\n\n\n\n");
/* fprintf(fp, " For demonstrating outstanding ability as a starship captain\n"); */
fprintf(fp, " <20><> <20><><EFBFBD><EFBFBD><EFA2AB><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD><E9A8A5> <20><><EFBFBD><EFBFBD><E2A8A6><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E1ACA8><EFBFBD><E1AAAE> <20><><EFBFBD><E0A0A1>\n");
fprintf(fp, "\n");
/* fprintf(fp, " Starfleet Command bestows to you\n"); */
fprintf(fp, " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD><E2A0A2><EFBFBD><EFBFBD> <20><><EFBFBD>\n");
fprintf(fp, "\n");
fprintf(fp,"%*s%s\n\n", nskip, "", winner);
/* fprintf(fp, " the rank of\n\n");
fprintf(fp, " \"Commodore Emeritus\"\n\n");
*/ fprintf(fp, " <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n\n");
fprintf(fp, " \"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\"\n\n");
fprintf(fp, " ");
switch (iskill) {
/* case SEXPERT: fprintf(fp," Expert level\n\n"); break;
case SEMERITUS: fprintf(fp,"Emeritus level\n\n"); break;
default: fprintf(fp," Cheat level\n\n"); break;
*/ case SEXPERT: fprintf(fp," <20><EFBFBD><E0AEA2><EFBFBD> <20><><EFBFBD><E1AFA5><EFBFBD>\n\n"); break;
case SEMERITUS: fprintf(fp,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n\n"); break;
default: fprintf(fp," <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA2><EFBFBD>\n\n"); break;
}
#ifndef KOS32
t = time(NULL);
timestring = ctime(&t);
/* fprintf(fp, " This day of %.6s %.4s, %.8s\n\n", */
fprintf(fp, " <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> %.6s %.4s, %.8s\n\n",
timestring+4, timestring+20, timestring+11);
#else
kos_date = _ksys_get_date();
kos_time = _ksys_get_system_clock();
/* fprintf(fp, " This day of %02i/%02i/%02i %02i:%02i:%02i\n\n", */
fprintf(fp, " <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> %02i/%02i/%02i %02i:%02i:%02i\n\n",
kos_date >> 16, (kos_date & 0xFF00) >> 8, (kos_date & 0xFF) + 2000,
kos_time & 0xFF, (kos_time & 0xFF00) >> 8, kos_time >> 16 );
#endif
/* fprintf(fp," Your score: %d\n\n", iscore);
fprintf(fp," Klingons per stardate: %.2f\n", perdate);
*/ fprintf(fp," <20><><EFBFBD> <20><><EFBFBD><EFBFBD>: %d\n\n", iscore);
fprintf(fp," <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>: %.2f\n", perdate);
fclose(fp);
}