1 /**********************************************************************
2 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2, or (at your option)
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 ***********************************************************************/
14 #ifndef FC__CITYTURN_H
15 #define FC__CITYTURN_H
17 #include "support.h" /* bool type */
24 bool city_refresh(struct city
*pcity
); /* call if city has changed */
25 void city_refresh_for_player(struct player
*pplayer
); /* tax/govt changed */
27 void city_refresh_queue_add(struct city
*pcity
);
28 void city_refresh_queue_processing(void);
30 void auto_arrange_workers(struct city
*pcity
); /* will arrange the workers */
31 void apply_cmresult_to_city(struct city
*pcity
, const struct cm_result
*cmr
);
33 bool city_change_size(struct city
*pcity
, citizens new_size
,
34 struct player
*nationality
, const char *reason
);
35 bool city_reduce_size(struct city
*pcity
, citizens pop_loss
,
36 struct player
*destroyer
, const char *reason
);
37 void city_repair_size(struct city
*pcity
, int change
);
39 bool city_empty_food_stock(struct city
*pcity
);
41 void send_city_turn_notifications(struct connection
*pconn
);
42 void update_city_activities(struct player
*pplayer
);
43 int city_incite_cost(struct player
*pplayer
, struct city
*pcity
);
44 void remove_obsolete_buildings_city(struct city
*pcity
, bool refresh
);
45 void remove_obsolete_buildings(struct player
*pplayer
);
47 void choose_build_target(struct player
*pplayer
, struct city
*pcity
);
49 void nullify_prechange_production(struct city
*pcity
);
51 bool check_city_migrations(void);
53 void check_disasters(void);
55 void city_style_refresh(struct city
*pcity
);
57 #endif /* FC__CITYTURN_H */