Kode papan peringkat

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

Dalam game, pemain akan memiliki statistik penting yang perlu mereka lihat seperti item yang telah mereka kumpulkan.Angka-angka ini akan ditampilkan menggunakan papan peringkat. Papan Peringkat dibangun sebagai fitur bawaan Roblox yang membutuhkan skrip untuk diaktifkan dan disesuaikan.

Tetapkan papan peringkat

Setiap kali pemain ditambahkan ke pengalaman, mereka perlu ditambahkan ke papan peringkat bersama dengan kode untuk melacak statistik individu.

  1. Di Explorer, di bawah ServerScriptService , buat skrip baru dengan nama PlayerSetup.Dalam skrip itu, hapus baris hello world dan tulis komentar deskriptif.

  2. Setelah komentar, buat fungsi khusus bernama onPlayerJoin dengan parameter bernama pemain.


    -- Membuat papan peringkat yang menunjukkan variabel pemain
    local function onPlayerJoin(player)
    end
  3. Di , buat variabel bernama , dan biarkan membuat Instansi Folder Baru .


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    end
  4. Beri nama instansi Folder baru, dan berikan kepada pemain.Menamai folder leaderstats membiarkan Roblox Studio tahu untuk membuat papan peringkat.


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
  5. Setelah akhir fungsi, hubungkan OnPlayerJoin ke acara PlayerAdded.Setiap kali pemain bergabung dengan pengalaman, setiap pemain akan diberikan papan peringkat.


    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)

Lacak statistik pemain

Sekarang papan peringkat dibuat, perlu menunjukkan kepada pemain angka-angka ini:

  • Emas - Berapa banyak uang yang dimiliki pemain.
  • Item - Berapa banyak item yang dikumpulkan pemain dari dunia.
  • Ruang - Jumlah item terbanyak yang dapat dipegang pemain pada satu waktu.

Masing-masing angka ini akan menjadi IntValue, objek placeholder untuk angka.

Kode pemain emas

Mulai dengan mengkodekan stat untuk emas.

  1. Di OnPlayerJoin , di bawah leaderstats.Parent = player , ketik local gold = Instance.new("IntValue") . Ini membuat IntValue baru dan menyimpannya di variabel emas.


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    local gold = Instance.new("IntValue")
    end
  2. Selanjutnya, ketik gold.Name = "Gold" . Ini memberi IntValue nama sehingga Anda dapat menggunakannya di skrip lain. Nama juga akan ditampilkan kepada pemain di papan peringkat.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    end
  3. Pada baris baru, ketik gold.Value = 0 . Ini mengatur nilai awal untuk pemain.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    end
  4. Ketik gold.Parent = leaderstats . Ini adalah orang tua IntValue untuk emas ke leaderstats. Jika IntValue tidak diberikan kepada leaderstats, pemain tidak akan melihatnya.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    gold.Parent = leaderstats
    end
  5. Mainkan proyek Anda dan perhatikan bahwa papan peringkat muncul di kanan atas.

Tip pemecahan masalah

Jika Anda tidak melihat papan peringkat, coba mengikuti:

  • Pastikan bahwa .Value diberi huruf besar.
  • Pastikan bahwa variabel untuk IntValue diberikan ke papan peringkat seperti gold.Parent = leaderstats.

Item dan ruang kode

Ingat bahwa nama stat bisa apa saja berdasarkan dokumen desain permainan. Dengan kata lain, "Items" bisa menjadi "Crystals" sebagai gantinya.

  1. Tambahkan baris kosong untuk memisahkan stat berikutnya, lalu buat stat item dengan mengatur IntValue baru dengan cara yang sama seperti yang Anda lakukan untuk emas.


    local function onPlayerJoin(player)
    gold.Parent = leaderstats
    -- Buat stat Item
    local items = Instance.new("IntValue")
    items.Name = "Items"
    items.Value = 0
    items.Parent = leaderstats
    end
  2. Buat stat baru untuk ruang tas pemain.Tetapkan spaces.Value ke 2 sehingga pemain mulai pengalaman hanya dapat memegang dua item sekaligus, mendorong mereka membeli tas baru secepat yang mereka bisa.


    local function onPlayerJoin(player)
    items.Parent = leaderstats
    -- Buat stat Ruang
    local spaces = Instance.new("IntValue")
    spaces.Name = "Spaces"
    spaces.Value = 2
    spaces.Parent = leaderstats
    end
  3. Uji proyek. Pemain harus memiliki papan peringkat yang menunjukkan Emas, Item, dan Ruang.

Jika leaderboard tidak muncul, coba periksa yang berikut di bawah ini.

  • Jika Anda tidak dapat melihat nomor di papan peringkat, periksa apakah setiap IntValue diparentkan ke leaderstats.
  • Pastikan setiap IntValue ditulis persis seperti yang ditunjukkan
  • Periksa bahwa acara PlayerAdded berada di bagian bawah skrip

Selesaikan skrip Pengaturan Pemain

Versi selesai dari skrip dapat di referensikan di bawah ini.


local Players = game:GetService("Players")
-- Membuat papan peringkat yang menunjukkan variabel pemain
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
-- Jalankan pada Join Pemain saat peristiwa Pemain Ditambahkan terjadi
Players.PlayerAdded:Connect(onPlayerJoin)