6 int known; /* A bitvector on the server side, an
7 enum known_type on the client side.
9 int sent; /* Indicates if the client know the tile
10 as TILE_KNOWN_NODRAW. A bitvector like known.
11 Not used on the client side. */
12 int assigned; /* these can save a lot of CPU usage -- Syela */
13 city *worked; /* city working tile, or NULL if none */
15 byte move_cost[8]; /* don't know if this helps! */
16 reserved byte[2]; /* padding */
21 genlist_link null_link;
22 genlist_link *head_link;
23 genlist_link *tail_link;
26 structure genlist_link {
33 tile grid[map.xsize*map.ysize];
36 structure ceff_vector {
48 int ptr; /* the data */
49 int size; /* size of one object */
50 int n; /* number most recently requested */
51 int n_alloc; /* total number allocated */
72 int num_start_positions;
73 int fixed_start_positions;
76 int have_rivers_overlay;
79 map_position start_positions[63];
82 structure map_position {
105 /* the productions */
115 int science_bonus; /* more CPU savings! */
126 /* city can't be incited if INCITE_IMPOSSIBLE_COST */
127 int incite_revolt_cost;
129 bit is_building_unit; /* boolean unit/improvement */
131 int currently_building;
133 byte improvements[200];
140 unit_list units_supported;
141 int steal; /* diplomats steal once; for spies, gets harder */
148 int turn_last_built; /* The last year in which something was built */
149 int turn_changed_target; /* Suffer shield loss at most once per turn */
150 int changed_from_id; /* If changed this turn, what changed from (id) */
151 bit changed_from_is_unit; /* If changed this turn, what changed from (unit?) */
153 int disbanded_shields; /* If you disband unit in a city. Count them */
154 int caravan_shields; /* If caravan has helped city to build wonder. */
155 int before_change_shields; /* If changed this turn, shields before penalty */
156 int anarchy; /* anarchy rounds count */
157 int rapture; /* rapture rounds count */
162 int original; /* original owner */
163 int city_options; /* bitfield; positions as enum city_options */
165 /* server variable. indicates if the city map is synced with the client. */
168 /* info for dipl/spy investigation -- used only in client */
169 unit_list info_units_supported;
170 unit_list info_units_present;
172 /* ai_city ai; at end...don't need to actually have*/