empserver/include
Markus Armbruster 3cf29456fe Rewrite the broken code to move cargo with its carrier
The old code did not move a carrier's cargo (planes, land units,
nukes) when the carrier moved.  Instead, it fixed up the location in
the postread callback.  Anything not going through ef_read(), in
particular the update, saw it in its old, incorrect location, until a
fixed up copy got written back.

Moreover, the timestamp did not change when cargo moved, so
incremental dumps did not pick up the movement.

The new code moves the cargo along with the carrier.

New unit_update_cargo() moves or destroys a carrier's cargo (planes,
land units, nukes) along with the carrier.  Call it from
shp_prewrite(), pln_prewrite() and lnd_prewrite() when the carrier
moves or gets destroyed.

Remove the code to destroy cargo from shp_prewrite(), pln_prewrite(),
lnd_prewrite().

Remove the code to fix up cargo location from pln_postread(),
lnd_postread(), nuk_postread().

This changes the message for ship and land unit cargo getting
destroyed from "sunk" and "MIA" to "lost".
2008-09-12 21:34:07 -04:00
..
budg.h Update copyright notice 2008-01-19 10:15:37 +01:00
com.h Update copyright notice 2008-01-19 10:15:37 +01:00
combat.h Update copyright notice 2008-01-19 10:15:37 +01:00
commands.h Update copyright notice 2008-01-19 10:15:37 +01:00
commodity.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
damage.h Update copyright notice 2008-01-19 10:15:37 +01:00
distribute.h Update copyright notice 2008-01-19 10:15:37 +01:00
econfig-spec.h Replace econfig key lost_items_timeout by lost_keep_hours 2008-09-12 18:05:58 -04:00
empio.h Update copyright notice 2008-01-19 10:15:37 +01:00
empobj.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
empthread.h Make empth_name() and empth_set_name() take a thread argument 2008-09-11 19:25:34 -04:00
file.h New struct empfile callback onresize 2008-09-08 21:30:37 -04:00
game.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
ioqueue.h Update copyright notice 2008-01-19 10:15:37 +01:00
item.h Replace some typedef names by enum tags. 2008-03-14 20:25:42 +01:00
journal.h Update known contributors comments 2008-08-03 08:04:08 -04:00
land.h Get rid of ship and land unit load counters 2008-09-08 21:32:56 -04:00
loan.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
lost.h Expire lost items at the update instead of continuously 2008-09-12 18:05:58 -04:00
lwp.h New empth_name() and empth_set_name() 2008-09-11 14:46:31 -06:00
map.h Fix MAPWIDTH() for arguments other than 1 2008-08-20 07:40:51 -04:00
match.h Update copyright notice 2008-01-19 10:15:37 +01:00
misc.h Get rid of RET_SYS, just use RET_FAIL 2008-08-03 11:34:00 -04:00
mission.h Update copyright notice 2008-01-19 10:15:37 +01:00
nat.h Fix xdump realm to dump player instead of absolute coordinates 2008-08-26 21:42:32 -04:00
news.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
nsc.h Make the item iterator capable of iterating over a cargo list 2008-09-12 18:46:54 -04:00
nuke.h Enable the new nuk_on_plane(), replacing the old one 2008-09-08 21:32:52 -04:00
optlist.h Update known contributors comments 2008-03-14 20:25:44 +01:00
path.h Simplify routech[] 2008-08-27 21:30:56 -04:00
plague.h Update copyright notice 2008-01-19 10:15:37 +01:00
plane.h Get rid of struct plnstr member pln_nuktype 2008-09-08 21:32:53 -04:00
player.h Fix treatment of EOF from player 2008-07-15 06:35:56 -04:00
power.h Update copyright notice 2008-01-19 10:15:37 +01:00
product.h Update copyright notice 2008-01-19 10:15:37 +01:00
proto.h Update copyright notice 2008-01-19 10:15:37 +01:00
prototypes.h Make the item iterator capable of iterating over a cargo list 2008-09-12 18:46:54 -04:00
queue.h New emp_searchque() 2008-03-14 21:00:29 +01:00
retreat.h Update copyright notice 2008-01-19 10:15:37 +01:00
sect.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
server.h Expire lost items at the update instead of continuously 2008-09-12 18:05:58 -04:00
service.h Update copyright notice 2008-01-19 10:15:37 +01:00
ship.h Get rid of ship and land unit load counters 2008-09-08 21:32:56 -04:00
tel.h Update copyright notice 2008-01-19 10:15:37 +01:00
trade.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
treaty.h Add sequence numbers to game state 2008-05-17 22:50:30 +02:00
types.h Update copyright notice 2008-01-19 10:15:37 +01:00
unit.h Rewrite the broken code to move cargo with its carrier 2008-09-12 21:34:07 -04:00
update.h Update copyright notice 2008-01-19 10:15:37 +01:00
version.h Update copyright notice 2008-01-19 10:15:37 +01:00
xdump.h Give some identifiers internal linkage 2008-08-09 08:40:04 -04:00
xy.h Rework code dealing with struct range fixing many bugs 2008-08-20 07:40:32 -04:00