K 10 svn:author V 7 freeciv K 8 svn:date V 27 1998-10-16T13:22:11.000000Z K 7 svn:log V 1734 dwp@mso.anu.edu.au: Improved the internals of the help system to ensure (now and in the future) better consistency on what units, techs, etc, are shown. There are now well defined sections in helpdata.txt for the following categories: unit types, techs, improvements, wonders. Within each category, say units, a help node which doesn't match any actual unit (in terms of unit_type_exists(), ie, implemented units), is omitted. Any actual unit missing in the helpdata.txt has a help node automatically generated (as if there was an empty entry in helpdata.txt). Finally each category list is automatically sorted alphabetically. I moved the "boottime" stuff in client/packhand.c:handle_game_info() into client/civclient.c:set_client_state(), because I think thats more correct in the case that a client disconnects and then reconnects without quiting. Also now the help system is rebootable, because it depends (in principle, if not in practice) on set_civ_style(), and in future will depend on rulesets, which could change if you quit and then reconnect to a different game. I removed the "indent" field of the struct help_item, because it wasn't actually used. I changed to help nodes data to use a genlist rather than having its own implementation of a singlely linked list. (Mainly I wanted to be able to use genlist_sort().) In helpdata.txt I changed the "@" tags (which I had introduced in a previous enhancement) to @START_UNITS, @END_UNITS etc to reflect the new "category sections". With the new auto-generation of help nodes, any nodes with blank text in helpdata.txt could in principle be removed. I initially did that, but then decided to leave them in, so that its easy to add any extra text for any given node. END