Pengumpul Koin
Termasuk bagian Scripting Game Roblox dalam perjalanan Lua di Coddy. Pelajaran 15 dari 25.
Pad harta karun mengatur set Coins ke 100. Koin seharusnya add 1, dan itu menimbulkan masalah baru.
Touched terpicu sekali untuk setiap bagian tubuh yang menyentuhnya, jadi satu langkah ke atas koin bisa memicunya beberapa kali. Tambahkan 1 poin setiap kali, dan satu koin akan memberi beberapa poin.
Solusinya adalah debounce: variabel yang mengingat "ini sudah terjadi" dan membuat kodemu mengabaikan pemicuan berulang:
local used = false
button.Touched:Connect(function(hit)
if not used then
used = true
print("Pressed!")
end
end)not used bernilai true saat used bernilai false, jadi hanya sentuhan pertama yang lolos dari if not used. a and b bernilai true hanya saat keduanya true: if player and not used then membutuhkan pemain dan tombol yang belum digunakan.
Saat perulangan menghubungkan banyak bagian, buat variabel di dalam perulangan agar setiap bagian memiliki variabelnya sendiri. value += 1 adalah bentuk singkat dari value = value + 1.
Tantangan
SedangBuat setiap koin memberikan tepat 1 Coin: berjalan melewati satu koin sekarang memberikan beberapa Coin.
- Di dalam
forloop, sebelumConnect, tambahkanlocal collected = false. - Ubah pemeriksaannya menjadi
if player and not collected then. - Jadikan
collected = truebaris pertama di dalamnya.
Tekan tombol “Main” dan berjalanlah melewati koin: Coins bertambah tepat 1. Lalu tekan tombol “Periksa”.
Coba sendiri
local Players = game:GetService("Players")
local coins = workspace.Coins
Players.PlayerAdded:Connect(function(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local coinsValue = Instance.new("IntValue")
coinsValue.Name = "Coins"
coinsValue.Value = 0
coinsValue.Parent = leaderstats
end)
for _, coin in coins:GetChildren() do
coin.Touched:Connect(function(hit)
local player = Players:GetPlayerFromCharacter(hit.Parent)
if player then
player.leaderstats.Coins.Value += 1
end
end)
end
Semua pelajaran di Scripting Game Roblox
2Perulangan dan Fungsi
Deretan PilarPembangun TanggaPembangun MenaraPabrik KoinLampu BerkedipJembatan yang Menghilang5Game Pertamamu
Obby Pertamamu3Peristiwa dan Pemain
Pad SentuhLantai LavaStatistik PemimpinSiapa yang Menyentuhnya?Pengumpul KoinKemunculan Kembali KoinPintu KoinLatihan sendiri: Compiler Lua online