Oyunlarda genellikle birçok neden-sonuç ilişkisi vardır. Örneğin:
- Bir oyuncu 10 puan alırsa, oyunu kazanır.
- Bir oyuncunun bir güçlendiricisi varsa, süper hızlı koşabilir.
- Bir oyuncu sohbetten "İyi ki doğdun" derse, konfeti yağar.
Betikler, bu tür durumları yönetmek için koşullu ifadeler kullanır. Koşullu ifadeler, belirli koşullar doğru olduğunda yalnızca çalışan kod satırlarıdır. Bir tür koşullu ifade if/then ifadesidir. Luau'da if ifadeleri için sözdizimi deseni şu şekildedir:
if "bir şey olursa" then
-- Başka bir şey olmasını sağla
endKoşullu ifadeler kullanan kod parçaları kontrol yapılarıdır. Kontrol yapıları, kod biçiminde akış diyagramları gibidir ve birden fazla koşullu ifade içerebilir.
If ifadesi uygulaması
Bu adımlar, bir ifadenin doğru olması durumunda bir parçanın rengini değiştiren bir betik oluşturmayı gösterir.
ServerScriptService içinde yeni bir betik oluşturun ve adını TruthChecker koyun. Betiğe uygun bir yorum ekleyin.
-- Bir koşul doğruysa parçayı değiştirir"LieDetector" adında yeni bir parça oluşturun.
If ifadelerini biçimlendirin
Koşullar, çeşitli biçimlerde olabilir ancak genellikle matematik denklemleri gibi basit ifadelerdir. Örneğin, eğer 1+1 2'ye eşitse, o zaman bazı kodları çalıştırın. Sıradan matematik denklemleri gibi, koşullu ifadeler operatörler kullanabilir; örneğin toplama (+) veya küçüktür (<) gibi.
Dikkat edilmesi gereken bir operatör =='dir; "eşittir" anlamına gelir. Yani 2 + 2 == 4 ifadesi "iki artı iki dört eder" şeklinde okunabilir. Yeni değerleri nesnelere, örneğin değişkenlere atamak için kullanılan = ile karıştırmamaya dikkat edin.
Boş bir koşulu ayarlayın. Betikte if then yazın ve koşulu otomatik tamamlamak için Enter tuşuna basın. then anahtar kelimesi altı çizili olacak çünkü kod tamamlanmamıştır.
if then-- boş kodendif anahtar kelimesinden sonra 3 + 3 == 6 gibi doğru bir ifade yazın.
if 3 + 3 == 6 then-- boş kodendKoşul içinde, "LieDetector" adını verdiğiniz parçayı referans gösterin ve parçanın Color özelliğini yeşil yapın.
if 3 + 3 == 6 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endKodunuzu test edin. Eğer üç artı üç altı ediyorsa, parça yeşil olacak.
Yanlış bir durumu kontrol et
Şimdi, matematik denkleminin yanlış olduğunda ne olacağını görmek için ifadeyi kasıtlı olarak değiştirin.
If ifadesinde, denklemi 3 + 3 >= 10 gibi yanlış bir şeyle değiştirin.
if 3 + 3 >= 10 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endŞimdi kodunuzu test edin. Yanlış bir ifade için parça yeşil olmamalıdır.
Matematik operatörleri
Aşağıdaki tablo, bazı yaygın Luau operatörlerini listeler. Operatörler hakkında daha fazla bilgi Luau Operatörleri sayfasında bulunabilir.
| Sembol | Anlamı |
|---|---|
| + | Toplama |
| - | Çıkarma |
| * | Çarpma |
| / | Bölme |
Karşılaştırma operatörleri
- == : Eşittir.
- ~= : Eşit değildir.
- < veya > sırasıyla daha az veya daha fazla için kullanılır.
- <= veya >= sırasıyla daha az/çok veya eşit için kullanılır.
Değişkenler ve özellikler
Koşullu ifadeler, özelliklerin ve değişkenlerin durumunu değerlendirmek için de kullanılır. Aşağıdaki adımlar, bir değişkenin başarıyla bir değere atanıp atanmadığını kontrol eder.
Tüm kodu silin ve aşağıdaki kod parçasını betiğe yapıştırın. Test edin, ve Çıktı'da yeni bir hata belirecektir.
local mysteryPart = workspace.MysteryPart-- MysteryPart başarıyla atandıysa doğru olarak değerlendirilirif mysteryPart thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endÇalışma alanına "MysteryPart" adında yeni bir parça ekleyin. Tekrar test edin, ve LieDetector yeşil olmalıdır.
Özelliklerin koşullu ifadelerle nasıl değerlendirilebileceğini keşfedin. MysteryPart'ı koruyun, ancak bir kez daha kodunuzu silin ve aşağıdaki kod kutusunu kopyalayın.
local mysteryPart = workspace.MysteryPart-- MysteryPart tamamen opak ise doğru olarak değerlendirilirif mysteryPart.Transparency == 0 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)mysteryPart.Transparency = .2endKodu test edin, ve eğer MysteryPart'ın varsayılan saydamlığı 0 ise, hayalet gibi olacak ve LieDetector yeşil olacak.
Özet
Koşullu ifadeler, bir ifadenin doğru olup olmadığını kontrol eder ve eğer öyleyse bazı kodları çalıştırır. If ifadeleri, çok yaygın bir koşullu ifade türüdür. "Eğer bu doğruysa, o zaman şunu yap" desenini kullanırlar.
Koşullu ifadeler kullanan kod parçaları kontrol yapıları olarak adlandırılır. Kontrol yapıları birden fazla koşullu ifade içerebilir.
Basit matematik ifadelerinin doğru olup olmadığını değerlendirmeye ek olarak, koşullu ifadeler değişkenlerin ve özelliklerin durumunu kontrol etmek için de kullanılır.