65 .value = {.building =
NULL}
127 const struct city *pcity;
142 if ((
yy % 2 ^
xx % 2) != 0) {
405 _(
"You don't know how to build %s!"),
432 _(
"Clipboard is empty."));
606#ifndef FREECIV_NDEBUG
struct canvas int int canvas_y
struct canvas int canvas_x
bool city_base_to_city_map(int *city_map_x, int *city_map_y, const struct city *const pcity, const struct tile *map_tile)
bool can_city_build_now(const struct civ_map *nmap, const struct city *pcity, const struct universal *target)
bool city_can_work_tile(const struct city *pcity, const struct tile *ptile)
#define city_list_iterate(citylist, pcity)
#define city_tile(_pcity_)
#define city_owner(_pcity_)
#define city_list_iterate_end
bool waiting_for_end_turn
void send_turn_done(void)
bool can_client_issue_orders(void)
bool is_server_busy(void)
bool can_client_change_view(void)
void create_event(struct tile *ptile, enum event_type event, const struct ft_color color, const char *format,...)
bool cma_is_city_under_agent(const struct city *pcity, struct cm_parameter *parameter)
void connection_do_buffer(struct connection *pc)
void connection_do_unbuffer(struct connection *pc)
enum unit_orders goto_last_order
void clear_hover_state(void)
void do_map_click(struct tile *ptile, enum quickselect_type qtype)
void unit_focus_add(struct unit *punit)
void unit_focus_set(struct unit *punit)
void request_unit_goto(enum unit_orders last_order, action_id act_id, int sub_tgt_id)
struct extra_type * connect_tgt
struct unit_list * get_units_in_focus(void)
enum unit_activity connect_activity
void set_hover_state(struct unit_list *punits, enum cursor_hover_state state, enum unit_activity activity, struct extra_type *tgt, int last_tgt, int last_sub_tgt, action_id action, enum unit_orders order)
enum cursor_hover_state hover_state
struct unit * find_visible_unit(struct tile *ptile)
int get_num_units_in_focus(void)
void wakeup_sentried_units(struct tile *ptile)
action_id goto_last_action
void do_unit_goto(struct tile *ptile)
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
const struct ft_color ftc_client
bool is_player_phase(const struct player *pplayer, int phase)
bool is_valid_goto_draw_line(struct tile *dest_tile)
void toggle_city_hilite(struct city *pcity, bool on_off)
void hilite_cities_from_canvas(void)
void set_turn_done_button_state(bool state)
void update_turn_done_button(bool do_restore)
void draw_selection_rectangle(int canvas_x, int canvas_y, int w, int h)
void update_unit_info_label(struct unit_list *punits)
#define fc_assert_ret(condition)
struct tile * map_pos_to_tile(const struct civ_map *nmap, int map_x, int map_y)
bool same_pos(const struct tile *tile1, const struct tile *tile2)
void map_distance_vector(int *dx, int *dy, const struct tile *tile0, const struct tile *tile1)
void cancel_selection_rectangle(void)
void update_line(int canvas_x, int canvas_y)
void maybe_activate_keyboardless_goto(int canvas_x, int canvas_y)
void adjust_workers_button_pressed(int canvas_x, int canvas_y)
void release_goto_button(int canvas_x, int canvas_y)
bool tiles_hilited_cities
struct universal clipboard
void redraw_selection_rectangle(void)
void recenter_button_pressed(int canvas_x, int canvas_y)
void upgrade_canvas_clipboard(void)
void update_turn_done_button_state(void)
void action_button_pressed(int canvas_x, int canvas_y, enum quickselect_type qtype)
void wakeup_button_pressed(int canvas_x, int canvas_y)
struct city * city_workers_display
static float rec_anchor_y
bool get_turn_done_button_state(void)
void scroll_mapview(enum direction8 gui_dir)
void release_right_button(int canvas_x, int canvas_y, bool shift)
bool keyboardless_goto_button_down
void key_city_overlay(int canvas_x, int canvas_y)
static float rec_anchor_x
void update_selection_rectangle(float canvas_x, float canvas_y)
void overview_update_line(int overview_x, int overview_y)
void anchor_selection_rectangle(int canvas_x, int canvas_y)
void cancel_tile_hiliting(void)
bool keyboardless_goto_active
void clipboard_paste_production(struct city *pcity)
static struct tile * rec_canvas_center_tile
void fill_tile_unit_list(const struct tile *ptile, struct unit **unit_list)
static void define_tiles_within_rectangle(bool append)
static void clipboard_send_production_packet(struct city *pcity)
bool clipboard_copy_production(struct tile *ptile)
bool is_city_hilited(struct city *pcity)
static int unit_list_compare(const void *a, const void *b)
struct tile * keyboardless_goto_start_tile
void toggle_tile_hilite(struct tile *ptile)
void mapdeco_set_highlight(const struct tile *ptile, bool highlight)
struct city * find_city_or_settler_near_tile(const struct tile *ptile, struct unit **punit)
void set_mapview_origin(float gui_x0, float gui_y0, float zoom)
struct tile * get_center_tile_mapcanvas(void)
struct tile * canvas_pos_to_tile(float canvas_x, float canvas_y, float zoom)
struct city * find_city_near_tile(const struct tile *ptile)
bool mapdeco_is_highlight_set(const struct tile *ptile)
void center_tile_mapcanvas(const struct tile *ptile)
void toggle_city_color(struct city *pcity)
struct tile * canvas_pos_to_nearest_tile(float canvas_x, float canvas_y, float zoom)
const struct tile * center_tile
void mapdeco_clear_highlights(void)
void toggle_unit_color(struct unit *punit)
bool tile_to_canvas_pos(float *canvas_x, float *canvas_y, float zoom, const struct tile *ptile)
const struct option_set * server_optset
bool option_bool_get(const struct option *poption)
struct client_options gui_options
struct option * optset_option_by_name(const struct option_set *poptset, const char *name)
void overview_to_map_pos(int *map_x, int *map_y, int overview_x, int overview_y)
int dsend_packet_city_make_specialist(struct connection *pc, int city_id, int tile_id)
int dsend_packet_city_change(struct connection *pc, int city_id, int production_kind, int production_value)
int dsend_packet_city_make_worker(struct connection *pc, int city_id, int tile_id)
bool are_universals_equal(const struct universal *psource1, const struct universal *psource2)
int universal_number(const struct universal *source)
const char * universal_name_translation(const struct universal *psource, char *buf, size_t bufsz)
struct universal production
struct packet_game_info info
bool separate_unit_selection
struct city_list * cities
struct city * tile_city(const struct tile *ptile)
#define tile_worked(_tile)
bool tileset_is_isometric(const struct tileset *t)
int tileset_tile_height(const struct tileset *t)
int tileset_tile_width(const struct tileset *t)
const struct unit_type * utype
const struct impr_type * building
struct unit * unit_transport_get(const struct unit *pcargo)
#define unit_list_iterate(unitlist, punit)
#define unit_list_iterate_end
const struct unit_type * unit_type_get(const struct unit *punit)
const char * unit_name_translation(const struct unit *punit)
bool can_player_build_unit_direct(const struct player *p, const struct unit_type *punittype, bool consider_reg_impr_req)
const struct unit_type * can_upgrade_unittype(const struct player *pplayer, const struct unit_type *punittype)