Summary: Value of S_LAST is saved in savegame for bases
Submitted by: jtn
Submitted on: Monday 03/29/10 at 02:56
Severity: 3 - Normal
Priority: 5 - Normal
Assigned to: None
Discussion Lock: Any
Operating System: None
The comments for "enum tile_special_type" indicate that S_LAST is an
"internal value not saved". However, S_LAST is used in the unit structure to
indicate that the unit is working on a base (specifically, for
ACTIVITY_PILLAGE), so it does get saved.
This doesn't break anything now, but if a new special were ever added where
S_LAST is now, there would be trouble with old savegames. This needs fixing
before that happens.
Probably the answer is to allocate something like S_BASE where the current
S_LAST is (for use in units only, should never appear on a tile). There'll
need to be some careful juggling of the various internal encodings where
special/base is encoded into a single value by adding S_LAST to the base ID.
Reply to this item at:
Message sent via/by Gna!
Freeciv-dev mailing list