程式基礎 Part.3 迴圈 ,你已經學到如何讓遊戲能夠不斷地發生改變。但假如你想發生改變不是隨著時間,而是根據玩家的行為?

這個單元將會告訴你如何去建立一個死亡岩漿地板,讓玩家踩在上面就會立刻死亡

設定場景

你需要在遊戲的某個地方放置死亡岩漿。如果你之前已經練習過 Roblox Studio簡介 Part.1 單元,那死亡岩漿正好可以擺在消失的地板之下

  1. 放入一個零件並將之放到遊戲內的某個地方,將之取名為  LavaFloor
  2. 調整它的尺寸以覆蓋到足夠大的場景

https://developer.roblox.com/assets/blt74734dee885a5a3d/e5857b1f299d4fd25303cdcafe3c36cb.jpg

  1. 盡量讓地板能看起來能更像是岩漿,透過設定材質為 Neon ,並調整顏色為 orange

https://developer.roblox.com/assets/blt5b010db57d94795b/a3cbb032d9add812d22ad837ee8f6989.jpg

https://developer.roblox.com/assets/blt437c9005ac1cd029/2db093f686ce956abbb73d27c1b1b94d.jpg

  1. 在零件內放入一個腳本,取名為 KillPlayer

    https://developer.roblox.com/assets/bltd19138c93b94f111/4320d951f13501a7535f5c3db06fc3aa.jpg

  2. 移除預設程式碼並創立一個名為 lava 的變數

    --KillPlayer.lua
    
    local lava = script.Parent
    

連接到事件(Event)

你將需要使用一個事件來偵測玩家是否碰觸到岩漿。每一個零件都有一個 Touched 事件會在某個東西碰到它的時候觸發。你能夠連接這個事件,以便於事件觸發時呼叫某個函式

  1. 宣告一個新函式,名為 killPlayer
  2. 使用點語法來取用岩漿物件的 Touched 事件,就像 : lava.Touched
  3. 在 Touched 事件呼叫 Connect 函式,傳入 kill 函式
-- KillPlayer.lua

local lava = script.Parent

local function killPlayer()

end

lava.Touched:Connect(killPlayer)

任何你寫在 killPlayer 函式的程式將會在有任何東西碰到岩漿時觸發。記得 Connect 函式需要使用的是冒號而非點語法 - 不明白為什麼沒關係,現在只要先注意這個地方有所不同即可