(EFF_OWNER): The assertion that EFF_OWNER implies ef_read() sets

player->owner is no longer used.  Use it to indicate that owner can be
accessed through struct genitem, similar to EFF_XY and EFF_GROUP.
(xdump): Fix ownership checking.  Old version worked only when
nxtitem() set player->owner.

(empfile): Set EFF_OWNER for EF_LOST.  This fixes `xdump lost'
disclosing other countries' losses.
(loststr): Document implications of EFF_OWNER.

(empfile): Set EFF_OWNER for EF_NATION.
(natstr): Rearrange members for EFF_OWNER, document.
(nat_ca): Unused so far.  Clean it up, add most missing selectors.
(fileinit): Use it.  This implements `xdump nation'.

(fileinit): Simplify setting map file size.
This commit is contained in:
Markus Armbruster 2005-05-29 14:14:33 +00:00
parent b111abc2c5
commit 326ac671ba
7 changed files with 33 additions and 36 deletions

View file

@ -58,11 +58,9 @@ struct empfile {
/*
* struct empfile flags
*
* EFF_XY and EFF_GROUP assert that coordinates / group of such a
* file's record can be safely obtained by dereferencing its memory
* address cast to struct genitem *.
*
* EFF_OWNER asserts that player->owner is set by ef_read().
* EFF_XY / EFF_OWNER / EFF_GROUP assert that coordinates / owner /
* group of such a file's record can be safely obtained by
* dereferencing its memory address cast to struct genitem *.
*/
#define EFF_XY bit(0) /* has location */
#define EFF_MEM bit(1) /* stored entirely in-memory */