GODOT遊戲編程004---- Scripting

Scripting

支持的語言:
GDScript,這是GODOT自己的語言。好處多多。
VisualScript
.NET / C#
GDNative / C++


接下來我們要設計一個由按鈕和標籤組成的GUI場景,點擊按鈕會update標籤。學習目的:
Writing a script and attaching it to a node.寫一段代碼依附一個節點
Hooking up UI elements via signals.見識一下UI元素?
Writing a script that can access other nodes in the scene.在場景中寫一段代碼可以鏈接其他節點
進行之前,建議先花一點時間看一下GDScript簡版概述,地址如下:
http://docs.godotengine.org/en/3.0/getting_started/scripting/gdscript/gdscript_basics.html#doc-gdscript
就是在之前我提到的編程內容,我已簡單瀏覽。

開始。
新建一個項目。
這裏寫圖片描述
在右側場景添加一個Panel,搜索可以快速找到。選中添加的Panel,再次點擊加號,添加Label,同樣選中Panel,添加Button。
這裏寫圖片描述
這樣,標籤Label和按鈕Button都歸屬於Panel。
點擊標籤,在下方text輸入點內容,同樣對按鈕。在屏幕中間調整,將標籤放在上面,按鈕在下。如下圖的樣子。縮小一點把這兩個元素調到顯示屏幕中間,不然後面顯示的時候不全。
這裏寫圖片描述
右鍵單擊Panel,選擇”添加腳本“Attach Script。
這裏寫圖片描述
這裏注意,語言默認的是GDScript,歸屬於Panel。創建。
會發現Panel邊上多了一個腳本的符號。
這裏寫圖片描述
單擊進入腳本界面。

這裏的_ready()函數會在首次進入時調用。Note: _ready() is not the constructor; the constructor is instead _init().

可以想象,腳本是大腦,節點是身體,腳本可以控制節點的功能,也能作用於它的子、父、平級等。

當條件觸發時信號發出。這裏的信號一般用於GUI節點,也可以用於其他,你也可以自定義信號。
在這裏,我們要應用”press”信號。建立連接是第一步,定義功能是第二步。GODOT提供了兩種建立連接的方式:可視界面編輯或通過代碼。我們這裏選擇代碼。

這裏寫圖片描述

extends Panel

  #鏈接button按鈕,給予pressed的功能
func _ready():
get_node("Button").connect("pressed", self,"_on_Button_pressed")
  #按下後給label賦值hello!
func _on_Button_pressed():
get_node("Label").text = "HELLO!"

提示:進一步的語法可以看http://docs.godotengine.org/en/3.0/classes/class_node.html#class-node-get-node,額,我有點迷糊。

先到這裏吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章