webperimental: killstack decides stack protects.
[freeciv.git] / server / cityturn.h
blob315802d66c16ef2ce29e81720f7fdd7d44415f84
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)
6 any later version.
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 */
19 #include "fc_types.h"
21 struct conn_list;
22 struct cm_result;
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 */