Godot学习笔记

Godot使用的语言——GDScript

GDScript总体上类似于Python,该说是简单?or 优美?or 不清晰?

在Python基础上有下列不同:

变量类型动态,在声明时不需声明类型

使用var声明变量,const声明常量

静态声明

当然也可静态声明,在声明变量名后加 :变量类型

1
2
3
4
5
var my_var = 15
my_var - "Hello, World!"

var num:int = 15;
var num := 15 #自动推断

数组以[]包括,字典与枚举用{}包括

函数

定义函数
1
2
3
4
5
6
7
func sum(a, b):
...
return a + b

func sum(a:int, b:int) -> int:
...
return a + b

初始化
1
2
3
func _init() -> void:
...
#内使用self参数
使用extends继承
多态正常用
属性的setter/getter
1
2
3
4
5
6
7
8
9
var _count: int
var count: int:
get:
return _count
set(value):
if value < MAX_COUNT:
return
else:
_count = value
继承树转换

可用as将以确定的父类转为子类

鸭子类型

不标注类型,但在敲代码时确保类似多态的进行。

编程语言会无视对象具体所属类型,在运行时直接在对象上尝试访问指定的成员——只要他有

如果一个东西像鸭子一样走路,会嘎嘎叫,那它就是鸭子

内部类的宣传:)

gd脚本内创建的类都为内部类,为使其他脚本也能使用,可用class_name取外部名字

标签们

@onready

让右侧变量在reandy运行,准备好后再进行赋值

@export

使得变量能在游戏窗口中更改编辑

Godot常用功能