|
@@ -57,8 +57,9 @@ void TextureRegionEditor::_region_draw() {
|
|
base_tex = obj_styleBox->get_texture();
|
|
base_tex = obj_styleBox->get_texture();
|
|
else if (atlas_tex.is_valid())
|
|
else if (atlas_tex.is_valid())
|
|
base_tex = atlas_tex->get_atlas();
|
|
base_tex = atlas_tex->get_atlas();
|
|
- else if (tile_set.is_valid() && selected_tile != -1)
|
|
|
|
|
|
+ else if (tile_set.is_valid() && selected_tile != -1 && tile_set->has_tile(selected_tile))
|
|
base_tex = tile_set->tile_get_texture(selected_tile);
|
|
base_tex = tile_set->tile_get_texture(selected_tile);
|
|
|
|
+
|
|
if (base_tex.is_null())
|
|
if (base_tex.is_null())
|
|
return;
|
|
return;
|
|
|
|
|
|
@@ -688,10 +689,11 @@ void TextureRegionEditor::_edit_region() {
|
|
texture = obj_styleBox->get_texture();
|
|
texture = obj_styleBox->get_texture();
|
|
else if (atlas_tex.is_valid())
|
|
else if (atlas_tex.is_valid())
|
|
texture = atlas_tex->get_atlas();
|
|
texture = atlas_tex->get_atlas();
|
|
- else if (tile_set.is_valid() && selected_tile != -1)
|
|
|
|
|
|
+ else if (tile_set.is_valid() && selected_tile != -1 && tile_set->has_tile(selected_tile))
|
|
texture = tile_set->tile_get_texture(selected_tile);
|
|
texture = tile_set->tile_get_texture(selected_tile);
|
|
|
|
|
|
if (texture.is_null()) {
|
|
if (texture.is_null()) {
|
|
|
|
+ edit_draw->update();
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -780,6 +782,7 @@ TextureRegionEditor::TextureRegionEditor(EditorNode *p_editor) {
|
|
tile_set = Ref<TileSet>(NULL);
|
|
tile_set = Ref<TileSet>(NULL);
|
|
editor = p_editor;
|
|
editor = p_editor;
|
|
undo_redo = editor->get_undo_redo();
|
|
undo_redo = editor->get_undo_redo();
|
|
|
|
+ selected_tile = -1;
|
|
|
|
|
|
snap_step = Vector2(10, 10);
|
|
snap_step = Vector2(10, 10);
|
|
snap_separation = Vector2(0, 0);
|
|
snap_separation = Vector2(0, 0);
|