Commit graph

1639 commits

Author SHA1 Message Date
28787caa95 Improve error messages. 2006-02-08 22:44:22 +00:00
b11aa718ce The separation between parsing and semantic actions is awkward and
leaks memory; rework it:
(deffld): New; semantic action for field headers.
(xufldname): Use it instead of storing a value for xucolumnheader().
(xucolumnheader): Remove, use xuflds() directly instead.
(setnum, setstr, setsym): New; semantic actions for field values.
(xufld): Use it instead of storing a value for xuloadrow().
(xuloadrow): Remove.  Was incomplete.
(xufldname, xufld, xuflds): Remove parameter values.  Callers
changed.
(cur_type, cur_obj, nxt_sel, nxt_idx, nxtfld, ca4fld, getsymtab): New
helpers.
(xundump): Initialize them.
(enum_value, value, freeflds, xunsymbol): Remove.

(mtsymset, add2symset): New.
(xufld): Use them to build a symbol set along the parse.

(xufldname, xufld, xuheader, xutrailer, xundump): Increment lineno
when and only when a linefeed is consumed, to make sure it is correct.
Move some semantic checks so that errors get reported for the correct
line.

(xundump): Use compare filenames as pointers, not strings, when
checking whether to reset lineno.

(xundump): Keep empfile[type] consistent during parse, to make
ef_ptr() usable.

(xundump): Don't call ep->init() on sentinels.
(xuinitrow): Unused, remove.
2006-02-08 22:32:53 +00:00
054d59b323 (xundump): Precise value for need_sentinel. 2006-02-08 22:02:13 +00:00
d329c4f8e6 (xutrailer): Fix parsing of /config. Change human-readable syntax not
to accept number of records.  Don't skip empty lines after trailer.
2006-02-08 21:53:04 +00:00
72127c838f (xuheader): Check for unexpected table before oopsing on !EFF_MEM. 2006-02-08 21:41:48 +00:00
8a6438b4e0 (xufldname, xufld): New, factored out of xuflds and specialized for
headers and for body lines, respectively.
(xflds): Call them through new parameter parse.  Callers changed.
2006-02-08 20:56:39 +00:00
361e33d70f (xucolumnheader): Don't gripe when xuflds() fails, because that one
already griped.
2006-02-08 20:49:47 +00:00
2dcf1fd1c8 (MIN, MAX): Fix insufficiently parenthesized macro expansion. 2006-02-06 21:56:38 +00:00
25c9f2c66f (nation_status): Lacked sentinel. 2006-02-06 20:12:42 +00:00
973da267eb (verify_row): Check all values against symbol tables, not just
non-negative ones.

(verify_row): Fix off by one in non-symbol table index check.
2006-02-06 07:57:04 +00:00
8ae71216d4 (verify_row): Check table references regardless of target table. Also
fixes the previous revision.
2006-02-06 07:53:42 +00:00
7261d6a3e0 (level): Add value -1. 2006-02-06 07:41:55 +00:00
3879ab9643 (meta_type): Fix NSC_TYPE entry to match specification. 2006-02-05 20:20:46 +00:00
e71509b32f (verify_row): Check uid. 2006-02-05 19:59:08 +00:00
b121b58e91 (verify_row): NSC_BITS implies symbol_ca. Oops if violated. 2006-02-05 19:57:10 +00:00
afd93afbd3 (verify_row): Simplify control structure. No functional change. 2006-02-05 19:55:05 +00:00
2258ec7703 Document uid selector convention. 2006-02-05 19:30:20 +00:00
Ron Koenderink
b677413cfd (zdon): Display current number of missed updates and number of
missed updates before vetoing begins.
2006-02-05 19:19:00 +00:00
1feb0c433d (verify_row): Fix for flags that don't fit into int. 2006-02-05 19:16:37 +00:00
1e17cc77cb (verify_row): if/else with negated condition is confusing. Negate
condition, swap conditional statements.
2006-02-05 19:13:58 +00:00
b11b81da8f (verify_row): Plug memory leak. 2006-02-05 19:08:49 +00:00
8add5fbb86 (realm_ca): Remove selector uid. It's not useful for players, and not
needed for xdump, because it doesn't occur as ca_table.

(lost_ca): Remove selector uid.  Reasons as for realm_ca.  The value
is incorrect in unused records, which is semantically tolerable, but
needlessly complicated to check in ef_verify.c.

(news_ca): Remove selector uid.  Reasons as for realm_ca, plus the
value is incorrect, because nws_uid is not used.
2006-02-05 19:01:41 +00:00
6ece883b87 Fix bad line breaks. 2006-02-05 17:58:16 +00:00
a507f5a54c Doc fix. 2006-02-05 17:43:00 +00:00
40f3ed2e5a When sources.mk is needed to find directories, don't test whether it's
there, just use it.  If it's not there, things will fail down the
road.  Better to fail early.
2006-02-05 17:41:17 +00:00
Ron Koenderink
9f5aa41084 (vers): Add collateral damage matrix to version report.
Add unit_damage and collateral_dam to the collateral damage matrix.
Move people_damage into matrix.
2006-02-05 17:37:58 +00:00
Ron Koenderink
d7dab3ddd1 (vers): Add the following the configuration values to the version report:
torpedo_damage, flakscale, people_damage, assault_penalty,
decay_per_etu, fallout_spread, fuel_mult, max_btus and max_idle.
2006-02-05 15:52:26 +00:00
Ron Koenderink
1a539f9128 (main) [_WIN32]: Upgrade to winsock version 2.
Remove version 1.1 include files.
2006-02-05 15:47:13 +00:00
Ron Koenderink
59c8e97797 (configkeys): Make pre_update_hook and start_cash KM_INTERNAL. 2006-02-04 21:04:25 +00:00
Ron Koenderink
3db7e6201f (powe_cost): Remove powe_cost and replace with a fixed cost of 10. 2006-02-04 19:36:51 +00:00
Ron Koenderink
62e57635ea (vers): Add the following econfig values to version report:
MARK_DELAY, TRADE_DELAY, mission_mob_cost ,
money_ship, money_plane, money_land,
fort_max_interdiction_range, ship_max_interdiction_range,
land_max_interdiction_range, combat_mob and
sect_mob_neg_factor.
2006-02-02 13:20:14 +00:00
Ron Koenderink
1283f79db5 (lcarg, lcargo.t): Fix the header to match the info page.
Update the info page for the change to add civ, mil and uw.

(carg, cargo.t): Add the civ, mil and uw to cargo display.
Make the same as lcargo.  Update the info page.
2006-02-01 23:52:42 +00:00
Ron Koenderink
c500f4adc3 (lcarg, ldump): Display civ, mil, and uw cargo for land units.
Remove full name from lcarg() to make room.  Closes #889646.
2006-01-31 17:32:33 +00:00
Ron Koenderink
7b9fdf8b95 (show_news, news, empfile[], page_headings[], page_headings_symbols[]):
Change page_headings[] to struct symbol and removed
page_headings_symbols[].
2006-01-30 22:26:48 +00:00
Ron Koenderink
426eece569 Properly parse and validate column headers:
(enum_value, value, xuflds, freeflds): Parse additional syntax:
numeric and symbolic index.
(xucolumnheader): Use it to parse column header line.  Check names
and indexes match meta-data.  Symbolic indexes not yet implemented.
(xuloadrow): Reject the additional syntax.
2006-01-30 22:23:43 +00:00
Ron Koenderink
aaea73a595 Update comment to indicate page_headings[] is done. 2006-01-29 19:29:10 +00:00
Ron Koenderink
79f672969b (xuheader): Remove values[], not used. 2006-01-29 19:12:52 +00:00
Ron Koenderink
f438b74e85 (EF_PAGE_HEADINGS, page_headings_symbols, M_NOTUSED): New.
(empfile): Add it.
(rpt_ca): Use it.
2006-01-29 18:40:11 +00:00
Ron Koenderink
1bca66c061 (show_news): New.
(show): Use it to implement show news.
2006-01-29 17:44:29 +00:00
297ee5eab0 (news): Fix rev. 1.13: fail command before printing headlines. 2006-01-29 17:13:25 +00:00
Ron Koenderink
c686c5648b (ac_dog): Do not use 'ap' as a pointer to get the owner
for the call to ac_planedamage() use att_own instead.
'ap' may have been already freed in the previous call
to ac_planedamage().  This can create an invalid
news item and crash the server.
2006-01-29 13:56:35 +00:00
b659a16f03 (player_coms): Sort by element member c_form. 2006-01-29 13:51:47 +00:00
b4a76e04a3 (xdver): Dump version string. 2006-01-28 17:26:05 +00:00
c9d35a6d0a (guerrilla): Tell sector owner when partisans take over. But don't
disclose che casualties then.
2006-01-27 19:53:24 +00:00
1af78f75ef (main, print_usage): New options -h and -v.
(print_usage): Improve usage message.
2006-01-27 18:01:33 +00:00
68a7ae71b0 (main, usage): New option -v.
(usage): Improve usage message.
2006-01-27 18:00:47 +00:00
5109a30910 (vers): Don't report KSU distribution (1.04 in all known versions),
Chainsaw version (4.00 since Empire 2, ca. 1995) and Wolfpack version
(used to be the version number after the first dot).
(KSU_DIST, CHAINSAW_DIST, WOLFPACK_DIST): Unused, remove.

(version): New.
(EMP_VERS_MAJOR, EMP_VERS_MINOR, EMP_VERS_PATCH): Remove.  Users
changed to use version[] instead.  version[] is slightly easier to
initialize from configure.ac.
(check-version): No longer needed, remove.

(legal): New.
(vers, main): Show it.
2006-01-27 17:59:06 +00:00
3f0219a419 Change package name to Wolfpack Empire. Supply tarname, so it stays
empire.
2006-01-27 17:38:53 +00:00
14250e3cbc Cosmetics. 2006-01-26 18:44:39 +00:00
d8480865ae (info.nr/all, info.html/all.html): Don't pick up random junk from the
filesystem.
2006-01-23 21:33:13 +00:00