113 :
Q_(
"?city_state:Peace"))));
299 for (
i = 0;
i < 3;
i++) {
337 for (
i = 0;
i < 3;
i++) {
560 int num = 0, value = 0;
599 static char buf[192];
741#define FUNC_TAG(var) cr_entry_##var, #var
750 {
TRUE, -8,
NULL,
N_(
"State"),
N_(
"Celebrating/Peace/Disorder"),
755 {
FALSE, 2,
NULL,
N_(
"?Happy workers:H"),
N_(
"Workers: Happy"),
757 {
FALSE, 2,
NULL,
N_(
"?Content workers:C"),
N_(
"Workers: Content"),
759 {
FALSE, 2,
NULL,
N_(
"?Unhappy workers:U"),
N_(
"Workers: Unhappy"),
761 {
FALSE, 2,
NULL,
N_(
"?Angry workers:A"),
N_(
"Workers: Angry"),
763 {
TRUE, 10,
N_(
"?city:Workers"),
764 N_(
"?happy/content/unhappy/angry:H/C/U/A"),
765 N_(
"Workers: Happy, Content, Unhappy, Angry"),
774 N_(
"?Present (units):Here"),
778 N_(
"?Supported (units):Owned"),
782 TRUE, 14,
N_(
"?food (population):Grow"),
783 N_(
"?Stock/Target:(Have/Need)"),
784 N_(
"Turns until growth/famine"),
787 {
TRUE, 10,
N_(
"Surplus"),
N_(
"?food/production/trade:F/P/T"),
788 N_(
"Surplus: Food, Production, Trade"),
790 {
FALSE, 3,
NULL,
N_(
"?Food surplus [short]:+F"),
N_(
"Surplus: Food"),
792 {
FALSE, 3,
NULL,
N_(
"?Production surplus [short]:+P"),
794 {
FALSE, 3,
NULL,
N_(
"?Production loss (waste) [short]:-P"),
796 {
FALSE, 3,
NULL,
N_(
"?Trade surplus [short]:+T"),
N_(
"Surplus: Trade"),
798 {
FALSE, 3,
NULL,
N_(
"?Trade loss (corruption) [short]:-T"),
801 {
TRUE, 10,
N_(
"Economy"),
N_(
"?gold/luxury/science:G/L/S"),
802 N_(
"Economy: Gold, Luxuries, Science"),
810 {
FALSE, 3,
NULL,
N_(
"?Culture:Clt"),
N_(
"Culture (History+Performance)"),
813 N_(
"Culture: History (and gain per turn)"),
815 {
FALSE, 3,
NULL,
N_(
"?Performance:Prf"),
N_(
"Culture: Performance"),
817 {
FALSE, 3,
NULL,
N_(
"?Continent:C"),
N_(
"Continent number"),
819 {
FALSE, 1,
N_(
"?number_trade_routes:n"),
820 N_(
"?number_trade_routes:R"),
821 N_(
"Number (and total value) of trade routes"),
823 {
FALSE, 3,
NULL,
N_(
"?pollution [short]:Pol"),
N_(
"?stats:Pollution"),
825 {
FALSE, 4,
N_(
"?plague risk [short]:Pla"),
N_(
"(%)"),
826 N_(
"Plague risk per turn"),
828 {
FALSE, 15,
NULL,
N_(
"?cma:Governor"),
N_(
"Citizen Governor"),
832 {
FALSE, 3,
NULL,
N_(
"BS"),
N_(
"Maximum units buildable per turn"),
834 {
TRUE, 9,
N_(
"Production"),
N_(
"Turns/Buy"),
838 {
TRUE, 0,
N_(
"Currently Building"),
839 N_(
"?Stock/Target:(Have/Need)"),
840 N_(
"Currently Building"),
891 "%s",
_(
"Specialists: "));
902 "%s%s", (
sp == 0) ?
"" :
", ",
970#define SPECVEC_TAG datum
979 int len = right - left;
984 dat->val.string_value[
len] = 0;
994 dat->val.numeric_value = val;
1003 if (!
dat->is_numeric) {
1047 n =
MIN(a->size, b->size);
1049 for (
i = 0;
i <
n;
i++) {
1059 return a->size - b->size;
1114 for (
i = 0;
i < data->size;
i++) {
int city_granary_size(int city_size)
int city_build_slots(const struct city *pcity)
const char * city_name_get(const struct city *pcity)
bool city_production_has_flag(const struct city *pcity, enum impr_flag_id flag)
int city_production_turns_to_build(const struct city *pcity, bool include_shield_stock)
bool city_unhappy(const struct city *pcity)
bool city_celebrating(const struct city *pcity)
int city_illness_calc(const struct city *pcity, int *ill_base, int *ill_size, int *ill_trade, int *ill_pollution)
static int cmp(int v1, int v2)
bool city_production_is_genus(const struct city *pcity, enum impr_genus_id genus)
int city_turns_to_grow(const struct city *pcity)
const char * city_production_name_translation(const struct city *pcity)
static citizens city_size_get(const struct city *pcity)
#define city_owner(_pcity_)
char * city_production_cost_str(const struct city *pcity)
static const char * cr_entry_hstate_concise(const struct city *pcity, const void *data)
static const char * cr_entry_tradeplus(const struct city *pcity, const void *data)
static const char * cr_entry_specialist(const struct city *pcity, const void *data)
static const char * cr_entry_present(const struct city *pcity, const void *data)
static const char * cr_entry_hstate_verbose(const struct city *pcity, const void *data)
int num_city_report_spec(void)
static void init_datum_string(struct datum *dat, const char *left, const char *right)
static const char * cr_entry_nation(const struct city *pcity, const void *data)
static const char * cr_entry_luxury(const struct city *pcity, const void *data)
static const char * cr_entry_gold(const struct city *pcity, const void *data)
static const char * cr_entry_building(const struct city *pcity, const void *data)
static const char * cr_entry_culture(const struct city *pcity, const void *data)
static void split_string(struct datum_vector *data, const char *str)
static const char * cr_entry_plague_risk(const struct city *pcity, const void *data)
static const char * cr_entry_trade_routes(const struct city *pcity, const void *data)
void init_city_report_game_data(void)
static const char * cr_entry_size(const struct city *pcity, const void *data)
static void free_data(struct datum_vector *data)
static const char * cr_entry_foodplus(const struct city *pcity, const void *data)
static const char * cr_entry_science(const struct city *pcity, const void *data)
static int data_compare(const struct datum_vector *a, const struct datum_vector *b)
static const char * cr_entry_pollution(const struct city *pcity, const void *data)
static const struct city_report_spec base_city_report_specs[]
static const char * cr_entry_defense(const struct city *pcity, const void *data)
static const char * cr_entry_cityname(const struct city *pcity, const void *data)
static const char * cr_entry_continent(const struct city *pcity, const void *data)
static const char * cr_entry_performance(const struct city *pcity, const void *data)
static const char * cr_entry_build_cost(const struct city *pcity, const void *data)
static const char * cr_entry_growturns(const struct city *pcity, const void *data)
bool can_city_sell_universal(const struct city *pcity, const struct universal *target)
static const char * cr_entry_unhappy(const struct city *pcity, const void *data)
static const char * cr_entry_workers(const struct city *pcity, const void *data)
struct city_report_spec * city_report_specs
static const char * cr_entry_angry(const struct city *pcity, const void *data)
int cityrepfield_compare(const char *str1, const char *str2)
static const char * cr_entry_attack(const struct city *pcity, const void *data)
const char * city_report_spec_tagname(int i)
static const char * cr_entry_build_slots(const struct city *pcity, const void *data)
static void free_datum(struct datum *dat)
static const char * cr_entry_corruption(const struct city *pcity, const void *data)
static const char * cr_entry_specialists(const struct city *pcity, const void *data)
static const char * cr_entry_supported(const struct city *pcity, const void *data)
static const char * cr_entry_resources(const struct city *pcity, const void *data)
static void init_datum_number(struct datum *dat, float val)
static const char * cr_entry_cma(const struct city *pcity, const void *data)
static int datum_compare(const struct datum *a, const struct datum *b)
static const char * cr_entry_prodplus(const struct city *pcity, const void *data)
bool * city_report_spec_show_ptr(int i)
static const char * cr_entry_history(const struct city *pcity, const void *data)
static const char * cr_entry_content(const struct city *pcity, const void *data)
static int num_creport_cols
static const char * cr_entry_happy(const struct city *pcity, const void *data)
static const char * cr_entry_waste(const struct city *pcity, const void *data)
static const char * cr_entry_output(const struct city *pcity, const void *data)
const char * cmafec_get_short_descr_of_city(const struct city *pcity)
int city_history_gain(const struct city *pcity)
static void attack(QVariant data1, QVariant data2)
struct unit struct city struct unit struct tile struct extra_type const struct act_prob *act_probs int actor_unit_id struct unit struct unit * punit
static struct cma_dialog * cma
bool can_city_sell_building(const struct city *pcity, const struct impr_type *pimprove)
#define fc_assert(condition)
#define fc_realloc(ptr, sz)
const char * nation_adjective_for_player(const struct player *pplayer)
struct client_options gui_options
const char * specialists_abbreviation_string(void)
struct specialist * specialist_by_number(const Specialist_type_id id)
Specialist_type_id specialist_index(const struct specialist *sp)
const char * specialist_rule_name(const struct specialist *sp)
const char * specialist_plural_translation(const struct specialist *sp)
Specialist_type_id specialist_count(void)
const char * specialist_abbreviation_translation(const struct specialist *sp)
const char * specialists_string(const citizens *specialist_list)
#define specialist_type_iterate_end
#define specialist_type_iterate(sp)
const char *(* func)(const struct city *pcity, const void *data)
citizens feel[CITIZEN_LAST][FEELING_LAST]
citizens specialists[SP_MAX]
struct unit_list * units_supported
struct city::@17::@20 client
struct packet_game_info info
bool concise_city_production
int fc_snprintf(char *str, size_t n, const char *format,...)
int cat_snprintf(char *str, size_t n, const char *format,...)
#define sz_strlcpy(dest, src)
#define trade_routes_iterate_end
#define trade_routes_iterate(c, proute)
const struct impr_type * building
#define unit_list_iterate(unitlist, punit)
#define unit_list_iterate_end
const struct unit_type * unit_type_get(const struct unit *punit)
bool worklist_is_empty(const struct worklist *pwl)