Respect frame property when converting to TileSet.

This commit is contained in:
Andrii Skrynnyk 2016-07-05 11:40:22 -07:00
parent 628b0a9375
commit 0a8d6de0c3
No known key found for this signature in database
GPG Key ID: DAB7609D22805AB8
1 changed files with 11 additions and 11 deletions

View File

@ -73,24 +73,24 @@ void TileSetEditor::_import_scene(Node *scene, Ref<TileSet> p_library, bool p_me
p_library->tile_set_name(id,mi->get_name()); p_library->tile_set_name(id,mi->get_name());
} }
p_library->tile_set_texture(id,texture); p_library->tile_set_texture(id,texture);
p_library->tile_set_material(id,material); p_library->tile_set_material(id,material);
Vector2 phys_offset; Vector2 phys_offset;
Size2 s;
if (mi->is_centered()) {
Size2 s;
if (mi->is_region()) {
s=mi->get_region_rect().size;
} else {
s=texture->get_size();
}
phys_offset+=-s/2;
}
if (mi->is_region()) { if (mi->is_region()) {
s=mi->get_region_rect().size;
p_library->tile_set_region(id,mi->get_region_rect()); p_library->tile_set_region(id,mi->get_region_rect());
} else {
const int frame = mi->get_frame();
const int hframes = mi->get_hframes();
s=texture->get_size()/Size2(hframes,mi->get_vframes());
p_library->tile_set_region(id,Rect2(Vector2(frame%hframes,frame/hframes)*s,s));
}
if (mi->is_centered()) {
phys_offset+=-s/2;
} }
Vector<Ref<Shape2D> >collisions; Vector<Ref<Shape2D> >collisions;