diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2022-06-25 14:16:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-25 14:16:29 +0200 |
commit | dd743b3c78bbf5c663a6b9590b1887b48abb7e1b (patch) | |
tree | 1dece7b5dfcff958406a9d09936605e8fa72bc9e /scene/resources | |
parent | b1920730010854b4b470e047af3fb05e5113060c (diff) | |
parent | ad7b3549a58a4d4ec821fdd33579c32c9a1d77f0 (diff) |
Merge pull request #62314 from tefusion/capsulemesh-radius-height-setters
Fix CapsuleMesh height/radius setters
Diffstat (limited to 'scene/resources')
-rw-r--r-- | scene/resources/primitive_meshes.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/scene/resources/primitive_meshes.cpp b/scene/resources/primitive_meshes.cpp index b2fd8eb895..f4fd81b25f 100644 --- a/scene/resources/primitive_meshes.cpp +++ b/scene/resources/primitive_meshes.cpp @@ -439,12 +439,15 @@ void CapsuleMesh::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "height", PROPERTY_HINT_RANGE, "0.001,100.0,0.001,or_greater,suffix:m"), "set_height", "get_height"); ADD_PROPERTY(PropertyInfo(Variant::INT, "radial_segments", PROPERTY_HINT_RANGE, "1,100,1,or_greater"), "set_radial_segments", "get_radial_segments"); ADD_PROPERTY(PropertyInfo(Variant::INT, "rings", PROPERTY_HINT_RANGE, "1,100,1,or_greater"), "set_rings", "get_rings"); + + ADD_LINKED_PROPERTY("radius", "height"); + ADD_LINKED_PROPERTY("height", "radius"); } void CapsuleMesh::set_radius(const float p_radius) { radius = p_radius; if (radius > height * 0.5) { - radius = height * 0.5; + height = radius * 2.0; } _request_update(); } @@ -456,7 +459,7 @@ float CapsuleMesh::get_radius() const { void CapsuleMesh::set_height(const float p_height) { height = p_height; if (radius > height * 0.5) { - height = radius * 2; + radius = height * 0.5; } _request_update(); } |