การเขียนลีดเดอร์บอร์ด

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

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

การตั้งค่าลีดเดอร์บอร์ด

เมื่อผู้เล่นถูกเพิ่มในประสบการณ์พวกเขาจะต้องเพิ่มในกระดานผู้นําพร้อมกับรหัสเพื่อติดตามสถิติของบุคคล

  1. ใน Explorer, ภายใต้ ServerScriptService สร้างสคริปต์ใหม่ที่มีชื่อว่า PlayerSetup ในสคริปต์นั้นลบสายโลกที่สวยงามและเขียนความคิดเห็นที่คำอธิบาย

  2. หลังจากความคิดเห็นนี้, สร้างคุณสมบัติที่กำหนดเองชื่อว่า onPlayerJoin ด้วยตัวแปรที่ชื่อว่า ผู้เล่น


    -- สร้างกระดานผู้นำที่แสดงตัวแปรผู้เล่น
    local function onPlayerJoin(player)
    end
  3. ใน onPlayerJoin สร้างตัวแปรที่มีชื่อว่า leaderstats และมีการสร้าง Folder ตัวใหม่


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    end
  4. ตั้งชื่อใหม่ ไฟล์เกี่ยวพันใหม่ ในครั้งนี้ leaderstats และประธานมันให้กับผู้เล่น การตั้งชื่อไฟล์ว่า leaderstats จะทำให้ Roblox Studio รู้ว่าจะสร้างลีดเดอร์บอร์ด


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
  5. หลังจากสิ้นสุดของฟังก์ชันให้เชื่อมต่อ OnPlayerJoin กับเหตุการณ์ PlayerAdded เมื่อผู้เล่นเข้าร่วมประสบการณ์ ตารางอันดับ


    local Players = game:GetService("Players")
    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
    Players.PlayerAdded:Connect(onPlayerJoin)

ติดตามสถิติผู้เล่น

ตอนนี้เมื่อถูกสร้างลีดเดอร์บอร์ดจะต้องแสดงผู้เล่นเหล่านี้ตัวเลข:

  • ทอง - เงินที่ผู้เล่นมี
  • ไอเทม - จำนวนไอเทมที่ผู้เล่นได้รวบรวมจากโลก
  • พื้นที่ - จำนวนรายการที่ผู้เล่นสามารถเก็บได้ในแต่ละครั้ง

แต่ละหมายเลขเหล่านี้จะเป็น IntValue ตัวแทนสัญลักษณ์สำหรับตัวเลข

การเขียนโค้ดผู้เล่นทอง

เริ่มต้นด้วยการเขียนสถิติสำหรับทอง

  1. ใน OnPlayerJoin ภายใต้ leaderstats.Parent = player ประเภท local gold = Instance.new("IntValue") สร้างรายการใหม่และเก็บไว้ในแปรงานทอง


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    local gold = Instance.new("IntValue")
    end
  2. ต่อไป, เขียน gold.Name = "Gold" . นี้จะให้ IntValue ตารางอันดับๆ นอกจากนี้, ชื่อนี้จะปรากฏขึ้นสำหรับผู้เล่นในกระดานผู้นํา


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    end
  3. ในแถวใหม่, ใส่ gold.Value = 0. นี้ตั้งค่ามูลค่าเริ่มต้นสำหรับผู้เล่น


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    end
  4. พิมพ์ gold.Parent = leaderstats . นี่เป็นพ่อของ IntValue สำหรับผู้นำสถิติ. หาก IntValue ไม่เป็นพ่อของสถิติผู้เล่นจะไม่เห็นมัน


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    gold.Parent = leaderstats
    end
  5. เล่นโครงการของคุณและสังเกตเห็นว่ามีกระดานผู้นำปรากฏขึ้นด้านขวาบน

เคล็ดลับการแก้ปัญหา

หากคุณไม่เห็นกระดานผู้นํา กำลังติดตาม:

  • ตรวจสอบให้แน่ใจว่า .Value จะเขียนเป็นตัวอักษรใหญ่
  • ให้แน่ใจว่าแปรสำหรับ IntValue อยู่ในรายการผู้นำเช่น gold.Parent = leaderstats

การเขียนรหัสและพื้นที่

จำไว้ว่าชื่อสถิติสามารถเป็นอะไรก็ได้ตามคู่มือการออกแบบเกม ในคำอื่น, "Items" สามารถเป็น "Crystals" แทนได้

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


    local function onPlayerJoin(player)
    gold.Parent = leaderstats
    -- สร้างสถิติรายการ
    local items = Instance.new("IntValue")
    items.Name = "Items"
    items.Value = 0
    items.Parent = leaderstats
    end
  2. สร้างสถิติใหม่สำหรับพื้นที่กระเป๋าของผู้เล่น ตั้ง spaces.Value เป็น 2 เพื่อให้ผู้เล่นเริ่มประสบการณ์โดยสามารถรองรับไอเทมสองรายการได้พร้อมกันได้เรียร้องให้พวกเ


    local function onPlayerJoin(player)
    items.Parent = leaderstats
    -- สร้างสถิติพื้นที่
    local spaces = Instance.new("IntValue")
    spaces.Name = "Spaces"
    spaces.Value = 2
    spaces.Parent = leaderstats
    end
  3. ทดสอบโครงการ ผู้เล่นควรมีลีดเดอร์บอร์ดแสดงทองคำ รายการ และพื้นที่

หากลีดเดอร์บอร์ดไม่ปรากฏให้ลองตรวจสอบสิ่งต่อไปนี้

  • หากคุณไม่สามารถดูตัวเลขในกระดานผู้นําได้โปรดตรวจสอบว่าแต่ละ IntValue มีความสัมพันธ์กับ leaderstats
  • ให้แน่ใจว่าแต่ละ IntValue เขียนอย่างถูกต้องตามที่แสดง
  • ตรวจสอบว่าเหตุการณ์ PlayerAdded อยู่ในด้านล่างของสคริปต์

สำเร็จ PlayerSetup สคริปต์

สามารถอ้างอิงได้ด้านล่างเป็นเวอร์ชันที่เสร็จสิ้นของสคริปต์


local Players = game:GetService("Players")
-- สร้างกระดานผู้นำที่แสดงตัวแปรผู้เล่น
local function onPlayerJoin(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local gold = Instance.new("IntValue")
gold.Name = "Gold"
gold.Value = 0
gold.Parent = leaderstats
local items = Instance.new("IntValue")
items.Name = "Items"
items.Value = 0
items.Parent = leaderstats
local spaces = Instance.new("IntValue")
spaces.Name = "Spaces"
spaces.Value = 2
spaces.Parent = leaderstats
end
-- วิ่งเมื่อเหตุการณ์ PlayerAdded เปิดใช้งาน
Players.PlayerAdded:Connect(onPlayerJoin)