Jumat, 08 Mei 2026

Data pada Scratch

Di dalam Scratch, pengelolaan data berpusat pada blok Variables (berwarna oranye gelap). Tidak seperti bahasa pemrograman profesional yang memiliki puluhan tipe data rumit, Scratch sangat ramah pemula dan menyederhanakan data ke dalam tiga jenis nilai dasar dan dua bentuk penyimpananBerikut penjelasan rincinya beserta contoh penggunaannya dalam projek:


A. Jenis Nilai Data (Data Types)

Meskipun Scratch tidak menyuruhmu mendeklarasikan tipe data secara eksplisit, sistem Scratch mengenali tiga jenis data berikut:


Type data Angka/number


Type data Strig/teks

1. Angka (Number): Terdiri dari bilangan bulat (1, 5, 100) maupun desimal (3.14, -2.5). Ini sangat sering digunakan untuk perhitungan matematika.

  • Fungsi: Mengatur koordinat (X dan Y), kecepatan, ukuran sprite, nyawa (HP), dan timer.

Type data String

2. Teks (String): Kumpulan huruf, angka, atau simbol yang dibaca sebagai kata atau kalimat. Di Scratch, kamu bisa menggabungkan teks menggunakan blok join.

  • Fungsi: Menyimpan nama pemain, membuat dialog, atau menampilkan pesan Game Over.

Type data Boolen

3. Boolean (Benar/Salah): Data yang hanya memiliki dua kemungkinan: True (Benar) atau False (Salah). Di Scratch, blok data Boolean memiliki bentuk segi enam (hexagonal).

  • Fungsi: Digunakan sebagai syarat (kondisi) dalam blok if - then. Contoh: Apakah tombol spasi ditekan? (Benar/Salah).


B. Bentuk Penyimpanan Data

Untuk menyimpan jenis-jenis nilai di atas, Scratch menyediakan dua wadah utama di menu Variables:



Blok variable

1. Variabel (Variable)

Variabel adalah sebuah "kotak" yang hanya bisa menyimpan satu nilai pada satu waktu. Jika kamu memasukkan nilai baru ke dalam kotak tersebut, nilai yang lama akan terhapus dan terganti.

Sifat Variabel di Scratch:

  • For all sprites (Global): Variabel bisa dibaca dan diubah oleh semua karakter/sprite di dalam game.

  • For this sprite only (Lokal): Variabel khusus yang hanya dimiliki dan hanya bisa diubah oleh satu sprite tertentu.



Blok daftar/list

2. Daftar (List / Array)

Jika variabel adalah satu kotak, maka List adalah "rak berlaci banyak". List digunakan untuk menyimpan banyak nilai sekaligus di bawah satu nama. Setiap nilai di dalam List memiliki nomor urut (indeks).


C. Contoh Projek Berdasarkan Kategori Data

Berikut adalah contoh bagaimana data diaplikasikan dalam projek nyata di Scratch:


1. Projek "Game Tangkap Buah" (Fokus: Variabel Angka)

  • Data yang digunakan: Variabel bernama Skor dan Waktu_Sisa.

  • Cara Kerja: * Di awal permainan, atur set Skor to 0 dan set Waktu_Sisa to 30.

    • Setiap kali sprite "Mangkuk" menyentuh sprite "Apel", gunakan perintah change Skor by 1 (data angka bertambah).

    • Setiap 1 detik, gunakan change Waktu_Sisa by -1 sampai mencapai angka 0, lalu permainan berhenti.


2. Projek "Kuis Hewan Interaktif" (Fokus: Variabel Teks & Boolean)

  • Data yang digunakan: Variabel Nama_Pemain dan blok input answer (jawaban).

  • Cara Kerja:

    • Sprite bertanya menggunakan blok ask "Siapa namamu?" and wait.

    • Data teks dari ketikan pemain akan masuk ke blok answer. Simpan ini dengan set Nama_Pemain to answer.

    • Sprite menyapa menggunakan teks gabungan: say (join "Halo, " Nama_Pemain).

    • Sprite bertanya: ask "Hewan apa yang memiliki belalai?" and wait.

    • Gunakan logika Boolean: if <answer = "Gajah"> then. Jika Benar (True), sprite berkata "Benar!". Jika Salah (False), sprite berkata "Coba lagi!".

Link projek : Siapa kamu?

Contoh projek: Mengisi daftar


3. Projek "Game RPG / Petualangan" (Fokus: List)

  • Data yang digunakan: List bernama Tas_Ransel (Inventory).

  • Cara Kerja:

    • Di awal game, kosongkan tas menggunakan blok delete all of Tas_Ransel.

    • Pemain berjalan dan menyentuh "Kunci Emas". Tambahkan teks tersebut ke List menggunakan add "Kunci Emas" to Tas_Ransel.

    • Pemain menyentuh "Obat Pemulih", add "Obat Pemulih" to Tas_Ransel.

    • Saat pemain berada di depan pintu terkunci, Scratch akan mengecek isi list menggunakan blok logika boolean if <Tas_Ransel contains "Kunci Emas" ?> then. Jika ada, pintu terbuka. Jika tidak ada, pintu tetap terkunci.

Link projek : RPG Sederhana