腳本是一種純粹的文字文件,可以讓您在體驗中添加自訂、動態行為。您可以使用腳本來啟動遊戲事件、回應玩家輸入、儲存玩家資料、創建排行榜、生成敵人、控制 NPC 行為和很多其他內容。
路徑
Roblox 指令碼使用 Luau 程式語言,其語言來自 Lua 5.1。
- 相較於 Lua 5.1,Luau 增加了性能提升和許多有用的功能,包括可選的輸入系統、字串解析和一般化的重複對象。
- 所有有效的 Lua 5.1 代碼都是 Luau 代碼,但相反是不是。
大多數書和網路資源對於 Lua 仍然適用於 Luau。對於語言語法,請參閱 <a href="https://developer.luau.com/forum/viewforum?id=1000000000000\&type=1\&forum=1000000000000\&id=1000000000000\&b=1000000000000\&t=1000000000000\&d=1000000000000\&r=100000000
Luau 基本概念
Luau 是隨機輸入的,因此您不需要指定類型,當您創建變量時。 您可以使用 type() 來檢查對象類型:
logMessage = "User has more than 10 items!"print(logMessage) --> 使用者擁有超過 10 個項目!print(type(logMessage)) --> string
Luau有全球和本地範圍,但通常來說會比較好在本地宣告變數和函數,但是會用local 字元來表示:
local logMessage = "User has more than 10 items!"
local function printMessage()
print(logMessage)
end
printMessage() --> User has more than 10 items!
Lua 使用 nil 代表不存在或不存在,這評估為 false 在條件式語句中:
local messageToUserprint(messageToUser) --> 零print(type(message)) --> 零if messageToUser then-- 語句評估為 falseend
您可能已經注意到,-- 會啟用一條一行的留言。--[[]] 會創建一個區塊留言:
-- [[
Shuts off the cosmic moon ray immediately.
Should only be called within 15 minutes of midnight Mountain Standard
Time to avoid damage to the cosmic moon ray.
]]
local function stopCosmicMoonRay()
-- 稍後添加,這可能會變得很重要
end
桌子是用於表示陣列和字典的通用術語。陣列是基於單的,而不是零的,因此第一個項目是 [1]。 您用單個套裝來宣告陣列和字典:
local myArray = {"chips", "sparkling water", "salsa"}local myDictionary = {snack = "chips",drink = "sparkling water",dip = "salsa"}print(myArray[1]) --> 晶片print(myDictionary.dip) --> salsa
您可以使用 for 循環使用 ipairs() 函數對陣和 pairs() 對典型,但 Luau 也允許您省略這些函數以獲得更清潔的語法:
for index, value in ipairs(myArray) do -- 標準 Luaprint(index, value)endfor key, value in pairs(myDictionary) do -- 標準 Luaprint(key, value)endfor key, value in myDictionary do -- Luau 一般化回合print(key, value)end
您的第一個脚本
在 Roblox Studio 中,將鼠標指针指向 ServerScriptService 在 Explorer 窗口中,然後單擊 + 。
選擇 指令碼 以新增指令碼。
右鍵點擊腳本並將其重命名為 HelloScript。
雙擊腳本以在 腳本編輯器 中打開。
將以下代碼添加到檔案:
local helloArray = {"h", "e", "l", "l", "o"}local worldArray = {"w", "o", "r", "l", "d"}for index, value in helloArray doprint(value)endprint(table.concat(worldArray))確保 輸出 窗口打開。
點擊 播放 以執行您的體驗。
注意輸出:
hel (x2)oworld
感舒
適應新發展環境的重要部分是將它設置,以符合您的需求,並了解您擁有的工具:
- 程式編輯器 區塊的 Studio 設定 讓您調整字體、顏色、間隔、自動完成、括號和工具提示的品質。您可能也想要在 Studio 區塊中啟用黑暗模式。
- 輸出窗口是最基本的工具來了解您的腳本的行為。使用 ⋯ 選單啟用 顯示上下文 和1>顯示來源1>。
- 指令分析 視窗顯示錯誤和警告的總結,但您可能會發現它的工具限制;指令編輯器 已將這些問題已提示您輸入時。
有關配置 Studio 以進行指令碼化的更多資訊,請參閱 編程工作室。對於使用您最喜歡的文字編輯器和版本控制系統的資訊,請參閱 外部工具。
您的第二個脚本
在 Roblox Studio 中,將一個指令碼添加到 ReplicatedStorage 在 Explorer 窗口中,並將其重命名為 OhNo。
將以下代碼添加到檔案:
print("Hello script types and locations!")點擊 播放 以執行您的體驗。
注意輸出與您執行您的第一個指令相同。
要了解為什麼指令碼沒有執行,請參閱 指令碼類型和位置。