diff options
| author | Gilles Roudiere | 2017-11-07 08:58:35 +0100 |
|---|---|---|
| committer | Gilles Roudiere | 2018-02-16 10:14:52 +0100 |
| commit | 8dad41e395220404fb0fdafaa0cd4ed18179231f (patch) | |
| tree | 37b9190b77fa989f9d9d369b80957c3890e4164f /scene/2d/sprite.cpp | |
| parent | 68f277477b5a5f3003405e36c6b6853720cb91de (diff) | |
| download | godot-8dad41e395220404fb0fdafaa0cd4ed18179231f.tar.gz godot-8dad41e395220404fb0fdafaa0cd4ed18179231f.tar.zst godot-8dad41e395220404fb0fdafaa0cd4ed18179231f.zip | |
Diffstat (limited to 'scene/2d/sprite.cpp')
| -rw-r--r-- | scene/2d/sprite.cpp | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/scene/2d/sprite.cpp b/scene/2d/sprite.cpp index 9c344b958..17ca066fc 100644 --- a/scene/2d/sprite.cpp +++ b/scene/2d/sprite.cpp @@ -34,17 +34,27 @@ #include "scene/main/viewport.h" #include "scene/scene_string_names.h" -void Sprite::_edit_set_pivot(const Point2 &p_pivot) { +Dictionary Sprite::_edit_get_state() const { + Dictionary state = Node2D::_edit_get_state(); + state["offset"] = offset; + return state; +} - set_offset(p_pivot); +void Sprite::_edit_set_state(const Dictionary &p_state) { + Node2D::_edit_set_state(p_state); + set_offset(p_state["offset"]); } -Point2 Sprite::_edit_get_pivot() const { +void Sprite::_edit_set_pivot(const Point2 &p_pivot) { + set_offset(get_offset() - p_pivot); + set_position(get_transform().xform(p_pivot)); +} - return get_offset(); +Point2 Sprite::_edit_get_pivot() const { + return Vector2(); } -bool Sprite::_edit_use_pivot() const { +bool Sprite::_edit_use_pivot() const { return true; } |
