35. leaderstats dan value objects — Solusi PR
Cuplikan Roblox. File .lua ada di
exercises/35/homework/solutions/.
Soal 1 — Nilai poin
Solusi lengkap.
local points = Instance.new("IntValue")
points.Name = "Points"
points.Value = 0Sebuah IntValue menyimpan satu bilangan bulat di
.Value.
Soal 2 — leaderstats saat pemain masuk
Solusi lengkap.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local wins = Instance.new("IntValue")
wins.Name = "Wins"
wins.Value = 0
wins.Parent = leaderstats
end)Folder harus diberi nama persis leaderstats;
Wins akan menjadi kolomnya.
Soal 3 — Tambah kemenangan
Solusi lengkap.
local leaderstats = player:FindFirstChild("leaderstats")
if leaderstats then
local wins = leaderstats:FindFirstChild("Wins")
if wins then
wins.Value = wins.Value + 1
end
endSetiap FindFirstChild dijaga dengan if,
sehingga folder atau nilai yang tidak ada tidak akan menyebabkan
crash.
Tantangan — Dua statistik
Solusi lengkap.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local coins = Instance.new("IntValue")
coins.Name = "Coins"
coins.Value = 0
coins.Parent = leaderstats
local rank = Instance.new("StringValue")
rank.Name = "Rank"
rank.Value = "Novice"
rank.Parent = leaderstats
end)Kedua value object berada di folder leaderstats yang
sama, sehingga leaderboard menampilkan dua kolom, Coins dan
Rank.
Selesai?
Itulah seluruh isi buku ini. Kamu sudah bisa menginstal Lua, menulis dan menjalankan program, membuat keputusan dan perulangan, membangun data dengan tabel, mengorganisir kode dengan fungsi, modul, dan class, serta membawa semuanya ke Roblox Studio melalui Instance, event, service, dan leaderstats. Dua mini-proyek terakhir — Touch-to-Collect Coin dan Collect-All-Coins — membawa sisi Roblox ke dalam scene yang bisa dimainkan. Semoga sukses dengan game-nya; terminal selalu siap kapan pun kamu butuhkan.