Mengevaluasi Beberapa Pernyataan

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

Jika pernyataan dapat memiliki beberapa persyaratan yang perlu benar sebelum mengeksekusi kode. Keyword and memungkinkan Anda untuk menggabungkan pernyataan. Kode berikut mengevaluasi pertama jika dua plus dua sama dengan enam dan kemudian jika empat tidak sama dengan enam. Jika kedua pernyataan benar, kode akan dijalankan.


-- tidak akan berjalan
if 2 + 2 == 6 and 4 ~= 6 then
print("Both statements are true")
end
-- akan berjalan
if 4 + 2 == 6 and 4 ~= 6 then
print("Both statements are true")
end

Membuat Powerup

Powerups 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 disentuh. Menerapkan powerup secara terus-menerus dapat membuat pemain pergi terlalu cepat, jadi and akan digunakan untuk mengontrol batas kecepatan berjalan atas.

Mengatur Powerup

Gunakan kode ini dengan bagian sederhana atau model, seperti kristal, koin, atau bola neon bersinar.

  1. Buat bagian baru bernama Powerup dan masukkan skrip bernama WalkSpeedManager .

  2. Deklarasikan variabel bernama speedBoost dan asign objek parent script.


    -- Memberikan dorongan sementara saat disentuh
    local speedBoost = script.Parent
  3. Set up a function named onTouch and connect it to the parent object's Touched event. Then playtest and check your work.


    local speedBoost = script.Parent
    local function onTouch(otherPart)
    print("Something touched speedBoost")
    end
    speedBoost.Touched:Connect(onTouch)
  4. Propiedad WalkSpeed ditemukan pada objek Humanoid. Gunakan pola yang sama yang digunakan saat membuat bagian perangkap dan membuat kondisi yang memeriksa objek Humanoid.

    Mencari bagian Humanoid

    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    print("A Humanoid was found")
    end
    end

Meningkatkan Kecepatan Pemain

Peningkatan kecepatan akan membuat avatar berjalan lebih cepat setiap kali peningkatan kecepatan disentuh. Itu akan segera menjadi sangat, sangat cepat. Kata kunci and akan memastikan pemain tidak dapat pergi terlalu cepat hanya dengan mengaktifkan peningkatan kecepatan jika pemain berada di bawah kecepatan tertentu.

  1. Jika Humanoid ditemukan, ambil nilai WalkSpeed saat ini dan tambahkan 10 ke dalamnya. Playtest, dan avatar Anda akan menjadi lebih cepat setiap kali menyentuh peningkatan kecepatan.

    Meningkatkan WalkSpeed saat ini

    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    humanoid.WalkSpeed += 10
    end
    end
    speedBoost.Touched:Connect(onTouch)
  2. Dalam pernyataan if, gunakan kata kunci and untuk menambahkan kondisi kedua bahwa nilai WalkSpeed saat ini kurang dari 50. Setelah menambahkan dorongan, nilai WalkSpeed tercepat akan menjadi 60.

    Memeriksa apakah WalkSpeed saat ini adalah 50 atau kurang

    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    end

Tune-up Kecepatan Meningkatkan

OnTouch di panggil setiap kali speed boost disentuh. Setiap langkah atau bounce kecil menyebabkan acara Touched dan memanggil fungsi yang terhubung. Propietas bagian, CanTouch , dapat menyimpan acara Touched dan memanggil fungsi yang terhubung. Manfaatkan CanTouch dan matikan speed boost setiap detik setelah diaktifkan.

  1. Setelkan propperti CanTouch bagian ke false setelah menerapkan dorongan. Playtest dan pastikan dorongan hanya berlaku sekali.

    Mengubah speed boost

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    speedBoost.CanTouch = false
    end
    end
    speedBoost.Touched:Connect(onTouch)
  2. Gunakan task.wait(1) untuk menghentikan skrip untuk satu detik, lalu atur CanTouch ke benar. Playtest dan pastikan bahwa peningkatan kecepatan dapat diterapkan kembali setelah satu detik.

    Skrip selesai

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    speedBoost.CanTouch = false
    task.wait(1)
    speedBoost.CanTouch = true
    end
    end
    speedBoost.Touched:Connect(onTouch)
  3. Mainkan dengan nilai dalam naskah selesai. WalkSpeed dapat meningkat hingga 100.Nilai WalkSpeed default adalah 16.

Sintesis

Kata kunci and dapat digunakan untuk mengharuskan beberapa kondisi sebelum mengeksekusi bagian kode, seperti nilai lebih dari 0 dan kurang dari 100. Atau bahwa jika ada Humanoid dan WalkSpeed-nya kurang dari 50.