diff options
| author | Ignacio Etcheverry | 2016-11-03 00:19:32 +0100 |
|---|---|---|
| committer | Rémi Verschelde | 2016-11-15 08:28:11 +0100 |
| commit | 7e3360ae017972bb04c5ed9b26dd6092f94f3524 (patch) | |
| tree | 8a46cfb7408e5c8e12c8827f23391782a7b5fefc /scene | |
| parent | 67f65f66391327b2967a20a89c3627e1dd6e84eb (diff) | |
| download | godot-7e3360ae017972bb04c5ed9b26dd6092f94f3524.tar.gz godot-7e3360ae017972bb04c5ed9b26dd6092f94f3524.tar.zst godot-7e3360ae017972bb04c5ed9b26dd6092f94f3524.zip | |
Keep groups when replacing nodes
(cherry picked from commit 305956bf707342547baabb7d3f237ebda385f9f4)
Diffstat (limited to 'scene')
| -rw-r--r-- | scene/main/node.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/scene/main/node.cpp b/scene/main/node.cpp index a53c19d2e..53ecb1d78 100644 --- a/scene/main/node.cpp +++ b/scene/main/node.cpp @@ -1828,6 +1828,12 @@ void Node::replace_by(Node* p_node,bool p_keep_data) { rd.name=E->get().name; rd.value=get(rd.name); } + + List<GroupInfo> groups; + get_groups(&groups); + + for(List<GroupInfo>::Element *E=groups.front();E;E=E->next()) + p_node->add_to_group(E->get().name, E->get().persistent); } _replace_connections_target(p_node); |
