Pernyataan if dapat memiliki beberapa persyaratan yang harus benar sebelum menjalankan kode. Kata kunci and memungkinkan Anda menggabungkan pernyataan. Kode berikut mengevaluasi terlebih dahulu apakah dua ditambah dua sama dengan enam dan kemudian apakah empat tidak sama dengan enam. Jika kedua pernyataan benar, kode akan dijalankan.
-- tidak akan dijalankanif 2 + 2 == 6 and 4 ~= 6 thenprint("Kedua pernyataan benar")end-- akan dijalankanif 4 + 2 == 6 and 4 ~= 6 thenprint("Kedua pernyataan benar")end
Buat powerup
Powerup adalah item dalam pengalaman yang memberikan pemain kemampuan khusus seperti terbang, tidak terlihat, atau kecepatan. Powerup ini akan meningkatkan kecepatan berjalan pemain setiap kali powerup tersebut disentuh. Menerapkan dorongan secara terus-menerus dapat membuat pemain bergerak terlalu cepat, jadi and akan digunakan untuk mengontrol batas kecepatan berjalan maksimum.
Siapkan powerup
Gunakan kode ini dengan sebuah bagian sederhana atau model, seperti kristal, koin, atau bola neon yang bersinar.
Buat bagian baru bernama Powerup dan masukkan skrip bernama WalkSpeedManager.
Deklarasikan variabel bernama speedBoost dan tetapkan objek induk skrip.
-- Memberikan dorongan kecepatan sementara saat disentuhlocal speedBoost = script.ParentSiapkan fungsi bernama onTouch dan hubungkan dengan peristiwa Touched dari objek induk. Kemudian lakukan pengujian dan periksa pekerjaan Anda.
local speedBoost = script.Parentlocal function onTouch(otherPart)print("Sesuatu menyentuh speedBoost")endspeedBoost.Touched:Connect(onTouch)Properti WalkSpeed ditemukan pada objek Humanoid. Gunakan pola yang sama seperti ketika membuat bagian perangkap dan buatlah kondisi yang memeriksa objek Humanoid.
Mencari bagian Humanoidlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenprint("Sebuah Humanoid ditemukan")endend
Percepat pemain
Dorongan kecepatan akan membuat avatar berjalan lebih cepat setiap kali dorongan kecepatan disentuh. Itu akan dengan cepat menjadi sangat, sangat cepat. Kata kunci and akan memastikan pemain tidak bisa bergerak terlalu cepat dengan hanya mengaktifkan dorongan kecepatan jika pemain berada di bawah kecepatan tertentu.
Jika Humanoid ditemukan, ambil nilai WalkSpeed saat ini dan tambahkan 10 ke dalamnya. Lakukan pengujian, dan avatar Anda akan menjadi lebih cepat setiap kali menyentuh dorongan kecepatan.
Meningkatkan WalkSpeed saat inilocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenhumanoid.WalkSpeed += 10endendspeedBoost.Touched:Connect(onTouch)Dalam pernyataan if, gunakan kata kunci and untuk menambahkan kondisi kedua bahwa nilai WalkSpeed saat ini kurang dari 50. Setelah menambahkan dorongan, nilai WalkSpeed tertinggi akan menjadi 60.
Memeriksa apakah WalkSpeed saat ini 50 atau kurangif humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10end
Haluskan dorongan kecepatan
OnTouch dipanggil setiap kali dorongan kecepatan disentuh. Setiap langkah atau pantulan kecil memicu peristiwa Touched dan memanggil fungsi yang terhubung. Properti bagian, CanTouch dapat mencegah peristiwa Touched dari pemicu. Manfaatkan CanTouch dan matikan dorongan kecepatan selama satu detik setiap kali diaktifkan.
Setelah menerapkan dorongan, tetapkan properti CanTouch bagian ke false. Lakukan pengujian dan pastikan dorongan hanya diterapkan sekali.
Menonaktifkan dorongan kecepatanlocal speedBoost = script.Parentlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10speedBoost.CanTouch = falseendendspeedBoost.Touched:Connect(onTouch)Gunakan task.wait(1) untuk menjeda skrip selama satu detik, kemudian tetapkan CanTouch ke true. Lakukan pengujian dan pastikan dorongan kecepatan dapat diterapkan kembali setelah satu detik.
Skrip selesailocal speedBoost = script.Parentlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10speedBoost.CanTouch = falsetask.wait(1)speedBoost.CanTouch = trueendendspeedBoost.Touched:Connect(onTouch)Mainkan dengan nilai-nilai dalam skrip yang telah selesai. WalkSpeed dapat meningkat hingga 100. Nilai default WalkSpeed adalah 16.
Ringkasan
Kata kunci and dapat digunakan untuk meminta beberapa kondisi sebelum menjalankan sepotong kode, seperti suatu nilai yang lebih dari 0 dan kurang dari 100. Atau bahwa jika ada Humanoid dan WalkSpeed-nya kurang atau sama dengan 50.