可以有多個參數,讓多個參數 (例如資訊片) 傳入功能。 遊戲範例可能會要求玩家分配到一個團隊。 在這裡,您需要一個參數來分配玩家,並且要求一個參數來分配到哪個團隊。
要設定多個參數,請用分號分開參數名。
local function assignTeam(playerName, whichTeam)
end
使用多個參數練習
要練習使用多個參數工作,請創建一個能將遊戲中的物件排序為垃圾或回收的功能。
- 第一個 參數 將是垃圾,將被摧毀。
- 第二個 參數 將用於回收,並且會重新變得閃亮。
設定函數
首先設置功能並且測試您的工作。
- 在 ServerScriptService 中建立新指令碼。
- 以 sortGarbage() 的名字新增兩個參數 trash 和 recyclable 。
- 在指令碼的底部,呼叫函數。
- 快速檢查代碼,使用內置於功能中的 print 語句。
local function sortGarbage(trash, recyclable)
print("garbage test")
end
sortGarbage()
使用多個參數
在功能中,參數可以與變量相似。在此範例中,trash 被摧毀,然後recyclable 使用粒子發射器發出閃光。
刪除列印聲明,並使用Instance.new()建立一個新的粒子發射器,如所示。這將被用來給回收物品發光。
local function sortGarbage(trash,recyclable)-- 建立新的粒子發射器local sparkle = Instance.new("ParticleEmitter")endsortGarbage()使用扔掉參數樣式,就像扔掉其他變數一樣。
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- 摧毀垃圾trash:Destroy()endsortGarbage()將粒子發射器作為父親,以回收。
local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")-- 摧毀垃圾並讓回收物品閃亮trash:Destroy()sparkle.Parent = recyclableendsortGarbage()
通過參數傳輸值
是時候清理垃圾了!參數已設置後,函數就準備好接受資料了。
使用基本零件代表你可能丟棄的物品。一個應該是垃圾,一個是可回收的。確保他們有獨特的名稱。
在指令碼的上方,為您創建的對象添加變數。這些將是您的參數。
local cementBlock = workspace.Cementlocal glassBottle = workspace.GlassBottle在指令碼的底部,當 sortGarbage() 被呼叫時,通過每個引數數。
-- 可以用作參數的對象local cementBlock = workspace.CementBlocklocal glassBottle = workspace.GlassBottle--破壞垃圾並清理回收物local function sortGarbage(trash,recyclable)local sparkle = Instance.new("ParticleEmitter")trash:Destroy()sparkle.Parent = recyclableend-- 在參數中通過sortGarbage(cementBlock, glassBottle)測試您的代碼。第一個通過的對象將被摧毀。第二個對象將發光。
參數的順序
一般來說,參數與傳入參數的順序匹配。 例個體、實例,第一個參數使用於第一個參數。 第二個參數使用於第二個。
在我們的範例中,有兩個參數。在第一個傳入的參數將永遠為垃圾,而第二個將永遠為回收。
--破壞垃圾並清理回收物
local function sortGarbage(trash,recyclable)
local sparkle = Instance.new("ParticleEmitter")
trash:Destroy()
sparkle.Parent = recyclable
end
--按順序進行。水泥被摧毀,玻璃瓶回收
sortGarbage(cementBlock, glassBottle)
--玻璃瓶被摧毀,而礦石磚塊已回收
sortGarbage(glassBottle, cementBlock)
如果您只能以一個引數通過,那個引數將被視為垃圾。如果您只能以三個引數通過,那個第三個引數將不會發生任何事情,因為沒有第三個參數。
摘要
參數是通過將值傳入功能的參照值來傳入功能的地址。 參數是以空格分開的值,您可以通過將名稱與空格分開來創建多個參數。 當呼叫功能時,參數的順序是由值在接收功能中取得的順序決定的。