Sebuah lencana adalah penghargaan khusus yang dapat Anda berikan kepada pemain ketika mereka mencapai tujuan dalam pengalaman Anda, seperti menyelesaikan tujuan yang sulit atau bermain selama jumlah waktu tertentu. Setelah seorang pemain menerima lencana, itu akan ditampilkan dalam kategori Lencana di inventaris mereka.
Membuat Lencana
Anda dapat menciptakan hingga 5 lencana secara gratis dalam waktu 24 jam (GMT) untuk setiap pengalaman yang Anda memiliki. Jika Anda ingin membuat lebih banyak dalam waktu 24 jam, setiap lencana tambahan dikenakan biaya 100 Robux.
Untuk membuat lencana:
Navigasikan ke Dashboard Pencipta.
Temukan pengalaman yang terkait, klik ⋯ di sudut thumbnailnya, dan pilih Buat Badge .
Pada halaman pembuatan, klik tombol Upload Image dan kemudian pilih/konfirmasi gambar yang ingin Anda gunakan sebagai ikon lencana. Saat membuat gambar untuk digunakan untuk lencana, pertimbangkan hal mengikuti:
Gunakan template dari 512×512 pixels .
Proses pengunggahan mengkompresi dan memotong gambar lencana menjadi ikon lingkaran, jadi hindari menempatkan rincian penting di luar batas lingkaran.
Selesaikan field berikut:
- Nama — Judul untuk lencana.
- Deskripsi — Deskripsi dari apa yang dapat dilakukan pemain untuk mendapatkan lencana.
- Badge diaktifkan — Apakah badge akan diaktifkan ketika dibuat. Disable badge tidak ditunjukkan di bagian Badge dari halaman utama pengalaman dan tidak dapat diperoleh oleh pemain.
Klik tombol Buat Badge . Tombol baru badge akan ditampilkan di dalam Komitmen → Badge bagian pada 1> Dashboard Pencipta1>. Jika tombol baru dinyalakan, itu juga akan ditampilkan di bawah bagian 4> Badge4> dari halaman utama pengalaman.
Menghasilkan Lencana
Mitos umum tentang pembuatan skrip lencana umum termasuk memberikan lencana , memeriksa apakah seorang pemain sebelumnya mendapatkan lencana di pengalaman Anda dan mendapatkan informasi lencana.
Mencari ID Badge
ID suatu lencanaadalah identitas uniknya. Anda akan memerlukan ID ini saat menerapkan workflow seperti memberikan badge kepada pemain ketika menerapkan workflow seperti ini.
Pada Dashboard Pencipta, navigasikan ke bagian Lencana yang terkait dengan pengalaman yang terkait di bawah Komitmen .
Klik tombol ⋯ untuk mendapatkan badge dan pilih Copy Asset ID .
Memberikan Lencana
Anda dapat memberikan badge kepada pemain di seluruh pengalaman Anda dengan menelepon metode BadgeService:AwardBadge() di server-side Script . Class.BadgeService:GetBadgeInfo
Berikut adalah contoh fungsi aman untuk memberikan badge kepada pemain.
local BadgeService = game:GetService("BadgeService")
local function awardBadge(player, badgeId)
-- Dapatkan informasi lencana
local success, badgeInfo = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, badgeId)
if success then
-- Konfirmasi bahwa badge dapat diberikan
if badgeInfo.IsEnabled then
-- Berikan lencana
local awarded, errorMessage = pcall(BadgeService.AwardBadge, BadgeService, player.UserId, badgeId)
if not awarded then
warn("Error while awarding badge:", errorMessage)
end
end
else
warn("Error while fetching badge info!")
end
end
Memeriksa Badge yang Diterima
Skrip berikut memeriksa ketika pemain memasuki pengalaman, lalu menggunakan metode BadgeService:UserHasBadgeAsync() untuk mengverifikasi apakah pemain memiliki badge dengan ID yang cocok yang ditetapkan dalam variabel BADGE_ID. Anda juga dapat mengverifikasi kep
local BadgeService = game:GetService("BadgeService")
local Players = game:GetService("Players")
local BADGE_ID = 00000000 -- Ganti ini menjadi ID lencana Anda
local function onPlayerAdded(player)
-- Periksa apakah pemain memiliki lencana
local success, hasBadge = pcall(BadgeService.UserHasBadgeAsync, BadgeService, player.UserId, BADGE_ID)
-- Jika ada kesalahan, masukkan peringatan dan keluar dari fungsi
if not success then
warn("Error while checking if player has badge")
return
end
if hasBadge then
-- Penanganan kepemilikan badge pemain jika perlu
end
end
-- Hubungkan acara "PlayerAdded" ke fungsi "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)
Mendapatkan Info Lencana
Untuk mendapatkan informasi tentang lencana, seperti deskripsi atau ID aset lencana, panggil metode BadgeService:GetBadgeInfoAsync() dengan ID lencana . Misalnya:
local BadgeService = game:GetService("BadgeService")local BADGE_ID = 00000000 -- Ganti ini menjadi ID lencana Anda-- Dapatkan informasi lencanalocal success, result = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, BADGE_ID)-- Keluarkan informasiif success thenprint("Badge:", result.Name)print("Enabled:", result.IsEnabled)print("Description:", result.Description)print("Icon:", "rbxassetid://" .. result.IconImageId)elsewarn("Error while fetching badge info:", result)end