加入主場景
場景 -> 新建場景 -> 其他節點 -> Node -> 建立
對左邊的 Node 右鍵附加腳本(或上面的小 icon)建立腳本
寫程式的時間
@export var to_be_created:PackedScene
# @export:在右邊屬性面板顯現
# var:宣告變數
# to_be_created:變數名稱可以取自己想要的名字
# PackedScene:給場景用的型別(這邊不太熟,有誤歡迎修正)
func spawn():
# 宣告一個變數“godot”並將場景的實例附上
var godot = to_be_created.instantiate()
# 把位置設定到滑鼠位置
godot.position = get_viewport().get_mouse_position()
# 產出!
add_child(godot)
在呼叫生成的方法前先來獲得點擊的輸入
這是要在滑鼠點擊的位置生成物件所以先來設定對應的事件名稱
專案 -> 專案設定 -> 輸入映射 -> 新增動作(輸入想要的名稱)-> 新增
接著在新增的事件右邊的 “+” -> 滑鼠按鈕 -> 滑鼠左鍵 -> 好
完成綁定
接著就可以透過觸發"on_left_click",進行物件生成
func _process(delta):
if Input.is_action_pressed("on_left_click"):
spawn()
完整檔案:
extends Node
@export var to_be_created:PackedScene
# Called when the node enters the scene tree for the first time.
func _ready():
pass
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
if Input.is_action_pressed("on_left_click"):
spawn()
func spawn():
var godot = to_be_created.instantiate()
godot.position = get_viewport().get_mouse_position()
add_child(godot)
:)