resource 在 godot 里面有内置序列化, 并且编辑器页面上有很多的支持, 用来做游戏配置非常方便, 在编辑器界面就可以编辑, 不需要编辑代码. 让不会写代码的策划也可以调整配置.
创建自定义 resource
创建一个 gdscript, 自定义类名, 继承 Resource 例如
class_name Puzzles extends Resource
创建一个 resource, 现在类型就可以选自定义的 Resource 了
自定义 resource 有哪些变量
在变量的前面加上 @export, 就可以在编辑器页面看到这些变量, 例如
@export var index = 0
在编辑器可以看到 index 属性, 并且可以修改
场景绑定自定义 resource
在任意的 script 里面, 都可以声明一个类型为自定义 Resource 类的变量, 并且 export 出去. 例如
@export var puzzles: Puzzles
这样在编辑器里面, 就可以拖动 resource.tres 文件到节点里面, 创建绑定关系.
节点就可以通过声明的变量获取 resource 的值, 自定义 resource 里面可以写任意的函数, 一般是 getter setter 之类的.
puzzle = puzzles.get_puzzle()