Oops when stuck cargo snaps to new ship, plane or land unit

When units somehow get stuck on a dead carrier, a new build reusing
the dead carrier's UID picks up its cargo.  The cargo gets teleported
to its new carrier when the carrier moves.

Oops when a ship, plane or land unit is created with cargo.  To
recover, destroy the cargo.
This commit is contained in:
Markus Armbruster 2011-07-05 21:06:40 +02:00
parent 3de1e8be28
commit 6fb5caf633
5 changed files with 22 additions and 9 deletions

View file

@ -28,7 +28,7 @@
*
* Known contributors to this file:
* Ron Koenderink, 2006-2007
* Markus Armbruster, 2006
* Markus Armbruster, 2006-2011
*/
#ifndef UNIT_H
@ -59,7 +59,7 @@ extern void unit_list(struct emp_qelem *);
extern void unit_put(struct emp_qelem *list, natid actor);
extern char *unit_path(int, struct empobj *, char *);
extern void unit_view(struct emp_qelem *);
extern void unit_update_cargo(struct empobj *);
extern int 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 *);