/*
* Empire - A multi-player, client/server Internet based war game.
- * Copyright (C) 1986-2013, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ * Copyright (C) 1986-2016, Dave Pare, Jeff Bailey, Thomas Ruschak,
* Ken Stevens, Steve McClure, Markus Armbruster
*
* Empire is free software: you can redistribute it and/or modify
* filetable.c: Empire game data file descriptions.
*
* Known contributors to this file:
- * Markus Armbruster, 2005-2013
+ * Markus Armbruster, 2005-2014
*/
#include <config.h>
+#include <assert.h>
#include <stddef.h>
#include "commodity.h"
#include "file.h"
#include "ship.h"
#include "server.h"
#include "trade.h"
-#include "treaty.h"
#include "version.h"
#include "xy.h"
static void lchr_oninit(void *);
static void nchr_oninit(void *);
-/* Number of elements in ARRAY. */
+/* Number of elements in ARRAY. */
#define SZ(array) (sizeof(array) / sizeof((array)[0]))
/* Initializers for members flags... */
EFF_TYPED | EFF_XY | EFF_OWNER | EFF_GROUP),
lnd_oninit, NULL, NULL, NULL},
{EF_NUKE, "nuke", NULL, "nuke", nuke_ca, EF_BAD,
- UNMAPPED_CACHE(struct nukstr, -1, EFF_TYPED | EFF_XY | EFF_OWNER),
+ UNMAPPED_CACHE(struct nukstr, -1,
+ EFF_TYPED | EFF_XY | EFF_OWNER | EFF_GROUP),
nuk_oninit, NULL, NULL, NULL},
{EF_NEWS, "news", NULL, "news", news_ca, EF_BAD,
UNMAPPED_CACHE(struct nwsstr, -1, 0),
NULL, NULL, NULL, NULL},
- {EF_TREATY, "treaty", NULL, "treaty", treaty_ca, EF_BAD,
- UNMAPPED_CACHE(struct trtstr, -1, EFF_TYPED),
- NULL, NULL, NULL, NULL},
{EF_TRADE, "trade", "trade lot", "trade", trade_ca, EF_BAD,
UNMAPPED_CACHE(struct trdstr, -1, EFF_TYPED | EFF_OWNER),
NULL, NULL, NULL, NULL},
SYMTAB(EF_RETREAT_FLAGS, "retreat-flags", retreat_flags),
SYMTAB(EF_SECTOR_NAVIGATION, "sector-navigation", sector_navigation),
SYMTAB(EF_SHIP_CHR_FLAGS, "ship-chr-flags", ship_chr_flags),
- SYMTAB(EF_TREATY_FLAGS, "treaty-flags", treaty_flags),
/* Views */
{EF_COUNTRY, "country", NULL, NULL, cou_ca, EF_NATION,
void
empfile_fixup(void)
{
+ struct empfile *ep;
+
empfile[EF_SECTOR].nent = WORLD_SZ();
empfile[EF_MAP].size = empfile[EF_BMAP].size = WORLD_SZ();
+
+ for (ep = empfile; ep->uid >= 0; ep++)
+ assert(!ep->cadef || ep->size <= EF_WITH_CADEF_MAX_ENTRY_SIZE);
}