[3.x] Add generics to PackedScene instance
parent
07153d40e0
commit
8d3a5bc458
|
@ -381,6 +381,20 @@ def generate_class_header(used_classes, c, use_template_get_node):
|
||||||
source.append("\treturn get_node_internal(path);")
|
source.append("\treturn get_node_internal(path);")
|
||||||
source.append("}")
|
source.append("}")
|
||||||
source.append("")
|
source.append("")
|
||||||
|
elif use_template_get_node and class_name == "PackedScene":
|
||||||
|
source.append("\ttemplate <class T = Node>")
|
||||||
|
source.append("\tT *instance(const int64_t edit_state = 0) const {")
|
||||||
|
source.append("\t\treturn Object::cast_to<T>(instance(edit_state));")
|
||||||
|
source.append("\t}")
|
||||||
|
|
||||||
|
source.append("};")
|
||||||
|
source.append("")
|
||||||
|
|
||||||
|
source.append("template <>")
|
||||||
|
source.append("inline Node *PackedScene::instance<Node>(const int64_t edit_state) const {")
|
||||||
|
source.append("\treturn instance(edit_state);")
|
||||||
|
source.append("}")
|
||||||
|
source.append("")
|
||||||
else:
|
else:
|
||||||
source.append("};")
|
source.append("};")
|
||||||
source.append("")
|
source.append("")
|
||||||
|
|
Loading…
Reference in New Issue