Wipe orders when ship, plane, land unit or nuke changes owner

Use new unit_wipe_orders() for violent takeover (takeover_unit() on
behalf of assault, attack, board, lboard, paradrop and pboard), and
peaceful takeover (unit_give_away() on behalf of arm, disarm, load,
unload, lload, lunload, scrap, scuttle, tend, trade).

Before, takeover_unit() cleared only group, mission and ship retreat
orders, and unit_give_away() only group and mission.  Orders that
weren't cleared:

* Mission op area (visible in xdump)

* Ship autonav orders

* Ship sail path including ship to follow and mobility quota

* Plane range limit

* Land unit retreat orders and retreat percentage
This commit is contained in:
Markus Armbruster 2008-09-14 19:32:34 -04:00
parent 5f6e27ff80
commit e7ce50405e
4 changed files with 57 additions and 8 deletions

View file

@ -59,3 +59,4 @@ extern void unit_view(struct emp_qelem *);
extern void unit_update_cargo(struct empobj *);
extern void unit_drop_cargo(struct empobj *, natid);
extern void unit_give_away(struct empobj *, natid, natid);
extern void unit_wipe_orders(struct empobj *);