📜  gdscript 主卷 (1)

📅  最后修改于: 2023-12-03 14:41:22.506000             🧑  作者: Mango

GDScript 主卷

GDScript 是一种易于学习和使用的脚本语言,它是 Godot 引擎的内置脚本语言。GDScript 可以用于编写游戏逻辑、玩家输入处理、动画、UI 等等。

语法

GDScript 的语法基于 Python。以下是一个简单的示例:

# 这是一个注释
var score = 0  # 这是一个整数变量

func _process(delta):
    # 这是一个函数
    score += delta  # delta 是每一帧的时间增量
    if score > 10:
        print("分数超过 10 分!")
类与继承

GDScript 支持类和继承。以下是一个继承自 Node2D 的自定义节点示例:

extends Node2D

# 导出属性
export var speed = 100
export var direction = Vector2.LEFT

func _process(delta):
    # 移动节点
    position += direction.normalized() * speed * delta

在这个示例中,我们创建了一个继承自 Node2D 的自定义节点,并通过 export 关键字导出了两个属性:speeddirection。在 _process 函数中,我们简单地将节点沿着 direction 移动了一小步。注意,我们使用了 Vector2 类型和 normalized 函数来确保移动距离相同。

信号和回调函数

在 Godot 中,节点可以通过连接信号和回调函数进行通信。下面是一个示例:

extends Control

# 导出信号
signal button_pressed

func _on_Button_pressed():
    # 发出信号
    emit_signal("button_pressed")

在这个示例中,我们创建了一个继承自 Control 的自定义控件,并通过 signal 关键字导出了一个名为 button_pressed 的信号。当用户按下控件上的按钮时,将调用 _on_Button_pressed 函数,该函数将发出 button_pressed 信号。其他节点可以通过连接此信号来执行自己的逻辑。

GDScript vs C#

与其他脚本语言相比,如 C#,GDScript 更容易学习和使用,因为它的语法更简单、更紧凑。另外,GDScript 的执行速度比 C# 稍慢,但在大多数情况下,这不应该成为问题。

总结

GDScript 是一种流行的编写游戏逻辑的脚本语言。它易于学习和使用,支持类和继承、信号和回调函数等常见的编程模式。如果您使用 Godot 引擎开发游戏,建议尝试使用 GDScript。