首页 > 解决方案 > 如何检测存储在数组中的任何类型的变量 - Godot?

问题描述

我有一个包含节点和字符串的数组。在通过循环传递它时,我想根据正在读取的对象的类型调用某些函数。我尝试执行以下操作来测试类型 -

if to_fry_array[fry_looper].is_class("Node2D"):
    to_fry_array[fry_looper].show()
else:
    print (to_fry_array[fry_looper])

当在数组中读取字符串时,代码会引发错误to_fry_array。错误 -

无效调用。基本“字符串”中不存在函数“is_class”。

如何修改此代码以使其对所有类型的对象/变量具有通用性?

标签: typesgodotgdscript

解决方案


is_class()函数是在 GoDot 3.0 中引入的

如果未识别该功能,则可能您使用的是旧版本

我建议使用get_class()typeof()函数作为替代方法。

研究链接:


推荐阅读