(buil, drnuke_const, opt_DRNUKE, show, show_nuke_build)
(show_nuke_capab, vers, xdvisible, build.t, Options.t): Remove opt_DRNUKE and replace with the following check drnuke_const > MIN_DRNUKE_CONST. Set MIN_DRNUKE_CONST to 0.001 to prevent issues with tiny values. Change the default drnuke_const to 0.0 because in the stock game opt_DRNUKE was disabled.
This commit is contained in:
parent
d5f6d74d05
commit
b7d0b66161
11 changed files with 20 additions and 22 deletions
|
@ -195,12 +195,13 @@ buil(void)
|
|||
np = &nchr[type];
|
||||
rqtech = np->n_tech;
|
||||
if (rqtech > tlev
|
||||
|| (opt_DRNUKE && np->n_tech * drnuke_const > rlev))
|
||||
|| (drnuke_const > MIN_DRNUKE_CONST &&
|
||||
np->n_tech * drnuke_const > rlev))
|
||||
type = -1;
|
||||
}
|
||||
if (type < 0) {
|
||||
int tt = tlev;
|
||||
if (opt_DRNUKE)
|
||||
if (drnuke_const > MIN_DRNUKE_CONST)
|
||||
tt = (tlev < (rlev / drnuke_const) ? (int)tlev :
|
||||
(int)(rlev / drnuke_const));
|
||||
pr("You can't build that!\n");
|
||||
|
|
|
@ -90,7 +90,7 @@ show(void)
|
|||
show_news(99999);
|
||||
return RET_OK;
|
||||
}
|
||||
if (opt_DRNUKE)
|
||||
if (drnuke_const > MIN_DRNUKE_CONST)
|
||||
tlev = ((rlev / drnuke_const) > tlev ? tlev :
|
||||
(rlev / drnuke_const));
|
||||
bfunc = show_nuke_build;
|
||||
|
|
|
@ -173,7 +173,7 @@ vers(void)
|
|||
|
||||
if (!ef_nelem(EF_NUKE_CHR))
|
||||
pr("Nukes are disabled.\n");
|
||||
else if (opt_DRNUKE) { /* NUKES && DRNUKE enabled */
|
||||
else if (drnuke_const > MIN_DRNUKE_CONST) {
|
||||
pr("In order to build a nuke, you need %1.2f times the tech level in research\n", drnuke_const);
|
||||
pr("\tExample: In order to build a 300 tech nuke, you need %d research\n\n", (int)(300.0 * drnuke_const));
|
||||
}
|
||||
|
|
|
@ -242,7 +242,7 @@ xdvisible(int type, void *p)
|
|||
return player->god || tlev <= (int)(1.25 * natp->nat_level[NAT_TLEV]);
|
||||
case EF_NUKE_CHR:
|
||||
tlev = ((struct nchrstr *)p)->n_tech;
|
||||
if (opt_DRNUKE) {
|
||||
if (drnuke_const > MIN_DRNUKE_CONST) {
|
||||
natp = getnatp(player->cnum);
|
||||
if (tlev > (int)((int)(1.25 * natp->nat_level[NAT_RLEV])
|
||||
/ drnuke_const))
|
||||
|
|
|
@ -199,8 +199,7 @@ double buil_tower_bc = 7500.0; /* cash required to build a bridge tower */
|
|||
/* opt_SLOW_WAR */
|
||||
int War_Cost = 1000; /* Cost to declare war */
|
||||
|
||||
/* opt_DRNUKE */
|
||||
float drnuke_const = .33; /* research must be at least drnuke_const*tech */
|
||||
float drnuke_const = 0.0; /* research must be at least drnuke_const*tech */
|
||||
/* in order to build a nuke. For example, if
|
||||
* drnuke_const is .25, you need a 75 res to
|
||||
* build a nuke that takes 300 tech
|
||||
|
|
|
@ -42,7 +42,6 @@ int opt_BLITZ = 1;
|
|||
int opt_BRIDGETOWERS = 1;
|
||||
int opt_DEFENSE_INFRA = 0;
|
||||
int opt_DEMANDUPDATE = 1;
|
||||
int opt_DRNUKE = 0;
|
||||
int opt_EASY_BRIDGES = 1;
|
||||
int opt_FALLOUT = 1;
|
||||
int opt_FUEL = 0;
|
||||
|
|
|
@ -173,10 +173,11 @@ show_nuke_build(int tlev)
|
|||
avail = NUK_BLD_WORK(np->n_lcm, np->n_hcm, np->n_oil, np->n_rad);
|
||||
if (np->n_tech > tlev)
|
||||
continue;
|
||||
pr("%-13.13s %3d %3d %4d %4d %5d %4d %3d $%6d\n",
|
||||
pr("%-13.13s %3d %3d %4d %4d %5d %4d %3.0f $%6d\n",
|
||||
np->n_name, np->n_lcm, np->n_hcm, np->n_oil,
|
||||
np->n_rad, avail, np->n_tech,
|
||||
opt_DRNUKE ? (int)(np->n_tech * drnuke_const) + 1 : 0,
|
||||
drnuke_const > MIN_DRNUKE_CONST ?
|
||||
(np->n_tech * drnuke_const) + 1.0 : 0.0,
|
||||
np->n_cost);
|
||||
}
|
||||
}
|
||||
|
@ -193,10 +194,11 @@ show_nuke_capab(int tlev)
|
|||
for (np = nchr; np->n_name; np++) {
|
||||
if (np->n_tech > tlev)
|
||||
continue;
|
||||
pr("%-13.13s %4d %3d %3d %4d %3d $%7d ",
|
||||
pr("%-13.13s %4d %3d %3d %4d %3.0f $%7d ",
|
||||
np->n_name, np->n_blast, np->n_dam,
|
||||
np->n_weight, np->n_tech,
|
||||
opt_DRNUKE ? (int)(np->n_tech * drnuke_const) + 1 : 0,
|
||||
drnuke_const > MIN_DRNUKE_CONST ?
|
||||
(np->n_tech * drnuke_const) + 1.0 : 0.0,
|
||||
np->n_cost);
|
||||
for (i = j = 0; i < 32; i++) {
|
||||
if (!(np->n_flags & bit(i)))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue