Tecrümlerde, genellikle birçok nedensel-etki ilişkisi vardır. Örneğin:
- Bir oyuncu 10 puan alırsa, oyunu kazanır.
- Bir oyuncunun bir güçlendirmeye sahipse, o süper hızlı koşabilir.
- Bir oyuncu sohbete "Mutlu Doğum Günü" derse, konfeti yağmurlar.
Kodlar bu tür durumları ele almak için konditional statement'ları kullanır. Konditional statementlar kod satırlarıdır yalnızca belirli koşullar doğruysa çalışır. Bir konditional statement'nin ifadesi if/then statement dir. Lua'da if statlarının biçimi şu şekilde görünür:
eğer o zaman dil
if "something happens" then-- Başka bir şey yapend
Kondisyonlara dayalı kod parçaları kontrol yapılarıdır. Kontrol yapıları kod formunda akış diyagramı gibidir ve birkaç koşullu ifadeye sahip olabilir.
Eğer ifade pratiği
Bu adımlar, bir ifadenin doğru olduğunda bir parçanın rengini değiştiren bir senaryo oluşturmanın yolunu gösterir.
In ServerScriptService , yeni bir script oluşturun ve ismini TruthChecker olarak değiştirin. Skripte uygun bir yorum ekleyin.
-- Bir koşul doğrulandığında parçayı değiştirirLieDetector adında yeni bir parça oluşturun.
Statistiklerin Biçimlendirilmesi
Kondisyonlar çeşitli formlarda gelir, ancak genellikle matematiksel eşitlikler gibi basit ifadelerdir. Örneğin, 1 + 1 2 eşitse, bazı kodları çalıştırın. Genel olarak, koşullu ifadeler operatörleri kullanabilir (örneğin, + veya daha azı) para if
Bilinmesi gereken bir özel operatör == ؛ "eşit" olarak yazılır. Yani 2 + 2 == 4 ifadesi "iki artı iki eşit" olarak yorumlanabilir. Çok dikkatli olun = ile karıştırmayın, bu değerleri yeni nesiller için atayan yeni değerler atar.
Boş kondisyonu ayarla. Kodun içinde if then yazın ve Enter tuşuna basın. then anahtar kelimesi altı ışınlanacak, çünkü kod tamamlanmamış.
if then-- boş kodendKelime ile birlikte if , bir doğru ifadeyi yazın, örneğin 3 + 3 == 6.
if 3 + 3 == 6 then-- boş kodendKondisyonlara uygun olarak, LieDetector adını verdiğin parçayı referans al ve parçanın Color özelliğini yeşil olarak değiştir.
if 3 + 3 == 6 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endTest kodunuzu test edin. Eğer üç artı üç altıya eşit ise, parça yeşile dönecektir.
Bir Yanlış Kondisyonu Kontrol
Şimdi, matematik eşamasının doğru olmadığında ne olduğunu görmek için ifadeleri amaçlı olarak değiştirin.
if deklarında, eşitliği yanlış bir şeyle değiştirin, örneğin 3 + 3 >= 10 .
if 3 + 3 >= 10 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endKodunuzu şimdi test edin. Parça yanlış bir ifade için yeşil olmamalıdır.
Matematik Operatörleri
Aşağıdaki tabloda bazı yaygın Lua operatörleri listelenir. Operatörler hakkında daha fazla bilgi Luau Operatorları üzerinde bulunabilir.
Sembol | Anlam |
---|---|
+ | Ek |
- | Tersyüz |
* | Çarpanlama |
/ | Bölüm |
Karşılaştırma Operatörleri
- == : Eşit.
- ~= : Eşit değildir.
- < veya > kullanılır, bu da aynı anda daha az veya daha fazla kullanılır.
- <= veya >='i kullanmak daha az/daha fazla veya eşit olarak kullanılır.
Değişkenler ve Özellikler
Konditional ifadeler ayrıca özelliklerin ve değişkenlerin durumunu değerlendirmek için kullanılır. Aşağıdaki adımlar bir değişkenin başarıyla bir değer atandığını kontrol eder.
Tüm kodu sil ve aşağıdaki kısayoluyu kodun içine kopyala. Test et, ve yeni bir hata Test'e görünür.
local mysteryPart = workspace.MysteryPart-- MysteryPart'ın başarıyla atanıldığını değerlendirir ve bunu doğrulurif mysteryPart thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endMysteryPart adındaki yeni bir parçayı çalışma alanına yerleştirin. Test yeniden yapın ve LieDetector yeşil olmalıdır.
Özellikler kondisyonlarla değerlendirilebilir nasıl. MysteryPart'ı tutun, ancak bir kez daha, kodunuzu silin ve aşağıdaki kod kutusunu kopyalayın.
local mysteryPart = workspace.MysteryPart-- MysteryPart tamamen opak olduğunda doğrulanırif mysteryPart.Transparency == 0 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)mysteryPart.Transparency = .2endkodtest edin ve MysteryPart'ın varsayılan trasparensi 0 olduğunda, LieDetector turna yeşil olunca hayalet hale gelir.
Özet
Konditional ifadeleri koşullu olup olmadığını görmek için kontrol eder ve eğer öyleyse, birkaç kod çalıştırır. Eğer ifadeler çok yaygın bir tür konditional ifadeleri ise, "If this is true, then do that." şeklindeki pat턴ı kullanır.
Kondisyonlı ifadeleri kullanan kod parçalarına kontrol yapıları denir. Kontrol yapıları birden fazla kondisyonlu ifadeyi tutabilir.
Basit matematik ifadelerinin gerçek olup olmadığını değerlendirmekle birlikte, koşullar ayrıca değişkenlerin ve özelliklerin durumunu kontrol etmek için kullanılır.