是時候來讓平台消失了。將某一段執行特定行動的程式碼封裝成一個函式 Function
是非常常用的技巧。函式是一組被封裝的程式碼,方便你組織,如果有需要再次使用,也可以為其命名以方便下次可直接呼叫使用而無需重寫這段程式碼
在腳本中建立一個名為 disappear
的函式
local platform = script.Parent
local function disappear()
-- 封裝的程式碼
end
在函式宣告的開頭加上 local
表示該函式只能夠在這個腳本被呼叫, function
意味著這裡宣告的是函式而非變數,緊接著就是函式的名稱 disappear
。小括號為參數區,用來傳入函式所需的額外資訊,我們會在後面的課程了解更多有關參數的知識。函式的最後會以 end
來結尾,在參數區與 end
之間就是函式所有封裝的程式碼
當平台消失時,它需要是看不見的而且玩家也不能夠踩在它上面 - 但你不應該將平台銷毀,因為等會我們還要讓它出現
零件具備多種的屬性能夠用在這個情況。別忘了你能夠在選擇零件時透過 Properties
視窗來看到它的所有屬性
你能夠透過改動零件的 Transparency
屬性來使其看不見。Transparency
是介於 0 到 1 之間的值,當值為1時表示完全透明,也就看不見了
請改變平台的
Transparency
屬性,變成1
CanCollide
屬性能決定其他零件或者是玩家能否與之碰撞。假如你設定此屬性為 **false ,**玩家將無法碰到該零件而是會穿越它
請改變平台的
CanCollide
屬性,設為 false
就如同 script.Parent
,要存取屬性是透過點語法,賦與屬性新值同樣是透過 =
在 disappear
函式,設定 platform 的 CanCollide
屬性為 false
接著下一行,設定 platform 的 Transparency
透明度屬性為 1
local platform = script.Parent
local function disappear()
platform.CanCollide = false --設定 platform's CanCollide 為 false
platform.Transparency = 1 --設定 platform's Transparency 為 1
end
你是否注意到 Studio 會自動地為你函式內的程式碼進行縮排。永遠要確保要為函式內的程式碼進行縮排 - 這會讓你的程式碼更好讀,讓你更容易看出來到底這個函式封裝了哪些程式碼