Birçok bilgisayar biliminde veya oyun geliştirmeinde tekrarlanan şeyler. durum, bir uygulama her birkaç saniyede bir içeriği güncelleyebilir veya bir oyun her gün giriş yapan oyuncuya bir ödül verebilir. Bu davranışı gerçekleştirmek için kodlayıcılar genellikle döngüler kullanır.
Bilgisayar biliminde, bir döngü bir set of talimatları tekrarlayan bir kodlama patronsu. Genellikle belirli bir koşul sağlanana kadar. Bunu uygulamak için, renkleri sonsuza kadar değiştiren bir parçayı kodlayacaksınız. Daha son dersler bu koşulu durdurmak nasıl gösterecek.
Parça ve Skripti Ayarlama
Bu egzersiz için herhangi bir Roblox projesini kullanın. Tamamlandığında, bu bir çevre dekorasyonunun bir yolunu olabilir.
Açıklayıcı bir isimle yeni bir parça oluşturun. Bu ders LoopingPart kullanır.
In ServerScriptService , LoopingScript adında yeni bir skript ekler.
Scriptte, Hello World sil ve bu scriptin amaçlarını belirten bir yorum yaz.
-- Changes the color of LoopingPart every few seconds
Bir Parçayı Depolmak için Değişkenleri Kullanıyoruz
Değişkenler ayrıca yazılımların içindeki referansları da içerebilir. Örneğin, bir kod bir parçanın referansını bilirse, kodu değiştirebilir.
workspace.NameOfYourPart yazmak yerine, tüm bu satır local depoları içine saklanabilir. local yazmak, sonra değişkenin adını yazdıktan sonra oluşturulur.
Örneğin: local nameOfVariable .
yorumaltında, local loopingPart yazıp yerel bir değişken oluştur.
-- LoopyPart'ın her birkaç saniyede bir rengini değiştirirlocal loopingPartAynı satırda = workspace.LoopingPart yazıp değiştiriciyi devreye koyun. = operatörü, değiştiricinin değerini sağındaki değere ayarlar.
-- LoopyPart'ın her birkaç saniyede bir rengini değiştirirlocal loopingPart = workspace.LoopingPart
Loop'lar
Renk değiştiren parçanın while döngüsünü oluşturmak önce, onun dilini açıklamaya değer. Bir while döngüsünün üç bileşen vardır:
- The while keyword.
- Bir koşul, her zaman anahtar kelime'den sonra.
- Yönergeler, do ve end anahtar kelimeleri arasındaki.
Koşullar mantıksal ifadelerin çeşitli bir şekilde olabilir. Birkaç örnek olabilir eğer iki sayı aynıysa. Bir koşul doğrulandıysa, bir döngü çalışır.
Aşağıdaki örnekte gösterildiği gibi, koşul doğrudur, yani bu döngü sonsuza kadar çalışacaktır. Sonraki derslerde, duran özel koşulları kodlayacaksınız.
while true doprint("This loop is running")end
Bir While Loop'u Oluşturma
Ardından, renk değiştiren parçanın while döngüsünü ayarlayacaksınız.
Önüne bir satır yazın while true do . Sonra, Enter tuşuna basın ve kelimeyi end ekleyin.
-- LoopingPart'ın her birkaç saniyede bir rengini değiştirirlocal loopingPart = workspace.LoopingPart-- Kodu Yeniden Oynatmawhile true doend
Kodu Loop'a Ekleme
Oluşturulan while iletişim kaynağı, talimatları ekleyerek parçanın rengini zamanla değiştirebilir. Loop içinde, her rengin için bir kod satırı ekleyin. Her rengin RGB değerlerini kullanır, bir yöntem kullanarak renkleri bilgisayar bilimiinde sayı olarak depolayan bir yol.
- while true do ile bitir arasında, parçanın Rengi özelliğini Datatype.Color3.fromRGB() olarak ayarlar.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB()end
Renk ayarlanabilir Studio'da bir renk seçici kullanarak yapılır. Bunu yapmak için, ()``fromRGB ile birlikte sol tıklayın. Sonra, renk simgetıklayın. Hedeflenen renk eklenir.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB(82, 227, 255)end
Script'i Bekletme
Eğer şimdi ikinci bir renk değiştirme kodu eklerseniz, duvarın ilk rengini görmezsiniz kadar hızlı olurdu. Skripti bir sonraki kod satırını çalıştırmadan önce bekletmek için bir task.wait() işlevini kullanın.
Tuğla rengini değiştirdikten sonra satırda yazın task.wait(3). Herhangi bir sayı () içine yerleştirildiğinde, kullanıcının beklemesi gereken saniye sayısıdır.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB(82, 227, 255)task.wait(3)endBekleme işlevi altında, yeni bir renk eklemek için aynı işlemi tekrarlayın. Bu işlemi ekstra bir bekleme işleviyle bitirin.
while true doloopingPart.Color = Color3.fromRGB(82, 227, 255)task.wait(3)loopingPart.Color = Color3.fromRGB(177, 52, 255)task.wait(3)endKodu test edin ve renklerin değişip değişmediğini görün.
Renk Değiştirme Notları Bu noktada, renk değiştirme parçasının niyetinin aksine çıkarsa, aşağıdaki birinden deneyin. Sorun: Renkler atlanıyor
Her renk değişikliği arasında bir bekleme işlevi olduğundan emin olun, özellikle son satırda.
Tüm renk değişikliği ve bekleyici kodun while true do ve end bölümleri arasında olduğundan emin olun. Sorun: Parça hala gri veya planlanan renk değiştirmez
Tüm RGB değerlerinin 0 ila 255 arasında sayıları olduğundan, bütün veya onluk sayılar olduğundan ve virgüllerle ayrıldığından emin olun.
Bir bekleme işlevinin içindeki sayılar 1'den büyük olmalıdır. Bir beklemenin çok kısa olması durumunda, renk görmeyebilirsiniz.
Renkli Döngü Parçasının Kısmını Tamamla
-- Parçayı depolamak için bir değişken oluşturlocal loopingPart = workspace.LoopingPart-- Kodu Yeniden Oynatmawhile true do-- LoopingPart'ın rengini değiştirirloopingPart.Color = Color3.fromRGB(82, 227, 255)-- Sonraki talimat için 3 saniye bekletask.wait(3)loopingPart.Color = Color3.fromRGB(177, 52, 255)task.wait(3)end
Özet
Koşulların yerine getirilmesi için bazen tekrar edilir. Bazen özel koşulların yerine getirilmesi için kullanılır. Bu makalede, while koşulu sonsuza kadar tekrar edilir. Bir while koşusunu sonsuza kadar tekrar etmek için aşağıdaki sözcükleri kullanın, özellikleri do ve
while true do-- Komutlarend