crmshp();\r
prout(" heavily damaged.");\r
icas = 10.0+20.0*Rand();\r
- proutn("***Sickbay reports ");\r
- crami(icas, 1);\r
- prout(" casualties.");\r
+ prout("***Sickbay reports %d casualties", icas);\r
casual += icas;\r
for (l=1; l <= NDEVICES; l++) {\r
if (l == DDRAY) continue; // Don't damage deathray \r
iy = y + 0.5;\r
if (iy < 1 || iy > 10) break;\r
if (l==4 || l==9) skip(1);\r
- cramf(x, 0, 1);\r
- proutn(" - ");\r
- cramf(y, 0, 1);\r
- proutn(" ");\r
+ proutn("%d - %d ", (int)x, (int)y);\r
iquad=game.quad[ix][iy];\r
if (iquad==IHDOT) continue;\r
/* hit something */\r
if (shoved) {\r
game.quad[jx][jy]=iquad;\r
game.quad[ix][iy]=IHDOT;\r
- proutn(" displaced by blast to");\r
- cramlc(2, jx, jy);\r
- skip(1);\r
+ prout(" displaced by blast to %s ", cramlc(sector, jx, jy));\r
for (ll=1; ll<=nenhere; ll++)\r
game.kdist[ll] = game.kavgd[ll] = sqrt(square(sectx-game.kx[ll])+square(secty-game.ky[ll]));\r
sortkl();\r
shields were down for some strange reason. This\r
doesn't make any sense, so I've fixed it */\r
ihurt = 1;\r
- cramf(hit, 0, 2);\r
- proutn(" unit hit");\r
+ proutn("%d unit hit", (int)hit);\r
if ((game.damage[DSRSENS] > 0 && itflag) || skill <= 2) {\r
proutn(" on the ");\r
crmshp();\r
if (hit > hitmax) hitmax = hit;\r
hittot += hit;\r
fry(hit);\r
- printf("Hit %g energy %g\n", hit, energy);\r
+ prout("Hit %g energy %g", hit, energy);\r
energy -= hit;\r
}\r
if (energy <= 0) {\r
else {\r
/* Print message if starship suffered hit(s) */\r
skip(1);\r
- proutn("Energy left ");\r
- cramf(energy, 0, 2);\r
- proutn(" shields ");\r
- if (shldup) proutn("up, ");\r
- else if (game.damage[DSHIELD] == 0) proutn("down, ");\r
+ proutn("Energy left %2d shields ", (int)energy);\r
+ if (shldup) proutn("up ");\r
+ else if (game.damage[DSHIELD] == 0) proutn("down ");\r
else proutn("damaged, ");\r
}\r
- crami(percent, 1);\r
- proutn("% torpedoes left ");\r
- crami(torps, 1);\r
- skip(1);\r
+ prout("%d%%, torpedoes left %d", percent, torps);\r
/* Check if anyone was hurt */\r
if (hitmax >= 200 || hittot >= 500) {\r
int icas= hittot*Rand()*0.015;\r
if (icas >= 2) {\r
skip(1);\r
- proutn("Mc Coy- \"Sickbay to bridge. We suffered ");\r
- crami(icas, 1);\r
- prout(" casualties");\r
+ prout("Mc Coy- \"Sickbay to bridge. We suffered %d casualties", icas);\r
prout(" in that last attack.\"");\r
casual += icas;\r
}\r
return;\r
}\r
else if (key == IHEOL) {\r
- crami(torps,1);\r
- prout(" torpedoes left.");\r
+ prout("%d torpedoes left.", torps);\r
proutn("Number of torpedoes to fire- ");\r
key = scan();\r
}\r
if (i == 1 && key == IHEOL) {\r
/* prompt for each one */\r
for (i = 1; i <= n; i++) {\r
- proutn("Target sector for torpedo number");\r
- crami(i, 2);\r
- proutn("- ");\r
+ proutn("Target sector for torpedo number %d- ", i);\r
key = scan();\r
if (key != IHREAL) {\r
huh();\r
/* misfire! */\r
r = (Rand()+1.2) * r;\r
if (n>1) {\r
- prouts("***TORPEDO NUMBER");\r
- crami(i, 2);\r
- prouts(" MISFIRES.");\r
+ prouts("***TORPEDO NUMBER %d MISFIRES", i);\r
}\r
else prouts("***TORPEDO MISFIRES.");\r
skip(1);\r
if (shldup != 0 || condit == IHDOCKED) r *= 1.0 + 0.0001*shield;\r
if (n != 1) {\r
skip(1);\r
- proutn("Track for torpedo number");\r
- crami(i, 2);\r
- proutn("- ");\r
+ proutn("Track for torpedo number %d- ", i);\r
}\r
else {\r
skip(1);\r
if (icas) {\r
skip(1);\r
prout("McCoy to bridge- \"Severe radiation burns, Jim.");\r
- proutn(" ");\r
- crami(icas, 1);\r
- prout(" casualties so far.\"");\r
+ prout(" %d casualties so far.\"", icas);\r
casual -= icas;\r
}\r
skip(1);\r
key = scan();\r
}\r
if (key != IHREAL && nenhere != 0) {\r
- proutn("Phasers locked on target. Energy available =");\r
- cramf(ifast?energy-200.0:energy,1,2);\r
- skip(1);\r
+ prout("Phasers locked on target. Energy available = %.2f", ifast?energy-200.0:energy);\r
}\r
do {\r
while (key != IHREAL) {\r
}\r
rpow = aaitem;\r
if (rpow >= (ifast?energy-200:energy)) {\r
- proutn("Energy available= ");\r
- cramf(ifast?energy-200:energy, 1,2);\r
+ proutn("Energy available= %.2f",\r
+ ifast?energy-200:energy);\r
skip(1);\r
key = IHEOL;\r
}\r
prout("phaser energy.");\r
}\r
else {\r
- cramf(extra, 0, 2);\r
- prout(" expended on empty space.");\r
+ prout("%d expended on empty space.", (int)extra);\r
}\r
}\r
break;\r
int ii = game.kx[k], jj = game.ky[k];\r
int ienm = game.quad[ii][jj];\r
if (msgflag) {\r
- proutn("Energy available= ");\r
- cramf(energy-.006-(ifast?200:0), 0, 2);\r
+ proutn("Energy available= %.2f",\r
+ energy-.006-(ifast?200:0));\r
skip(1);\r
msgflag = 0;\r
rpow = 0.0;\r
int irec=(fabs(game.kpower[k])/(PHASEFAC*pow(0.9,game.kdist[k])))*\r
(1.01+0.05*Rand()) + 1.0;\r
kz = k;\r
- proutn("(");\r
- crami(irec, 1);\r
- proutn(") ");\r
+ proutn("(%d)", irec);\r
}\r
proutn("units to fire at ");\r
crmena(0, ienm, 2, ii, jj);\r
ii = game.kx[kk];\r
jj = game.ky[kk];\r
if (hit > 0.005) {\r
- cramf(hit, 0, 2);\r
- proutn(" unit hit on ");\r
+ proutn("%d unit hit on ", (int)hit);\r
}\r
else\r
proutn("Very small hit on ");\r
else /* decide whether or not to emasculate klingon */\r
if (kpow > 0 && Rand() >= 0.9 &&\r
kpow <= ((0.4 + 0.4*Rand())*kpini)) {\r
- proutn("***Mr. Spock- \"Captain, the vessel at");\r
- cramlc(2,ii,jj);\r
- skip(1);\r
+ prout("***Mr. Spock- \"Captain, the vessel at ",\r
+ cramlc(sector,ii,jj));\r
prout(" has just lost its firepower.\"");\r
game.kpower[kk] = -kpow;\r
}\r