config: Make work to build units independently configurable

The work required for build and repairs is traditionally a function of
build materials: 20 + lcm + 2*hcm for ships, planes and land units,
and (lcm + 2*hcm + oil + rad)/5 for nukes.  Make it independently
configurable instead, via new ship-chr, plane-chr, land-chr, nuke-chr
selector bwork, backed by new struct mchrstr member m_bwork, struct
plchrstr member pl_bwork, struct lchrstr member l_bwork, struct
nchrstr member n_bwork.  Keep the required work exactly the same for
now.

Clients that compute work from materials need to be updated.  Easy,
since build work is now exposed in xdump.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
Markus Armbruster 2016-05-27 13:39:11 +02:00
parent 14af586b57
commit 68c7c08a58
19 changed files with 319 additions and 351 deletions

View file

@ -33,7 +33,7 @@ tests/empdump/xundump-errors/colhdr-sep:2: bad field separator after field 1
tests/empdump/xundump-errors/colhdr-symidx:2: symbolic index in header field 1 not yet implemented
tests/empdump/xundump-errors/colhdr-unexp2:2: expected header 'pkg(0)' in field 7
tests/empdump/xundump-errors/colhdr-unk:2: unknown header 'xxx' in field 1
tests/empdump/xundump-errors/fld-ambsym:2: ambiguous flags symbol 's' in field 29
tests/empdump/xundump-errors/fld-ambsym:2: ambiguous flags symbol 's' in field 30
tests/empdump/xundump-errors/fld-badnum:3: field 2 can't hold this value
tests/empdump/xundump-errors/fld-constnum:3: value for field 1 must be 0
tests/empdump/xundump-errors/fld-conststr:3: value for field 1 must be "road network"
@ -63,6 +63,7 @@ tests/empdump/xundump-errors/fld-eof:2: field 'frnge' missing
tests/empdump/xundump-errors/fld-eof:2: field 'glim' missing
tests/empdump/xundump-errors/fld-eof:2: field 'nxlight' missing
tests/empdump/xundump-errors/fld-eof:2: field 'nchoppers' missing
tests/empdump/xundump-errors/fld-eof:2: field 'bwork' missing
tests/empdump/xundump-errors/fld-eof:2: field 'tech' missing
tests/empdump/xundump-errors/fld-eof:2: field 'cost' missing
tests/empdump/xundump-errors/fld-eof:2: field 'flags' missing