12.类型

默认情况下,所有脚本文件都是未命名的类。在这种情况下,只能使用文件的路径引用它们,使用相对路径或绝对路径。例如,如果您将脚本文件命名为``character.gd``

# Inherit from Character.gd

extends res://path/to/character.gd # Load character.gd and create a new node instance from it var Character = load("res://path/to/character.gd") var character_node = Character.new() 

相反,您可以为类指定一个名称,以便在Godot的编辑器中将其注册为新类型。为此,您将使用 ‘class_name’ 关键字。

您可以向图像添加一个可选逗号和一个路径,以便将其用作图标。然后,您的类将在编辑器中显示它的新图标:

# Item.gd

extends Node

class_name Item, "res://interface/icons/item.png" 

../../../_images/class_name_editor_register_example.png

下面是一个简单的示例,说明它是如何工作的:

# Saved as a file named 'character.gd'.

class_name Character

var health = 5 func print_health(): print(health) func print_this_script_three_times(): print(get_script()) print(ResourceLoader.load("res://character.gd")) print(Character) 

注解

Godot的类语法非常紧凑:它只能包含成员变量或函数。可以使用静态函数,但不能使用静态成员变量。

同样,每次创建实例时,引擎都会初始化变量,这包括数组和字典。

这是线程安全的精神,因为脚本可以在单独的线程中初始化,而用户并不知道。

猜你喜欢

转载自www.cnblogs.com/empist/p/10199197.html