summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreska <eska@eska.me>2015-10-25 23:13:46 +0100
committereska <eska@eska.me>2015-10-25 23:13:46 +0100
commitca7cfa9b4c5fbd487c9b5bcf9143cbfce35287e7 (patch)
tree95e2ac87eba89d6b1fec5a152b882fa5e723a691
parent8949db75c3a3c30b5ffd4d8c177970306e4619a9 (diff)
Add all collision shapes to a tile when converting scenes to TileSets
-rw-r--r--tools/editor/plugins/tile_set_editor_plugin.cpp12
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);
+ }
}
}