GDScriptは、Godotで使用できる独自のプログラミング言語。
Godotで構築するプロジェクトは基本的にこのプログラミング言語を使用して作成される。
<aside> 💡 一応、C#やC++などの他のゲームエンジンで使われている言語でも使用することはできるが、Godot的にはGDScriptを推奨している。
</aside>
# A file is a class!
# Inheritance
extends BaseClass
# (optional) class definition with a custom icon
class_name MyClass, "res://path/to/optional/icon.svg"
# Member variables
var a = 5
var s = "Hello"
var arr = [1, 2, 3]
var dict = {"key": "value", 2: 3}
var typed_var: int
var inferred_type := "String"
# Constants
const ANSWER = 42
const THE_NAME = "Charly"
# Enums
enum {UNIT_NEUTRAL, UNIT_ENEMY, UNIT_ALLY}
enum Named {THING_1, THING_2, ANOTHER_THING = -1}
# Built-in vector types
var v2 = Vector2(1, 2)
var v3 = Vector3(1, 2, 3)
# Function
func some_function(param1, param2):
var local_var = 5
if param1 < local_var:
print(param1)
elif param2 > 5:
print(param2)
else:
print("Fail!")
for i in range(20):
print(i)
while param2 != 0:
param2 -= 1
var local_var2 = param1 + 3
return local_var2
# Functions override functions with the same name on the base/parent class.
# If you still want to call them, use '.' (like 'super' in other languages).
func something(p1, p2):
.something(p1, p2)
# Inner class
class Something:
var a = 10
# Constructor
func _init():
print("Constructed!")
var lv = Something.new()
print(lv.a)
引用: https://docs.godotengine.org/ja/stable/tutorials/scripting/gdscript/gdscript_basics.html#example-of-gdscript
GDScriptのコードは、1ファイルが1つのクラスとして定義される。
extendsを使うことで、クラスの継承を定義することができる。
英文字(大文字小文字含む)、数字、アンダーバー(_)の3種類から成り立つ文字列。
ただし、数字から始まってはいけない。
英文字の大文字と小文字は区別される。
以下の文字列は予約語として定義されているため、識別子として使うことはできない。