diff options
author | eska <eska@eska.me> | 2015-10-25 23:13:46 +0100 |
---|---|---|
committer | eska <eska@eska.me> | 2015-10-25 23:13:46 +0100 |
commit | ca7cfa9b4c5fbd487c9b5bcf9143cbfce35287e7 (patch) | |
tree | 95e2ac87eba89d6b1fec5a152b882fa5e723a691 | |
parent | 8949db75c3a3c30b5ffd4d8c177970306e4619a9 (diff) |
Add all collision shapes to a tile when converting scenes to TileSets
-rw-r--r-- | tools/editor/plugins/tile_set_editor_plugin.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/tools/editor/plugins/tile_set_editor_plugin.cpp b/tools/editor/plugins/tile_set_editor_plugin.cpp index 39b0ef3c75..09115472a8 100644 --- a/tools/editor/plugins/tile_set_editor_plugin.cpp +++ b/tools/editor/plugins/tile_set_editor_plugin.cpp @@ -110,11 +110,15 @@ void TileSetEditor::_import_scene(Node *scene, Ref<TileSet> p_library, bool p_me if (!child2->cast_to<StaticBody2D>()) continue; StaticBody2D *sb = child2->cast_to<StaticBody2D>(); - if (sb->get_shape_count()==0) + int shape_count = sb->get_shape_count(); + if (shape_count==0) continue; - Ref<Shape2D> collision=sb->get_shape(0); - if (collision.is_valid()) { - collisions.push_back(collision); + for (int shape_index=0; shape_index<shape_count; ++shape_index) + { + Ref<Shape2D> collision=sb->get_shape(shape_index); + if (collision.is_valid()) { + collisions.push_back(collision); + } } } |