Skip to content

Commit 72dcb95

Browse files
committed
build_planner: function ghost_mark_deleting moved to class
1 parent 93aa4f9 commit 72dcb95

File tree

5 files changed

+21
-23
lines changed

5 files changed

+21
-23
lines changed

src/building/construction/build_planner.cpp

+18
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,24 @@ void build_planner::add_building_tiles_from_list(int building_id, bool graphics_
131131
}
132132
}
133133

134+
bool build_planner::ghost_mark_deleting(tile2i tile) {
135+
if (!config_get(CONFIG_UI_VISUAL_FEEDBACK_ON_DELETE)) {
136+
return false;
137+
}
138+
139+
int construction_type = build_type;
140+
if (!tile.grid_offset() || draw_as_constructing || construction_type != BUILDING_CLEAR_LAND) {
141+
return (construction_type == BUILDING_CLEAR_LAND);
142+
}
143+
144+
if (!in_progress) {
145+
map_property_clear_constructing_and_deleted();
146+
}
147+
148+
map_building_tiles_mark_deleting(tile.grid_offset());
149+
return true;
150+
}
151+
134152
static building* add_temple_complex_element(int x, int y, int orientation, building* prev) {
135153
building* b = building_create(prev->type, tile2i(x, y), orientation);
136154
game_undo_add_building(b);

src/building/construction/build_planner.h

+1
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ class build_planner {
141141
static int is_blocked_for_building(tile2i tile, int size, blocked_tile_vec &blocked_tiles);
142142
static void draw_bridge(map_point tile, vec2i pixel, int type, painter &ctx);
143143
static void draw_partially_blocked(painter &ctx, int fully_blocked, const blocked_tile_vec &blocked_tiles);
144+
bool ghost_mark_deleting(tile2i tile);
144145
};
145146

146147
void build_planner_latch_on_venue(e_building_type type, building *b, int dx, int dy, int orientation, bool main_venue = false);

src/widget/city/building_ghost.cpp

-18
Original file line numberDiff line numberDiff line change
@@ -113,22 +113,4 @@ static void get_building_base_xy(int map_x, int map_y, int building_size, int* x
113113
default:
114114
*x = *y = 0;
115115
}
116-
}
117-
118-
bool city_building_ghost_mark_deleting(tile2i tile) {
119-
if (!config_get(CONFIG_UI_VISUAL_FEEDBACK_ON_DELETE)) {
120-
return false;
121-
}
122-
123-
int construction_type = g_city_planner.build_type;
124-
if (!tile.grid_offset() || g_city_planner.draw_as_constructing || construction_type != BUILDING_CLEAR_LAND) {
125-
return (construction_type == BUILDING_CLEAR_LAND);
126-
}
127-
128-
if (!g_city_planner.in_progress) {
129-
map_property_clear_constructing_and_deleted();
130-
}
131-
132-
map_building_tiles_mark_deleting(tile.grid_offset());
133-
return true;
134116
}

src/widget/city/building_ghost.h

-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,4 @@
66
#include "core/vec2i.h"
77
#include "core/svector.h"
88

9-
struct painter;
109

11-
12-
bool city_building_ghost_mark_deleting(tile2i tile);

src/widget/widget_city.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ void widget_city_draw_without_overlay(painter &ctx, int selected_figure_id, vec2
176176

177177
init_draw_context(selected_figure_id, figure_coord, highlighted_formation);
178178

179-
city_building_ghost_mark_deleting(tile);
179+
g_city_planner.ghost_mark_deleting(tile);
180180

181181
map_render_clear();
182182

@@ -207,7 +207,7 @@ void widget_city_draw_with_overlay(painter &ctx, tile2i tile) {
207207

208208
map_render_clear();
209209

210-
city_building_ghost_mark_deleting(tile);
210+
g_city_planner.ghost_mark_deleting(tile);
211211
city_view_foreach_valid_map_tile(ctx, update_tile_coords);
212212

213213
map_figure_sort_by_y();

0 commit comments

Comments
 (0)