Papan Peringkat Pengalaman

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Roblox memiliki sistem papan peringkat yang dibangun di dalamnya yang memungkinkan Anda menampilkan informasi pengguna seperti skor, mata uang, atau waktu tercepat dalam balapan.

Leaderboard Screen

Mengatur Papan Peringkat

Untuk menyiapkan papan peringkat dan menambahkan pemain saat mereka masuk ke pengalaman:

  1. Buat Script baru di dalam ServerScriptService dan namakan Leaderboard .

    Leaderboard Insert Script
  2. Dalam script, hubungkan fungsi ke acara PlayerAdded .


    local Players = game:GetService("Players")
    local function leaderboardSetup(player)
    end
    -- Koneksikan fungsi "leaderboardSetup()" ke acara "PlayerAdded"
    Players.PlayerAdded:Connect(leaderboardSetup)
  3. Dalam fungsi yang terhubung, buat instansi baru Folder , nama nya leaderstats dan orang tuanya ke pemain.


    local Players = game:GetService("Players")
    local function leaderboardSetup(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
    -- Koneksikan fungsi "leaderboardSetup()" ke acara "PlayerAdded"
    Players.PlayerAdded:Connect(leaderboardSetup)

Menambahkan Statistik

Papan peringkat menggunakan value type objects untuk menyimpan dan menampilkan statistik pemain. Skrip ini akan menunjukkan emas pemain menggunakan IntValue , penanda untuk angka.

Dalam fungsi leaderboardSetup(), tambahkan baris 8 melalui 11:


local Players = game:GetService("Players")
local function leaderboardSetup(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
end
-- Koneksikan fungsi "leaderboardSetup()" ke acara "PlayerAdded"
Players.PlayerAdded:Connect(leaderboardSetup)

Baris-baris ini melakukan mengikuti:

  1. Sebuah IntValue instansi dibuat.

  2. kejadianName instansi di set ke "Gold". Ini adalah cara stat akan muncul di papan peringkat.

    Leaderboards Name Column
  3. Statistik awalnya Value di tetapkan menjadi 0 . Ini dapat di set ke semua nilai yang Anda inginkan, termasuk nilai yang disimpan dalam toko data jika Anda menerapkan leaderboard yang bertahan.

  4. Instans instans diberikan ke sub-folder leaderstats yang menambahkannya ke papan peringkat. Saat seorang pemain memasuki pengalaman, nama mereka muncul di papan.

    Leaderboards Multiple Players

Mengaktualisasi Statistik

Untuk menyetujui statistik leaderboard pemain,ubah property Value dari statistik itu di dalam leaderstats folder pemain mereka. Misalnya, Anda dapat menghubungkan Script ke setiap objek pengambilan untuk meningkatkan stat 1>Emas1> pemain mengumpulkannya.


local Players = game:GetService("Players")
local goldChunk = script.Parent
local function onPartTouch(otherPart)
local partParent = otherPart.Parent
local player = Players:GetPlayerFromCharacter(partParent)
local leaderstats = player and player:FindFirstChild("leaderstats")
local goldStat = leaderstats and leaderstats:FindFirstChild("Gold")
if goldStat then
-- Hancurkan pengambilan
goldChunk:Destroy()
-- Perbarui statistik papan peringkat pemain
goldStat.Value += 10
end
end
goldChunk.Touched:Connect(onPartTouch)

Memesan Statistik

Ada tiga cara untuk mengontrol urutan statistik di papan peringkat:

  • Tambahkan statistik dalam urutan yang Anda inginkan agar mereka muncul.
  • Tambahkan anak BoolValue bernama IsPrimary ke statistik dan tetapkan nilainya ke true untuk menempatkan statistik pertama di papan peringkat.
  • Tambahkan anak NumberValue bernama Priority ke statistik dan tetapkan nilainya menjadi angka ganjil.Nilai prioritas yang lebih tinggi muncul lebih awal di papan peringkat. Statistik tanpa prioritas memiliki prioritas default 0.

Sampel kode ini menunjukkan cara menambahkan nilai IsPrimary ke stat:


local Players = game:GetService("Players")
local function leaderboardSetup(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 isPrimary = Instance.new("BoolValue")
isPrimary.Name = "IsPrimary"
isPrimary.Value = true
isPrimary.Parent = gold
end
Players.PlayerAdded:Connect(leaderboardSetup)

Sembunyikan Papan Peringkat

Untuk menyembunyikan papan peringkat, seperti pada layar menu atau selama cutscene, letakkan LocalScript di dalam StarterGui atau StarterPlayerScripts yang mengandung panggilan untuk 1> Class.StarterGui:SetCoreGuiEnabled()|StarterGui1> .


local StarterGui = game:GetService("StarterGui")
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.PlayerList, false)