Follow-up Comment #25, bug #16383 (project freeciv):
The application of patch #4609 encourages an entirely different approach to
this issue, as reflected in the attached patch (applies over r24741). By
separating the nativity check logic from everything else, it properly handles
cases where nativity continuity is not provided by the same road used for
movement bonus (as suggested in comment #24). I presume that all bases that
provide nativity automatically interface with all possible roads for the
purpose of nativity: changing this should be done in future, rather than here
(as there are lots of places that need changing, and much of the underlying
work exists in other open patches).
The test for transport capacity is not included in the function in large
part because of bug #21871: in the event this is applied first, that should be
extended to use potentiality for transport tests for this new use in
pathfinding, and if that is applied first, this should use potential rather
than current capacity in the pathfinding test.
The test for being a city also isn't included because we do it so many
other places anyway that it ends up being a duplicate call in both places.
In the event that patch #3829 lands, is_native_move() should probably be
to use the integrators cache. Similarly, if patch #3901 lands this needs to
be adjusted to apply is_native_move() to the new inline test functions, rather
Additional Item Attachment:
File name: enforce-move-nativity.patch Size:7 KB
Reply to this item at:
Message sent via/by Gna!
Freeciv-dev mailing list