Stop ships, planes, land units and nukes on violent takeover
This is for consistency with sectors, and for the same reason: pause before spending money on stuff taken in the heat of battle.
This commit is contained in:
parent
e7ce50405e
commit
574e20f6f5
2 changed files with 10 additions and 3 deletions
|
@ -4,17 +4,18 @@
|
|||
.SY "stop <TYPE> <SECTS|SHIPS|PLANES|UNITS|NUKES>"
|
||||
The stop command stops production and repairs for one update.
|
||||
.s1
|
||||
Stopped sectors don't gain in efficiency, don't produce anything, and
|
||||
Stopped sectors don't gain efficiency, don't produce anything, and
|
||||
don't work on ships, planes or units there, but otherwise function
|
||||
normally: they still pay tax, distribute goods and so forth.
|
||||
.s1
|
||||
Stopping ships, planes and land units works just the same: they don't
|
||||
gain in efficiency, they don't produce anything (if applicable), and
|
||||
gain efficiency, they don't produce anything (if applicable), and
|
||||
they don't work on embarked land units or planes.
|
||||
.s1
|
||||
Stopping nukes doesn't do anything in particular, right now.
|
||||
.s1
|
||||
Conquering a sector stops it automatically. Stop orders expire at the
|
||||
Conquering a sector, ship, plane, land unit or nuke stops it
|
||||
automatically. Stop orders expire at the
|
||||
update. Use the start command to countermand them manually.
|
||||
.s1
|
||||
.EX stop se 2,0
|
||||
|
|
|
@ -225,6 +225,7 @@ takeover_unit(struct empobj *unit, natid newown)
|
|||
struct shpstr *sp;
|
||||
struct plnstr *pp;
|
||||
struct lndstr *lp;
|
||||
struct nukstr *np;
|
||||
int type;
|
||||
struct nstr_item ni;
|
||||
union empobj_storage cargo;
|
||||
|
@ -237,19 +238,24 @@ takeover_unit(struct empobj *unit, natid newown)
|
|||
switch (unit->ef_type) {
|
||||
case EF_SHIP:
|
||||
sp = (struct shpstr *)unit;
|
||||
sp->shp_off = 1;
|
||||
break;
|
||||
case EF_PLANE:
|
||||
pp = (struct plnstr *)unit;
|
||||
if (pp->pln_mobil > 0)
|
||||
pp->pln_mobil = 0;
|
||||
pp->pln_off = 1;
|
||||
break;
|
||||
case EF_LAND:
|
||||
lp = (struct lndstr *)unit;
|
||||
if (lp->lnd_mobil > 0)
|
||||
lp->lnd_mobil = 0;
|
||||
lp->lnd_off = 1;
|
||||
lp->lnd_harden = 0;
|
||||
break;
|
||||
case EF_NUKE:
|
||||
np = (struct nukstr *)unit;
|
||||
np->nuk_off = 1;
|
||||
break;
|
||||
default:
|
||||
CANT_REACH();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue