書籍:Godot Engine入門 サンプルコード
■testscript.gd
extends Node2D
#複数の関数からアクセスする関数はここで定義する
var process_a = 0
func _ready():
#まずはプログラミング定番のHelloWorld
print("Hello World.")
#変数に代入してから表示する
var a = "Hello World!"
print(a)
#変数を複数宣言して計算した上で表示することも可能
var b;var c;var d
b = 2;c = 6
d = b * c
print(d)
#テキスト同士を繋げる場合は+を使用する。数値をテキストにする場合はstr()を使う。
var e = str(b) + "×" + str(c) + "=" + str(d)
print(e)
#一般的な繰り返し処理はカウント用変数の宣言をした後、whileに条件を設定する。
var i = 0
while i < 5:
#繰り返し処理内は1段下げる(通常は自動でエディタ側が下げてくれる)
print(i)
#繰り返し処理のためにカウントを1上げる。注:i++と書かないこと。
i += 1
#シンプルに指定の回数のみ繰り返せば良い処理であればfor * in range(*)のみでOK。
for k in range(5):
print(k)
#変数として配列も使用できる
var ary_value = [0,2,4,5,7,8,9]
for m in range(7):
print(ary_value[m])
var l = 3
if(l > 2):
print("Over 2")
else:
print("Under 2")
#関数内に置いた変数は外からアクセス出来ない
#var process_a = 0
#完全なランダムにしたい場合、最初にrandomize()でシードを現在時刻にする
randomize()
#randi()でint型(0〜4294967295)のランダム整数値を返す。
print(randi())
#ルートノードの位置をx=100,y=150の位置に移動
.translate(Vector2(100,150))
pass
■ActMogura.gd
extends Node2D
func _ready():
HIDEandTimer()
pass # Replace with function body.
func _on_Area2D_input_event(viewport, event, shape_idx):
HIDEandTimer()
pass # Replace with function body.
func HIDEandTimer():
.hide()
$HideTimer.stop()
randomize()
var Timer_value = 2.0 + randf()*2
$ViewTimer.set( "wait_time",Timer_value)
print(Timer_value)
$ViewTimer.start()
pass
export var HideTime = 2.0
func _on_ViewTimer_timeout():
.show()
$HideTimer.set( "wait_time",HideTime)
$HideTimer.start()
pass # Replace with function body.
func _on_HideTimer_timeout():
HIDEandTimer()
print("hide")
pass # Replace with function body.
■MainMoguragame.gd
extends Node2D
export var All_HideTime = 2.0
func _ready():
$Mogura.set("HideTime",All_HideTime)
$Mogura2.set("HideTime",All_HideTime)
$Mogura3.set("HideTime",All_HideTime)
$Mogura4.set("HideTime",All_HideTime)
$Mogura5.set("HideTime",All_HideTime)
pass