mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Skip copying values constructed immediately before returning
This commit is contained in:
parent
9283328fe7
commit
754d49ac81
14 changed files with 35 additions and 60 deletions
|
@ -76,8 +76,7 @@ void EditorExpressionEvaluator::_clear() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditorExpressionEvaluator::_remote_object_selected(ObjectID p_id) {
|
void EditorExpressionEvaluator::_remote_object_selected(ObjectID p_id) {
|
||||||
Array arr = { p_id };
|
editor_debugger->emit_signal(SNAME("remote_objects_requested"), Array{ p_id });
|
||||||
editor_debugger->emit_signal(SNAME("remote_objects_requested"), arr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditorExpressionEvaluator::_on_expression_input_changed(const String &p_expression) {
|
void EditorExpressionEvaluator::_on_expression_input_changed(const String &p_expression) {
|
||||||
|
|
|
@ -288,8 +288,7 @@ void ScriptEditorDebugger::clear_inspector(bool p_send_msg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEditorDebugger::_remote_object_selected(ObjectID p_id) {
|
void ScriptEditorDebugger::_remote_object_selected(ObjectID p_id) {
|
||||||
Array arr = { p_id };
|
emit_signal(SNAME("remote_objects_requested"), Array{ p_id });
|
||||||
emit_signal(SNAME("remote_objects_requested"), arr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEditorDebugger::_remote_objects_edited(const String &p_prop, const TypedDictionary<uint64_t, Variant> &p_values, const String &p_field) {
|
void ScriptEditorDebugger::_remote_objects_edited(const String &p_prop, const TypedDictionary<uint64_t, Variant> &p_values, const String &p_field) {
|
||||||
|
|
|
@ -1114,8 +1114,7 @@ HashMap<Vector2i, TileMapCell> TileMapLayerEditorTilesPlugin::_draw_rect(Vector2
|
||||||
// Get or create the pattern.
|
// Get or create the pattern.
|
||||||
Ref<TileMapPattern> pattern = p_erase ? erase_pattern : selection_pattern;
|
Ref<TileMapPattern> pattern = p_erase ? erase_pattern : selection_pattern;
|
||||||
|
|
||||||
HashMap<Vector2i, TileMapCell> err_output;
|
ERR_FAIL_COND_V(pattern->is_empty(), (HashMap<Vector2i, TileMapCell>()));
|
||||||
ERR_FAIL_COND_V(pattern->is_empty(), err_output);
|
|
||||||
|
|
||||||
// Compute the offset to align things to the bottom or right.
|
// Compute the offset to align things to the bottom or right.
|
||||||
bool aligned_right = p_end_cell.x < p_start_cell.x;
|
bool aligned_right = p_end_cell.x < p_start_cell.x;
|
||||||
|
|
|
@ -1476,8 +1476,7 @@ void TileSetAtlasSourceEditor::_end_dragging() {
|
||||||
undo_redo->add_do_method(tile_set_atlas_source, "move_tile_in_atlas", drag_start_tile_shape.position, drag_current_tile, tile_set_atlas_source->get_tile_size_in_atlas(drag_current_tile));
|
undo_redo->add_do_method(tile_set_atlas_source, "move_tile_in_atlas", drag_start_tile_shape.position, drag_current_tile, tile_set_atlas_source->get_tile_size_in_atlas(drag_current_tile));
|
||||||
undo_redo->add_do_method(this, "_set_selection_from_array", _get_selection_as_array());
|
undo_redo->add_do_method(this, "_set_selection_from_array", _get_selection_as_array());
|
||||||
undo_redo->add_undo_method(tile_set_atlas_source, "move_tile_in_atlas", drag_current_tile, drag_start_tile_shape.position, drag_start_tile_shape.size);
|
undo_redo->add_undo_method(tile_set_atlas_source, "move_tile_in_atlas", drag_current_tile, drag_start_tile_shape.position, drag_start_tile_shape.size);
|
||||||
Array array = { drag_start_tile_shape.position, 0 };
|
undo_redo->add_undo_method(this, "_set_selection_from_array", Array{ drag_start_tile_shape.position, 0 });
|
||||||
undo_redo->add_undo_method(this, "_set_selection_from_array", array);
|
|
||||||
undo_redo->commit_action(false);
|
undo_redo->commit_action(false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -1574,8 +1573,7 @@ void TileSetAtlasSourceEditor::_end_dragging() {
|
||||||
undo_redo->add_do_method(tile_set_atlas_source, "move_tile_in_atlas", drag_start_tile_shape.position, drag_current_tile, tile_set_atlas_source->get_tile_size_in_atlas(drag_current_tile));
|
undo_redo->add_do_method(tile_set_atlas_source, "move_tile_in_atlas", drag_start_tile_shape.position, drag_current_tile, tile_set_atlas_source->get_tile_size_in_atlas(drag_current_tile));
|
||||||
undo_redo->add_do_method(this, "_set_selection_from_array", _get_selection_as_array());
|
undo_redo->add_do_method(this, "_set_selection_from_array", _get_selection_as_array());
|
||||||
undo_redo->add_undo_method(tile_set_atlas_source, "move_tile_in_atlas", drag_current_tile, drag_start_tile_shape.position, drag_start_tile_shape.size);
|
undo_redo->add_undo_method(tile_set_atlas_source, "move_tile_in_atlas", drag_current_tile, drag_start_tile_shape.position, drag_start_tile_shape.size);
|
||||||
Array array = { drag_start_tile_shape.position, 0 };
|
undo_redo->add_undo_method(this, "_set_selection_from_array", Array{ drag_start_tile_shape.position, 0 });
|
||||||
undo_redo->add_undo_method(this, "_set_selection_from_array", array);
|
|
||||||
undo_redo->commit_action(false);
|
undo_redo->commit_action(false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -1663,8 +1661,7 @@ void TileSetAtlasSourceEditor::_menu_option(int p_option) {
|
||||||
case TILE_CREATE: {
|
case TILE_CREATE: {
|
||||||
undo_redo->create_action(TTR("Create a tile"));
|
undo_redo->create_action(TTR("Create a tile"));
|
||||||
undo_redo->add_do_method(tile_set_atlas_source, "create_tile", menu_option_coords);
|
undo_redo->add_do_method(tile_set_atlas_source, "create_tile", menu_option_coords);
|
||||||
Array array = { menu_option_coords, 0 };
|
undo_redo->add_do_method(this, "_set_selection_from_array", Array{ menu_option_coords, 0 });
|
||||||
undo_redo->add_do_method(this, "_set_selection_from_array", array);
|
|
||||||
undo_redo->add_undo_method(tile_set_atlas_source, "remove_tile", menu_option_coords);
|
undo_redo->add_undo_method(tile_set_atlas_source, "remove_tile", menu_option_coords);
|
||||||
undo_redo->add_undo_method(this, "_set_selection_from_array", _get_selection_as_array());
|
undo_redo->add_undo_method(this, "_set_selection_from_array", _get_selection_as_array());
|
||||||
undo_redo->commit_action();
|
undo_redo->commit_action();
|
||||||
|
|
|
@ -265,7 +265,7 @@ void ENetConnection::get_peers(List<Ref<ENetPacketPeer>> &r_peers) {
|
||||||
}
|
}
|
||||||
|
|
||||||
TypedArray<ENetPacketPeer> ENetConnection::_get_peers() {
|
TypedArray<ENetPacketPeer> ENetConnection::_get_peers() {
|
||||||
ERR_FAIL_NULL_V_MSG(host, Array(), "The ENetConnection instance isn't currently active.");
|
ERR_FAIL_NULL_V_MSG(host, TypedArray<ENetPacketPeer>(), "The ENetConnection instance isn't currently active.");
|
||||||
TypedArray<ENetPacketPeer> out;
|
TypedArray<ENetPacketPeer> out;
|
||||||
for (const Ref<ENetPacketPeer> &I : peers) {
|
for (const Ref<ENetPacketPeer> &I : peers) {
|
||||||
out.push_back(I);
|
out.push_back(I);
|
||||||
|
|
|
@ -885,8 +885,8 @@ const Array &ExtendGDScriptParser::get_member_completions() {
|
||||||
}
|
}
|
||||||
|
|
||||||
Dictionary ExtendGDScriptParser::dump_function_api(const GDScriptParser::FunctionNode *p_func) const {
|
Dictionary ExtendGDScriptParser::dump_function_api(const GDScriptParser::FunctionNode *p_func) const {
|
||||||
|
ERR_FAIL_NULL_V(p_func, Dictionary());
|
||||||
Dictionary func;
|
Dictionary func;
|
||||||
ERR_FAIL_NULL_V(p_func, func);
|
|
||||||
func["name"] = p_func->identifier->name;
|
func["name"] = p_func->identifier->name;
|
||||||
func["return_type"] = p_func->get_datatype().to_string();
|
func["return_type"] = p_func->get_datatype().to_string();
|
||||||
func["rpc_config"] = p_func->rpc_config;
|
func["rpc_config"] = p_func->rpc_config;
|
||||||
|
@ -909,10 +909,9 @@ Dictionary ExtendGDScriptParser::dump_function_api(const GDScriptParser::Functio
|
||||||
}
|
}
|
||||||
|
|
||||||
Dictionary ExtendGDScriptParser::dump_class_api(const GDScriptParser::ClassNode *p_class) const {
|
Dictionary ExtendGDScriptParser::dump_class_api(const GDScriptParser::ClassNode *p_class) const {
|
||||||
|
ERR_FAIL_NULL_V(p_class, Dictionary());
|
||||||
Dictionary class_api;
|
Dictionary class_api;
|
||||||
|
|
||||||
ERR_FAIL_NULL_V(p_class, class_api);
|
|
||||||
|
|
||||||
class_api["name"] = p_class->identifier != nullptr ? String(p_class->identifier->name) : String();
|
class_api["name"] = p_class->identifier != nullptr ? String(p_class->identifier->name) : String();
|
||||||
class_api["path"] = path;
|
class_api["path"] = path;
|
||||||
Array extends_class;
|
Array extends_class;
|
||||||
|
|
|
@ -355,13 +355,11 @@ Dictionary GDScriptTextDocument::resolve(const Dictionary &p_params) {
|
||||||
}
|
}
|
||||||
|
|
||||||
Array GDScriptTextDocument::foldingRange(const Dictionary &p_params) {
|
Array GDScriptTextDocument::foldingRange(const Dictionary &p_params) {
|
||||||
Array arr;
|
return Array();
|
||||||
return arr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Array GDScriptTextDocument::codeLens(const Dictionary &p_params) {
|
Array GDScriptTextDocument::codeLens(const Dictionary &p_params) {
|
||||||
Array arr;
|
return Array();
|
||||||
return arr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Array GDScriptTextDocument::documentLink(const Dictionary &p_params) {
|
Array GDScriptTextDocument::documentLink(const Dictionary &p_params) {
|
||||||
|
@ -379,8 +377,7 @@ Array GDScriptTextDocument::documentLink(const Dictionary &p_params) {
|
||||||
}
|
}
|
||||||
|
|
||||||
Array GDScriptTextDocument::colorPresentation(const Dictionary &p_params) {
|
Array GDScriptTextDocument::colorPresentation(const Dictionary &p_params) {
|
||||||
Array arr;
|
return Array();
|
||||||
return arr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Variant GDScriptTextDocument::hover(const Dictionary &p_params) {
|
Variant GDScriptTextDocument::hover(const Dictionary &p_params) {
|
||||||
|
@ -416,8 +413,7 @@ Array GDScriptTextDocument::definition(const Dictionary &p_params) {
|
||||||
LSP::TextDocumentPositionParams params;
|
LSP::TextDocumentPositionParams params;
|
||||||
params.load(p_params);
|
params.load(p_params);
|
||||||
List<const LSP::DocumentSymbol *> symbols;
|
List<const LSP::DocumentSymbol *> symbols;
|
||||||
Array arr = find_symbols(params, symbols);
|
return find_symbols(params, symbols);
|
||||||
return arr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Variant GDScriptTextDocument::declaration(const Dictionary &p_params) {
|
Variant GDScriptTextDocument::declaration(const Dictionary &p_params) {
|
||||||
|
|
|
@ -575,8 +575,7 @@ struct SaveOptions {
|
||||||
*/
|
*/
|
||||||
struct ColorProviderOptions {
|
struct ColorProviderOptions {
|
||||||
Dictionary to_json() {
|
Dictionary to_json() {
|
||||||
Dictionary dict;
|
return Dictionary();
|
||||||
return dict;
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -585,8 +584,7 @@ struct ColorProviderOptions {
|
||||||
*/
|
*/
|
||||||
struct FoldingRangeProviderOptions {
|
struct FoldingRangeProviderOptions {
|
||||||
Dictionary to_json() {
|
Dictionary to_json() {
|
||||||
Dictionary dict;
|
return Dictionary();
|
||||||
return dict;
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -271,7 +271,7 @@ Ref<RegExMatch> RegEx::search(const String &p_subject, int p_offset, int p_end)
|
||||||
}
|
}
|
||||||
|
|
||||||
TypedArray<RegExMatch> RegEx::search_all(const String &p_subject, int p_offset, int p_end) const {
|
TypedArray<RegExMatch> RegEx::search_all(const String &p_subject, int p_offset, int p_end) const {
|
||||||
ERR_FAIL_COND_V_MSG(p_offset < 0, Array(), "RegEx search offset must be >= 0");
|
ERR_FAIL_COND_V_MSG(p_offset < 0, TypedArray<RegExMatch>(), "RegEx search offset must be >= 0");
|
||||||
|
|
||||||
int last_end = 0;
|
int last_end = 0;
|
||||||
TypedArray<RegExMatch> result;
|
TypedArray<RegExMatch> result;
|
||||||
|
|
|
@ -571,23 +571,19 @@ void TileMap::set_pattern(int p_layer, const Vector2i &p_position, const Ref<Til
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_constraints(int p_layer, const Vector<Vector2i> &p_to_replace, int p_terrain_set, const RBSet<TerrainConstraint> &p_constraints) {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_constraints(int p_layer, const Vector<Vector2i> &p_to_replace, int p_terrain_set, const RBSet<TerrainConstraint> &p_constraints) {
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> err_value;
|
TILEMAP_CALL_FOR_LAYER_V(p_layer, (HashMap<Vector2i, TileSet::TerrainsPattern>()), terrain_fill_constraints, p_to_replace, p_terrain_set, p_constraints);
|
||||||
TILEMAP_CALL_FOR_LAYER_V(p_layer, err_value, terrain_fill_constraints, p_to_replace, p_terrain_set, p_constraints);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_connect(int p_layer, const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_connect(int p_layer, const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) {
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> err_value;
|
TILEMAP_CALL_FOR_LAYER_V(p_layer, (HashMap<Vector2i, TileSet::TerrainsPattern>()), terrain_fill_connect, p_coords_array, p_terrain_set, p_terrain, p_ignore_empty_terrains);
|
||||||
TILEMAP_CALL_FOR_LAYER_V(p_layer, err_value, terrain_fill_connect, p_coords_array, p_terrain_set, p_terrain, p_ignore_empty_terrains);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_path(int p_layer, const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_path(int p_layer, const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) {
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> err_value;
|
TILEMAP_CALL_FOR_LAYER_V(p_layer, (HashMap<Vector2i, TileSet::TerrainsPattern>()), terrain_fill_path, p_coords_array, p_terrain_set, p_terrain, p_ignore_empty_terrains);
|
||||||
TILEMAP_CALL_FOR_LAYER_V(p_layer, err_value, terrain_fill_path, p_coords_array, p_terrain_set, p_terrain, p_ignore_empty_terrains);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_pattern(int p_layer, const Vector<Vector2i> &p_coords_array, int p_terrain_set, TileSet::TerrainsPattern p_terrains_pattern, bool p_ignore_empty_terrains) {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_fill_pattern(int p_layer, const Vector<Vector2i> &p_coords_array, int p_terrain_set, TileSet::TerrainsPattern p_terrains_pattern, bool p_ignore_empty_terrains) {
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> err_value;
|
TILEMAP_CALL_FOR_LAYER_V(p_layer, (HashMap<Vector2i, TileSet::TerrainsPattern>()), terrain_fill_pattern, p_coords_array, p_terrain_set, p_terrains_pattern, p_ignore_empty_terrains);
|
||||||
TILEMAP_CALL_FOR_LAYER_V(p_layer, err_value, terrain_fill_pattern, p_coords_array, p_terrain_set, p_terrains_pattern, p_ignore_empty_terrains);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void TileMap::set_cells_terrain_connect(int p_layer, TypedArray<Vector2i> p_cells, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) {
|
void TileMap::set_cells_terrain_connect(int p_layer, TypedArray<Vector2i> p_cells, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) {
|
||||||
|
|
|
@ -2391,9 +2391,9 @@ HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_constrain
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_connect(const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) const {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_connect(const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) const {
|
||||||
|
ERR_FAIL_COND_V(tile_set.is_null(), (HashMap<Vector2i, TileSet::TerrainsPattern>()));
|
||||||
|
ERR_FAIL_INDEX_V(p_terrain_set, tile_set->get_terrain_sets_count(), (HashMap<Vector2i, TileSet::TerrainsPattern>()));
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> output;
|
HashMap<Vector2i, TileSet::TerrainsPattern> output;
|
||||||
ERR_FAIL_COND_V(tile_set.is_null(), output);
|
|
||||||
ERR_FAIL_INDEX_V(p_terrain_set, tile_set->get_terrain_sets_count(), output);
|
|
||||||
|
|
||||||
// Build list and set of tiles that can be modified (painted and their surroundings).
|
// Build list and set of tiles that can be modified (painted and their surroundings).
|
||||||
Vector<Vector2i> can_modify_list;
|
Vector<Vector2i> can_modify_list;
|
||||||
|
@ -2491,14 +2491,13 @@ HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_connect(c
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fill the terrains.
|
// Fill the terrains.
|
||||||
output = terrain_fill_constraints(can_modify_list, p_terrain_set, constraints);
|
return terrain_fill_constraints(can_modify_list, p_terrain_set, constraints);
|
||||||
return output;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_path(const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) const {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_path(const Vector<Vector2i> &p_coords_array, int p_terrain_set, int p_terrain, bool p_ignore_empty_terrains) const {
|
||||||
|
ERR_FAIL_COND_V(tile_set.is_null(), (HashMap<Vector2i, TileSet::TerrainsPattern>()));
|
||||||
|
ERR_FAIL_INDEX_V(p_terrain_set, tile_set->get_terrain_sets_count(), (HashMap<Vector2i, TileSet::TerrainsPattern>()));
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> output;
|
HashMap<Vector2i, TileSet::TerrainsPattern> output;
|
||||||
ERR_FAIL_COND_V(tile_set.is_null(), output);
|
|
||||||
ERR_FAIL_INDEX_V(p_terrain_set, tile_set->get_terrain_sets_count(), output);
|
|
||||||
|
|
||||||
// Make sure the path is correct and build the peering bit list while doing it.
|
// Make sure the path is correct and build the peering bit list while doing it.
|
||||||
Vector<TileSet::CellNeighbor> neighbor_list;
|
Vector<TileSet::CellNeighbor> neighbor_list;
|
||||||
|
@ -2564,14 +2563,13 @@ HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_path(cons
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fill the terrains.
|
// Fill the terrains.
|
||||||
output = terrain_fill_constraints(can_modify_list, p_terrain_set, constraints);
|
return terrain_fill_constraints(can_modify_list, p_terrain_set, constraints);
|
||||||
return output;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_pattern(const Vector<Vector2i> &p_coords_array, int p_terrain_set, TileSet::TerrainsPattern p_terrains_pattern, bool p_ignore_empty_terrains) const {
|
HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_pattern(const Vector<Vector2i> &p_coords_array, int p_terrain_set, TileSet::TerrainsPattern p_terrains_pattern, bool p_ignore_empty_terrains) const {
|
||||||
|
ERR_FAIL_COND_V(tile_set.is_null(), (HashMap<Vector2i, TileSet::TerrainsPattern>()));
|
||||||
|
ERR_FAIL_INDEX_V(p_terrain_set, tile_set->get_terrain_sets_count(), (HashMap<Vector2i, TileSet::TerrainsPattern>()));
|
||||||
HashMap<Vector2i, TileSet::TerrainsPattern> output;
|
HashMap<Vector2i, TileSet::TerrainsPattern> output;
|
||||||
ERR_FAIL_COND_V(tile_set.is_null(), output);
|
|
||||||
ERR_FAIL_INDEX_V(p_terrain_set, tile_set->get_terrain_sets_count(), output);
|
|
||||||
|
|
||||||
// Build list and set of tiles that can be modified (painted and their surroundings).
|
// Build list and set of tiles that can be modified (painted and their surroundings).
|
||||||
Vector<Vector2i> can_modify_list;
|
Vector<Vector2i> can_modify_list;
|
||||||
|
@ -2616,8 +2614,7 @@ HashMap<Vector2i, TileSet::TerrainsPattern> TileMapLayer::terrain_fill_pattern(c
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fill the terrains.
|
// Fill the terrains.
|
||||||
output = terrain_fill_constraints(can_modify_list, p_terrain_set, constraints);
|
return terrain_fill_constraints(can_modify_list, p_terrain_set, constraints);
|
||||||
return output;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TileMapCell TileMapLayer::get_cell(const Vector2i &p_coords) const {
|
TileMapCell TileMapLayer::get_cell(const Vector2i &p_coords) const {
|
||||||
|
@ -3596,11 +3593,10 @@ TileMapLayer::~TileMapLayer() {
|
||||||
}
|
}
|
||||||
|
|
||||||
HashMap<Vector2i, TileSet::CellNeighbor> TerrainConstraint::get_overlapping_coords_and_peering_bits() const {
|
HashMap<Vector2i, TileSet::CellNeighbor> TerrainConstraint::get_overlapping_coords_and_peering_bits() const {
|
||||||
|
ERR_FAIL_COND_V(is_center_bit(), (HashMap<Vector2i, TileSet::CellNeighbor>()));
|
||||||
|
ERR_FAIL_COND_V(tile_set.is_null(), (HashMap<Vector2i, TileSet::CellNeighbor>()));
|
||||||
HashMap<Vector2i, TileSet::CellNeighbor> output;
|
HashMap<Vector2i, TileSet::CellNeighbor> output;
|
||||||
|
|
||||||
ERR_FAIL_COND_V(is_center_bit(), output);
|
|
||||||
ERR_FAIL_COND_V(tile_set.is_null(), output);
|
|
||||||
|
|
||||||
TileSet::TileShape shape = tile_set->get_tile_shape();
|
TileSet::TileShape shape = tile_set->get_tile_shape();
|
||||||
if (shape == TileSet::TILE_SHAPE_SQUARE) {
|
if (shape == TileSet::TILE_SHAPE_SQUARE) {
|
||||||
switch (bit) {
|
switch (bit) {
|
||||||
|
|
|
@ -67,8 +67,7 @@ Array ResourcePreloader::_get_resources() const {
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
||||||
Array res = { names, arr };
|
return Array{ names, arr };
|
||||||
return res;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ResourcePreloader::add_resource(const StringName &p_name, const Ref<Resource> &p_resource) {
|
void ResourcePreloader::add_resource(const StringName &p_name, const Ref<Resource> &p_resource) {
|
||||||
|
|
|
@ -1301,12 +1301,10 @@ Array TileSet::map_tile_proxy(int p_source_from, Vector2i p_coords_from, int p_a
|
||||||
|
|
||||||
// Source matches.
|
// Source matches.
|
||||||
if (source_level_proxies.has(p_source_from)) {
|
if (source_level_proxies.has(p_source_from)) {
|
||||||
Array output = { source_level_proxies[p_source_from], p_coords_from, p_alternative_from };
|
return Array{ source_level_proxies[p_source_from], p_coords_from, p_alternative_from };
|
||||||
return output;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Array output = { p_source_from, p_coords_from, p_alternative_from };
|
return Array{ p_source_from, p_coords_from, p_alternative_from };
|
||||||
return output;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void TileSet::cleanup_invalid_tile_proxies() {
|
void TileSet::cleanup_invalid_tile_proxies() {
|
||||||
|
|
|
@ -73,8 +73,7 @@ bool ServersDebugger::ResourceUsage::deserialize(const Array &p_arr) {
|
||||||
}
|
}
|
||||||
|
|
||||||
Array ServersDebugger::ScriptFunctionSignature::serialize() {
|
Array ServersDebugger::ScriptFunctionSignature::serialize() {
|
||||||
Array arr = { name, id };
|
return Array{ name, id };
|
||||||
return arr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ServersDebugger::ScriptFunctionSignature::deserialize(const Array &p_arr) {
|
bool ServersDebugger::ScriptFunctionSignature::deserialize(const Array &p_arr) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue