Fixed export var default value in PackedScene when script is not loaded in editor

This commit is contained in:
PouleyKetchoupp 2020-05-08 12:43:23 +02:00
parent 959ffd5979
commit 4e14eefd94

View file

@ -478,6 +478,11 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
p_node->get_property_list(&plist);
StringName type = p_node->get_class();
Ref<Script> script = p_node->get_script();
if (script.is_valid()) {
script->update_exports();
}
for (List<PropertyInfo>::Element *E = plist.front(); E; E = E->next()) {
if (!(E->get().usage & PROPERTY_USAGE_STORAGE)) {
@ -494,7 +499,6 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
isdefault = bool(Variant::evaluate(Variant::OP_EQUAL, value, default_value));
}
Ref<Script> script = p_node->get_script();
if (!isdefault && script.is_valid() && script->get_property_default_value(name, default_value)) {
isdefault = bool(Variant::evaluate(Variant::OP_EQUAL, value, default_value));
}