Programming your first game/Input dengan mouse
Bila diperhatikan, pemain masih belum mampu berinteraksi sama sekali dengan game kita. Maka, kita perlu menambah sedikit logika pemrograman agar Cookie di layar memberikan respons tertentu ketika diklik pemain.
Node scripting


Klik kanan pada entri Sprite2D di kiri atas, lalu tekan "Attach Script". Secara default, file script ini akan disimpan di res://cookie.gd, sesuai dengan nama scene.
Tambahkan beberapa baris kode berikut. Simpan hasil modifikasi script dengan Ctrl+S.
func _input(event):
if event is InputEventMouseButton:
if event.button_index == MOUSE_BUTTON_LEFT and event.pressed:
if is_pixel_opaque(get_local_mouse_position()):
print("Clicked!")
Run project dan amati hasilnya.
Sebuah pesan singkat "Clicked!" akan dikeluarkan pada output terminal setiap kali pemain melakukan klik kiri dengan mouse pada area cookie.
Coba pahami kode yang diberikan tersebut.
- Di Godot, ada banyak InputEvent yang dapat diterima pada fungsi
if event is InputEventMouseButton:
_input(), dari InputEventMouseButton untuk merepresentasikan mouse button yang ditekan, hingga InputEventScreenDrag untuk merepresentasikan gestur menggeser pada layar touchscreen. - Property
if event.button_index == MOUSE_BUTTON_LEFT and event.pressed:
button_indexmenunjukkan tipe mouse button yang terlibat dalam InputEvent (selainMOUSE_BUTTON_LEFT, ada pulaMOUSE_BUTTON_RIGHT,MOUSE_BUTTON_WHEEL_UP, dll.).
Dengan menggunakan propertypressed, game hanya akan menghitung momen ketika pemain mulai menahan tombol kiri mouse sebagai sebuah klik.- Seandainya kode dimodifikasi seperti ini, game hanya akan menghitung momen ketika pemain melepaskan tombol kiri mouse sebagai sebuah klik.
if event.button_index == MOUSE_BUTTON_LEFT and not event.pressed:
- Fungsi
if is_pixel_opaque(get_local_mouse_position()):
get_local_mouse_position() memberikan posisi (x, y) kursor mouse.Fungsiis_pixel_opaque()memberikan nilaiTruehanya untuk nilai posisi yang tercakup dalam area tekstur gambar cookie. Dengan demikian, klik di luar batas gambar takkan menghasilkan apa-apa.
Bilamana ada fungsi yang kalian ingin pelajari lebih lanjut, tahan tombol Ctrl dan klik segmen kode yang dikehendaki. Editor akan segera membuka dokumentasi Godot, yang tersedia pula secara daring (https://docs.godotengine.org/en/stable/).
Try it yourself!
- Sekarang, game hanya akan bereaksi terhadap aksi klik kiri. Coba buat supaya cookie dapat menerima input klik kiri maupun kanan.
