diff options
author | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2017-07-25 04:18:03 +0200 |
---|---|---|
committer | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2017-07-25 04:45:01 +0200 |
commit | bc1d58c50d65818863b620a4871e327c5f1c6bb6 (patch) | |
tree | 9a81923399fd55c836c835c1ea831acd98401b3b /servers/physics | |
parent | 507b48179f773d6495ce62947c7f55564fde4a67 (diff) |
Extend check for same space to all 2D/3D bodies/shapes
Diffstat (limited to 'servers/physics')
-rw-r--r-- | servers/physics/physics_server_sw.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/servers/physics/physics_server_sw.cpp b/servers/physics/physics_server_sw.cpp index 101bd4b185..51d376cfa5 100644 --- a/servers/physics/physics_server_sw.cpp +++ b/servers/physics/physics_server_sw.cpp @@ -222,12 +222,16 @@ void PhysicsServerSW::area_set_space(RID p_area, RID p_space) { AreaSW *area = area_owner.get(p_area); ERR_FAIL_COND(!area); + SpaceSW *space = NULL; if (p_space.is_valid()) { space = space_owner.get(p_space); ERR_FAIL_COND(!space); } + if (area->get_space() == space) + return; //pointless + area->set_space(space); }; @@ -471,15 +475,15 @@ void PhysicsServerSW::body_set_space(RID p_body, RID p_space) { BodySW *body = body_owner.get(p_body); ERR_FAIL_COND(!body); - SpaceSW *space = NULL; + SpaceSW *space = NULL; if (p_space.is_valid()) { space = space_owner.get(p_space); ERR_FAIL_COND(!space); } if (body->get_space() == space) - return; //pointles + return; //pointless body->set_space(space); }; |