DC
Kelas Digital Creative
Robotika · IoT · Scratch · Canva · CapCut · AI
← kembali ke Home

Memahami Motion (Gerakan) di Scratch – Bagian 2

⏱ 20 Menit Scratch August 2026 🔧 Scratch Website

Memahami Motion (Gerakan) di Scratch — Bagian 2

Pada video sebelumnya, kita sudah membahas tujuh blok pertama dari kategori Motion. Di bagian ini, kita akan melanjutkan pembahasan blok-blok Motion yang tersisa, mulai dari point in direction hingga blok pelaporan posisi dan arah.

1. Blok “Point in Direction”

Blok ini digunakan untuk mengatur arah hadap sprite secara langsung. Jika arah sprite saat ini adalah 90, kita bisa mengubahnya menjadi nilai lain, misalnya 280. Setelah blok diklik, arah sprite akan langsung berubah sesuai nilai yang dimasukkan. Nilai ini bisa dikembalikan lagi ke 90 kapan saja.

2. Blok “Point Towards Mouse-Pointer”

Blok ini membuat sprite selalu menghadap ke arah posisi kursor mouse. Untuk mendemonstrasikannya, gunakan kombinasi when green flag clicked dan forever:

when [green flag] clicked
forever
    point towards mouse-pointer

Saat dijalankan, arah hadap sprite akan terus berubah mengikuti posisi kursor mouse, dan nilai Direction pada panel Sprite akan ikut berubah secara real-time.

3. Blok “Change X By”

Blok ini menambahkan nilai yang dimasukkan ke nilai X saat ini (bukan menggantinya). Misalnya, jika nilai X saat ini adalah 0 dan kita menjalankan change x by 10, nilai X akan menjadi 10. Jika kemudian kita ubah menjadi change x by 15 dan jalankan lagi, nilai X akan menjadi 25 (10 + 15).

4. Blok “Set X To”

Berbeda dengan change x by, blok ini langsung mengganti nilai X dengan angka yang dimasukkan, tanpa menjumlahkannya dengan nilai sebelumnya. Misalnya, jika nilai X sebelumnya 25 lalu kita jalankan set x to 30, nilai X akan menjadi 30 (bukan 55).

5. Blok “Change Y By”

Cara kerjanya sama persis dengan change x by, hanya saja berlaku untuk koordinat Y. Blok ini menambahkan nilai yang dimasukkan ke nilai Y saat ini. Misalnya dari 0 menjadi 10, lalu jika ditambah 15 lagi menjadi 25.

6. Blok “Set Y To”

Sama seperti set x to, blok ini langsung mengganti nilai Y dengan angka yang dimasukkan, tanpa penjumlahan.

7. Blok “If on Edge, Bounce”

Blok ini membuat sprite otomatis memantul ke arah berlawanan saat menyentuh tepi/batas stage. Untuk mendemonstrasikannya:

when [green flag] clicked
forever
    move 10 steps
    if on edge, bounce

Saat dijalankan, sprite akan bergerak lurus dan otomatis memantul balik setiap kali menyentuh tepi stage. Jika blok if on edge, bounce dihapus, sprite hanya akan berhenti (tersangkut) di tepi stage tanpa memantul balik.

8. Blok “Set Rotation Style”

Blok ini memiliki tiga pilihan gaya rotasi:

  • left-right — sprite hanya berotasi secara horizontal (menghadap kiri atau kanan saja).
  • don’t rotate — sprite tidak akan berputar sama sekali, tetap menghadap satu arah meskipun memantul.
  • all around — sprite akan berputar/flip penuh termasuk secara vertikal.

Contoh untuk gaya left-right:

when [green flag] clicked
set rotation style [left-right]
forever
    move 10 steps
    if on edge, bounce

Saat sprite memantul di tepi stage, sprite hanya akan membalik tampilan menghadap kiri/kanan (nilai Direction berubah antara 90 dan -90), tanpa terbalik terbalik posisinya.

Jika rotation style diganti menjadi all around, sprite akan tampak berputar/terbalik (flip) secara vertikal saat memantul dan bergerak mundur.

Jika rotation style diganti menjadi don’t rotate, sprite akan tetap menghadap ke arah yang sama meskipun memantul berulang kali — tidak berputar maupun terbalik sama sekali.

9. Blok Pelaporan “X Position”

Blok ini menampilkan nilai koordinat X sprite saat ini, dan bisa digunakan di dalam blok lain. Contoh penggunaan dengan blok say:

when [green flag] clicked
say (x position) for 2 seconds

Saat dijalankan, sprite akan menampilkan gelembung teks berisi angka koordinat X-nya saat itu (misalnya “-87.5” atau “0”, tergantung posisi sprite).

10. Menggabungkan Teks dengan Blok “Join” (Operators)

Agar tampilannya lebih informatif, kita bisa menggabungkan teks dan nilai menggunakan blok join dari kategori Operators. Contoh:

when [green flag] clicked
say (join "My x axis is" (x position)) for 2 seconds

Hasilnya, sprite akan menampilkan teks seperti “My x axis is 0” alih-alih hanya menampilkan angka saja.

11. Blok Pelaporan “Y Position”

Sama seperti x position, blok ini menampilkan nilai koordinat Y sprite saat ini. Bisa digunakan dengan cara yang sama, misalnya digabungkan dengan teks menggunakan blok join: “My y axis is 16” atau nilai lain sesuai posisi sprite saat itu.

12. Menampilkan Nilai Langsung di Stage (Checkbox)

Setiap blok pelaporan (seperti x position, y position, dan direction) memiliki checkbox di samping kirinya pada panel blok. Jika dicentang, nilai tersebut akan langsung ditampilkan sebagai monitor kecil di atas stage, sehingga bisa dipantau secara real-time tanpa perlu menjalankan script.

13. Blok Pelaporan “Direction”

Blok ini menampilkan nilai arah hadap (direction) sprite saat ini, dengan cara kerja yang sama seperti x position dan y position. Contoh: jika direction diatur ke 90 lalu dijalankan, teks yang muncul adalah “My direction is 90”. Jika diubah ke 180, teksnya akan berubah menjadi “My direction is 180”.

Ringkasan

  • point in direction / point towards mouse-pointer — mengatur arah hadap sprite.
  • change x by / change y by — menambahkan nilai ke koordinat saat ini.
  • set x to / set y to — mengganti langsung nilai koordinat.
  • if on edge, bounce — membuat sprite memantul saat menyentuh tepi stage.
  • set rotation style — mengatur gaya rotasi sprite (left-right, don’t rotate, all around).
  • x position, y position, direction — blok pelaporan nilai posisi dan arah sprite, bisa digabung dengan blok join atau ditampilkan langsung di stage lewat checkbox.