Skip to content

Commit

Permalink
Joint2D and Joint: update joint on NOTIFICATION_POST_ENTER_TREE
Browse files Browse the repository at this point in the history
This allows reparenting, etc.
  • Loading branch information
rburing committed Feb 28, 2022
1 parent a76316c commit f197e5e
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
7 changes: 5 additions & 2 deletions scene/2d/joints_2d.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -168,14 +168,17 @@ NodePath Joint2D::get_node_b() const {

void Joint2D::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_READY: {
case NOTIFICATION_POST_ENTER_TREE: {
if (joint.is_valid()) {
_disconnect_signals();
}
_update_joint();
} break;
case NOTIFICATION_EXIT_TREE: {
if (joint.is_valid()) {
_disconnect_signals();
_update_joint(true);
}
_update_joint(true);
} break;
}
}
Expand Down
7 changes: 5 additions & 2 deletions scene/3d/physics_joint.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -178,14 +178,17 @@ int Joint::get_solver_priority() const {

void Joint::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_READY: {
case NOTIFICATION_POST_ENTER_TREE: {
if (joint.is_valid()) {
_disconnect_signals();
}
_update_joint();
} break;
case NOTIFICATION_EXIT_TREE: {
if (joint.is_valid()) {
_disconnect_signals();
_update_joint(true);
}
_update_joint(true);
} break;
}
}
Expand Down

0 comments on commit f197e5e

Please sign in to comment.