Melanjutkan pembahasan sebelumnya, video ini membahas tiga blok terakhir dari kategori Control, yaitu clone (kloning/duplikasi sprite): create clone of, when I start as a clone, dan delete this clone.
Clone memungkinkan kita membuat salinan/duplikat dari sebuah sprite secara otomatis lewat kode — bukan dengan cara klik kanan lalu duplicate secara manual. Fitur ini sangat berguna misalnya untuk membuat game di mana musuh harus terus muncul berulang kali tanpa batas (bukan hanya 5 atau 7 kali saja, tapi terus-menerus setiap beberapa detik).
Kita akan membuat sprite “Robot” yang bergerak dari atas ke bawah layar, muncul berulang-ulang di posisi X yang acak, dan hilang begitu mencapai tepi bawah.
when [green flag] clicked
repeat until
change y by -5
Skrip ini membuat robot bergerak turun terus-menerus sampai menyentuh tepi stage.
Alih-alih menduplikasi sprite secara manual (yang jumlahnya terbatas), gunakan blok create clone of myself agar bisa membuat clone sebanyak yang dibutuhkan secara otomatis lewat kode:
when [green flag] clicked
hide
forever
create clone of [myself]
wait 1 seconds
Sprite asli disembunyikan (hide) karena yang akan ditampilkan adalah clone-clone-nya, bukan sprite aslinya. Blok forever memastikan clone baru terus dibuat setiap 1 detik.
Agar setiap clone yang baru dibuat benar-benar tampil dan bergerak, kita perlu blok when I start as a clone — kode di dalamnya akan otomatis berjalan setiap kali sebuah clone baru diciptakan:
when I start as a clone
show
go to x: 0 y: 110
repeat until
change y by -5
Dengan skrip ini, setiap clone baru akan langsung ditampilkan (show), muncul dari posisi atas (x: 0, y: 110), lalu bergerak turun sampai menyentuh tepi bawah stage.
Tanpa dihapus, clone-clone yang sudah mencapai tepi akan terus menumpuk di memori. Gunakan blok delete this clone setelah clone mencapai tepi (blok ini juga sering dipakai dalam skenario lain, misalnya menghapus “musuh” saat diklik/dikalahkan sambil menambah skor):
when I start as a clone
show
go to x: 0 y: 110
repeat until
change y by -5
delete this clone
Sekarang setiap clone akan otomatis terhapus begitu mencapai tepi stage, digantikan oleh clone baru yang terus muncul dari blok forever pada skrip utama.
Agar setiap clone muncul di posisi X yang berbeda-beda (tidak selalu di tengah), gunakan blok pick random dari kategori Operators pada nilai X:
when I start as a clone
show
go to x: (pick random -200 to 200) y: 110
repeat until
change y by -5
delete this clone
Hasilnya, robot-robot akan terus muncul secara acak dari berbagai posisi horizontal di bagian atas layar, bergerak turun, lalu terhapus otomatis saat mencapai tepi bawah — menciptakan efek “musuh berjatuhan” yang khas pada game sederhana.
create clone of myself — membuat salinan/duplikat sprite secara otomatis lewat kode.when I start as a clone — menjalankan kode setiap kali sebuah clone baru dibuat (mirip seperti when green flag clicked, namun khusus untuk clone).delete this clone — menghapus clone yang sedang aktif agar tidak menumpuk terus-menerus.