|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T k
Length: 1629 (0x65d)
Types: TextFile
Names: »kill_alm.c«
└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
└─⟦this⟧ »EUUGD18/General/Galaxy/src/kill_alm.c«
/*
* %W% (mrdch&amnnon) %G%
*/
# include "header"
killalm (s)
char *s;
{
planet * pp;
int i,
j,
nalms;
pp = getpl (s); /* get planet id */
skipwhite (s); /* go to the no. of alms */
nalms = atoi (s); /* see how many he wants to kill */
if (nalms <= 0) {
say ("But sir, this will not change much !!");
return;
}
skipword (s); /* jump over that no. */
assert_end (s); /* see if it ending nicely */
if (pp -> whos == player) {
j = nalms * REMOVE_COST;
assert_money (j); /* see if he has that much */
j = (nalms > pp -> alms) ? pp -> alms : nalms;
teller[player] -= j * REMOVE_COST;/* take min. */
pp -> alms -= j;
if (pp -> alms < 0)
pp -> alms = 0;
if (pp -> alms) {
say ("The planet is not yet clean, sir!!");
return;
}
else {
say ("It is perfectly safe now, sir.");
return;
}
}
else { /* remove from the enemy teritory */
for (i = 0; i < 10; i++)
if (pp -> gate[i] -> whos == player)
break;
if (i == 10) {
say ("But sir, we don't have access to that planet!!");
return;
}
i = nalms * ALM_KILL_COST;
assert_money (i); /* see if he has that much */
teller[player] -= i; /* take money IN ANY CASE !! */
pp -> alms -= nalms;
if (pp -> alms < 0)
pp -> alms = 0;
}
}