From Test-Scratch-Wiki
Bir C bloğu "C" harfine benzeyen bir bloktur, böylece diğer bloklar içine girebilir. Bu bloklar koşulları ve döngüleri gerçekleştirirler.
Şekil
C bloklarının bir "ağzı" vardır ("C" harfine benzer, isminin kökeni buradan gelir) — C bloğu ile çalışacak bloklar bu ağızlara girerler. Bir tane hariç tüm C blokları bir ağızdan oluşurlar — diğeri, Eğer () ise, Değilse iki ağızan oluşur. Diğer C bloklarından herhangi biri bir blok yığınına doğru sürüklendiğinde — eğer C boşsa — blok ağzı blokların çevresinde sarmak için genişler.
(10) defa tekrarla <(ses yüksekliği :: sensing) > [30]> olana kadar tekrarla (1) sn.de x: (10) y: (0)'a git :: motion (1) saniye bekle x: (0) y: (0) konumuna git :: motion end (Miyav v) sesini bitene kadar çal end
1.2.1'de ve daha öncesinde, C bloğu betiklerinde tek seferde sadece bir blok çalıştırılabilirdi.
Bloklar
Scratch 2.0'da beş tane C bloğu bulunur ve hepsi Kontrol kategorisinde bulunabilirler.
In Scratch 1.4'te ve daha öncesinde, () ise Sürekli bloğu bulunmaktaydı. Bu blok daha sonrasında çözümüyle değiştirildi.
sürekli tekrarla eğer <> ise
Kullanımları
C blokları kontrol ve döngüler için olduklarından dolayı, neredeyse her yerde bulunurlar. Bazı kullanımları şunlardır:
- Sürekli tekrarlanması gereken şeyler
yeşil bayrak tıklandığında sürekli tekrarla (15) derece saat yönünde dön end
- Bir şartı kontrol etmek
[boşluk v] tuşuna basılınca eğer <(ses yüksekliği) > [30]> ise durdur [all v] end
- Bir animasyonu belirli bir süre tekrarlamak
yeşil bayrak tıklandığında (200) defa tekrarla (36) derece saatin tersi yönde dön [renk v] etkisini (1) değiştir end
Bu da hem kontrol hem de döngü oluşturmak için bir örnek:
[Canı düşür v] haberini aldığımda [Can v] i (-1) kadar değiştir eğer <(Can) = [0]> ise (8) defa tekrarla [renk v] etkisini (25) değiştir end end
- Başlatma/Durdurma
yeşil bayrak tıklandığında eğer <[boşluk v] tuşuna basıldı mı?> ise durdur [tümü v] değilse end
Burada bir kontrol var (Eğer () ise bloğu Can değişkeninin 0 değerinde olup olmadığını kontrol ediyor) ve kontrolün içinde bir tane tekrarlama döngüsü var (with the () Defa Tekrarla bloğu). C bloklarının nasıl diğer C bloklarının içine koyulabildiğine dikkat ediniz.