คู่มือการใช้งานระดับกลาง

ลาวาที่ทำให้ตาย

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

ใน บทนำเกี่ยวกับการเขียนสคริปต์ คุณได้เรียนรู้วิธีการทำการเปลี่ยนแปลงในประสบการณ์ในลูปตามเวลา ทำอย่างไรหากคุณต้องการทำการเปลี่ยนแปลงตามพฤติกรรมของผู้ใช้? ในบทนี้คุณจะได้เรียนรู้วิธีการสร้างพื้นลาวาที่ทำให้ตายซึ่งฆ่าผู้ใช้เมื่อพวกเขายืนอยู่บนมัน

ตั้งค่า

คุณต้องมีพื้นที่ในโลกของคุณเพื่อวางลาวาที่ทำให้ตาย ถ้าคุณได้ทำตามหลักสูตร บทนำเกี่ยวกับการเขียนสคริปต์ พื้นลาวาจะพอดีกับช่องว่างที่ถูกปกคลุมด้วยแพลตฟอร์มที่หายไป

  1. ใส่ Part และย้ายมันไปยังตำแหน่งในโลกของคุณ ตั้งชื่อมันว่า LavaFloor.

  2. ปรับขนาดให้มันปิดพื้นที่พื้นของพื้นที่ที่กำลังล้อมอยู่

  3. ทำให้พื้นดูเหมือนลาวามากขึ้นโดยการตั้งค่า Material เป็น Neon และ Color เป็นเฉดสีส้ม

  4. ใส่ Script ลงในส่วน LavaFloor และเปลี่ยนชื่อเป็น Kill.

  5. ลบโค้ดเริ่มต้นและสร้างตัวแปรสำหรับลาวา


    local lava = script.Parent

เชื่อมต่อกับเหตุการณ์

ใช้ เหตุการณ์ เพื่อตรวจจับเมื่อผู้ใช้สัมผัสลาวา ทุกส่วนมีเหตุการณ์ Touched ที่เกิดขึ้นเมื่อมีบางสิ่งสัมผัสมัน คุณสามารถ เชื่อมต่อ กับเหตุการณ์นี้เพื่อเรียกใช้ฟังก์ชันเมื่อมันเกิดขึ้น

  1. ประกาศฟังก์ชันใหม่เรียกว่า kill.

  2. เข้าถึงเหตุการณ์ Touched บนวัตถุลาวาโดยใช้จุดเช่นเดียวกับคุณสมบัติ: lava.Touched.

  3. เรียกฟังก์ชัน Connect บนเหตุการณ์ Touched โดยส่ง kill() เป็นฟังก์ชันที่เรียกใช้เมื่อส่วนสัมผัสมัน


    local lava = script.Parent
    local function kill()
    end
    lava.Touched:Connect(kill)

โค้ดใดก็ตามที่คุณเขียนในฟังก์ชัน kill จะทำงานทุกครั้งที่มีบางสิ่งสัมผัสลาวา โปรดทราบว่า โคลอน ถูกใช้สำหรับฟังก์ชัน Connect ไม่ใช่จุด - อย่ากังวลเกี่ยวกับเหตุผลในจุดนี้ เพียงจำความแตกต่าง.

รับส่วนที่สัมผัส

ในการฆ่าผู้ใช้ ฟังก์ชันจะต้องการวัตถุที่เกี่ยวข้องกับผู้ใช้นั้น เหตุการณ์ Touched ของส่วนสามารถให้ "ส่วนอื่น" ที่สัมผัสมัน — แต่เฉพาะเมื่อคุณขอโดยการทำให้มันเป็น พารามิเตอร์ ของฟังก์ชัน

พารามิเตอร์คือการกำหนดสิ่งที่ฟังก์ชันคาดว่าจะได้รับเมื่อมันถูกเรียกใช้ พารามิเตอร์สามารถใช้ในฟังก์ชันเช่นเดียวกับตัวแปรอื่น ๆ คุณสามารถส่งข้อมูลไปยังพารามิเตอร์ได้โดยการรวมมันในวงเล็บเมื่อฟังก์ชันถูกเรียกใช้ พารามิเตอร์ถูกกำหนดในวงเล็บที่บรรทัดแรกของฟังก์ชัน สร้าง พารามิเตอร์ ชื่อ otherPart สำหรับฟังก์ชัน kill.


local lava = script.Parent
local function kill(otherPart)
end
lava.Touched:Connect(kill)

เมื่อฟังก์ชัน kill ถูกเรียกใช้ พารามิเตอร์ otherPart จะเป็นตัวแทนของส่วนที่สัมผัสพื้นลาวา และโค้ดที่คุณเขียนในฟังก์ชันจะสามารถใช้มันได้

ตัวละครและมนุษย์

เมื่อผู้ใช้สัมผัสลาวา Roblox สามารถตรวจจับร่างกายเฉพาะส่วนใดส่วนหนึ่งของผู้ใช้ที่สัมผัสมัน เช่น ขาซ้ายหรือเท้าขวา ส่วนนี้อยู่ในโมเดล ตัวละคร ของผู้ใช้ ซึ่งประกอบไปด้วยวัตถุทั้งหมดที่สร้างตัวละครของผู้ใช้ในประสบการณ์ รวมถึง:

  • ส่วนประกอบร่างกายของผู้ใช้ เช่น หัว แขน และลำตัว
  • เสื้อผ้าและอุปกรณ์เสริมที่ผู้ใช้สวมใส่
  • Humanoid ซึ่งเป็นวัตถุพิเศษที่มีคุณสมบัติหลายอย่างที่เกี่ยวข้องกับผู้ใช้ รวมถึงสุขภาพของผู้ใช้
  • HumanoidRootPart ซึ่งควบคุมการเคลื่อนไหวของผู้ใช้

ตามที่ได้กล่าวไว้ก่อนหน้านี้ ทุกส่วนของร่างกายที่สัมผัสลาวาเป็นส่วนหนึ่งของโมเดลตัวละคร ดังนั้นคุณสามารถอ้างอิงถึงตัวละครนั้นได้ด้วย otherPart.Parent สร้างตัวแปรเพื่อเก็บพาเรนต์ของส่วนที่สัมผัสพื้นลาวา


local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
end
lava.Touched:Connect(kill)

จากโมเดลตัวละคร คุณจะต้องได้รับวัตถุ Humanoid เพื่อฆ่าผู้ใช้ คุณสามารถทำได้ด้วยฟังก์ชัน FindFirstChild() — เพียงส่งชื่อของสิ่งที่คุณกำลังมองหาและมันจะให้เด็กที่ตรงกันแรกที่พบในวัตถุนั้น เรียก FindFirstChild() บนตัวแปร partParent โดยใช้ "Humanoid" เป็นเด็กที่ต้องการค้นหา และเก็บผลลัพธ์ในตัวแปรใหม่ชื่อ humanoid.


local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
end
lava.Touched:Connect(kill)

ตรวจสอบมนุษย์

คุณสามารถตรวจสอบได้ง่าย ๆ ว่ามนุษย์ถูกพบหรือไม่โดยใช้คำสั่ง if โค้ดในคำสั่งถ้าเท่านั้นที่จะทำงานหากเงื่อนไขที่กำหนดในบรรทัดแรกเป็นจริง

มี ตัวดำเนินการ หลากหลายที่สามารถใช้เพื่อสร้างเงื่อนไขที่ซับซ้อนมากขึ้นซึ่งคุณจะพบในหลักสูตรในอนาคต - ในตอนนี้ เพียงใส่ตัวแปร humanoid ที่นั่น สร้างคำสั่ง if โดยมี humanoid เป็นเงื่อนไข


local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
if humanoid then
end
end
lava.Touched:Connect(kill)

ตั้งค่าสุขภาพตัวละคร

ตอนนี้ที่ Humanoid ได้ถูกตรวจสอบแล้ว คุณสามารถเปลี่ยนคุณสมบัติต่าง ๆ ของมันได้ หากคุณตั้งค่าคุณสมบัติ Health เป็น 0 ตัวละครที่เกี่ยวข้องจะตาย ในเนื้อเรื่องของคำสั่ง if ให้ตั้งค่าคุณสมบัติ Health ของ humanoid เป็น 0


local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
lava.Touched:Connect(kill)

ด้วยสิ่งนี้ พื้นลาวาของคุณก็เสร็จสมบูรณ์! ทดสอบประสบการณ์ของคุณและคุณควรพบว่าลาวาที่ทำให้ตายของคุณได้ฆ่าผู้ใช้ในขณะที่สัมผัส ลองใช้ลาวาของคุณเป็นความท้าทายเพิ่มเติมใน obby หรือเป็นขอบเขตของโลก

โค้ดสุดท้าย


local lava = script.Parent
local function kill(otherPart)
local partParent = otherPart.Parent
local humanoid = partParent:FindFirstChild("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
lava.Touched:Connect(kill)
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ