Study
LÖVE2D

Input Mouse

Penjelasan

Posisi mouse saat ini bisa diambil kapan saja dengan `love.mouse.getPosition()`, sedangkan event klik ditangkap lewat callback `love.mousepressed(x, y, button)` yang dipanggil sekali tiap tombol mouse ditekan, lengkap dengan informasi tombol mana (1 = kiri, 2 = kanan, 3 = tengah) dan koordinat klik. Pola ini sering dipakai untuk UI sederhana seperti tombol di menu game — cek apakah koordinat klik jatuh di dalam area tombol (bounding box), lalu jalankan aksi terkait kalau iya.

Contoh Konsep

function love.draw()
    local mx, my = love.mouse.getPosition()
    love.graphics.print("Mouse: " .. mx .. ", " .. my, 10, 10)
end

function love.mousepressed(x, y, button)
    if button == 1 then
        -- cek apakah klik di dalam area tombol
        if x >= 300 and x <= 500 and y >= 200 and y <= 250 then
            print("Tombol diklik!")
        end
    end
end

Praktikum

Buat sebuah rectangle sebagai tombol di layar, lalu cetak "Mulai Game" ke console saat area tombol tersebut diklik dengan tombol kiri mouse.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Untuk UI dengan banyak tombol, buat fungsi helper `didaklikDalamArea(x, y, area)` supaya logic pengecekan bounding box tidak diulang-ulang untuk tiap tombol.