-fixes disability to remove instanced nodes when reopening scene. Fixes #2610

This commit is contained in:
Juan Linietsky 2015-10-17 15:48:42 -03:00
parent 6f9631fc51
commit 85a611d1cd
2 changed files with 4 additions and 4 deletions

View file

@ -101,7 +101,7 @@ Node *SceneState::instance(bool p_gen_edit_state) const {
if (i==0 && base_scene_idx>=0) {
//scene inheritance on root node
print_line("scene inherit");
//print_line("scene inherit");
Ref<PackedScene> sdata = props[ base_scene_idx ];
ERR_FAIL_COND_V( !sdata.is_valid(), NULL);
node = sdata->instance(p_gen_edit_state);
@ -112,7 +112,7 @@ Node *SceneState::instance(bool p_gen_edit_state) const {
} else if (n.instance>=0) {
//instance a scene into this node
print_line("instance");
//print_line("instance");
if (n.instance&FLAG_INSTANCE_IS_PLACEHOLDER) {
String path = props[n.instance&FLAG_MASK];
@ -148,7 +148,7 @@ Node *SceneState::instance(bool p_gen_edit_state) const {
#endif
}
} else if (ObjectTypeDB::is_type_enabled(snames[n.type])) {
print_line("created");
//print_line("created");
//node belongs to this scene and must be created
Object * obj = ObjectTypeDB::instance(snames[ n.type ]);
if (!obj || !obj->cast_to<Node>()) {

View file

@ -875,7 +875,7 @@ bool SceneTreeDock::_validate_no_foreign() {
}
if (edited_scene->get_scene_instance_state().is_valid() && edited_scene->get_scene_instance_state()->find_node_by_path(edited_scene->get_path_to(E->get()))>=0) {
if (edited_scene->get_scene_inherited_state().is_valid() && edited_scene->get_scene_inherited_state()->find_node_by_path(edited_scene->get_path_to(E->get()))>=0) {
accept->get_ok()->set_text("Makes Sense!");
accept->set_text("Can't operate on nodes the current scene inherits from!");