Input mouse dan keyboard

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Persentase besar sesi Roblox dimainkan di perangkat dengan mouse dan keyboard, jadi penting untuk mendukung input ini saat merancang permainan untuk audiens yang luas.

Untuk menyederhanakan input lintas platform, termasuk mouse/keyboard, Roblox menyediakan Sistem Aksi Input untuk mendefinisikan aksi seperti "melompat," "berlari," atau "menembak" dan mengatur ikatan untuk beberapa input perangkat keras untuk menggerakkan aksi tersebut.

Roblox juga mendukung input mouse/keyboard umum melalui peristiwa UserInputService seperti InputBegan dan InputEnded serta metode seperti IsKeyDown() untuk memeriksa apakah kunci tertentu ditekan pada keyboard.

Deteksi jenis input

Dalam pengembangan lintas platform, penting bagi Anda untuk menentukan dan merespons jenis PreferredInput yang digunakan pemain, biasanya untuk memastikan bahwa elemen UI  seperti tombol dan menu di layar bekerja dengan baik dan mendukung interaksi di berbagai perangkat.

Sebagai contoh, PC atau laptop menganggap mouse/keyboard sebagai input default, tetapi pemain mungkin memilih untuk menghubungkan gamepad bluetooth. Dalam hal ini, mouse/keyboard tetap menjadi input yang valid, tetapi Anda bisa mengasumsikan pemain ingin beralih ke gamepad yang terhubung sebagai jenis input utama.

Lihat deteksi jenis input untuk informasi lebih lanjut.

Input mouse/kunci generik

Di luar Sistem Aksi Input, Anda dapat menangkap input mouse dan keyboard menggunakan UserInputService. LocalScript berikut, ketika ditempatkan dalam StarterPlayerScripts, menangkap fase mulai dan selesai dari klik kunci dan mouse serta mencetak hasilnya ke jendela Output.

LocalScript - Output Kunci/Mouse Mulai dan Selesai

local UserInputService = game:GetService("UserInputService")
local function onInputBegan(inputObject, processedEvent)
-- Kembali jika skrip lain sudah memproses input
if processedEvent then return end
print(inputObject.KeyCode.Name, "mulai!", inputObject.Position)
end
local function onInputEnded(inputObject, processedEvent)
-- Kembali jika skrip lain sudah memproses input
if processedEvent then return end
print(inputObject.KeyCode.Name, "selesai!", inputObject.Position)
end
UserInputService.InputBegan:Connect(onInputBegan)
UserInputService.InputEnded:Connect(onInputEnded)

Ikon mouse

Anda dapat menyesuaikan tampilan dan perilaku ikon mouse pemain dalam permainan Anda untuk menciptakan gaya yang kohesif di seluruh elemen UI Anda. Ini termasuk mengubah sementara ikon mouse pemain dalam keadaan tertentu, seperti saat melayang di atas tombol.

Anda dapat mengubah ikon mouse pemain dalam LocalScript dengan menyetel properti MouseIcon dalam UserInputService ke ID aset Roblox kustom. Sebagai contoh, LocalScript berikut mengubah ikon mouse default pemain menjadi sebuah lingkaran dengan titik biru di tengah.


local UserInputService = game:GetService("UserInputService")
UserInputService.MouseIcon = "rbxassetid://3400146391"
©2026 Roblox Corporation. Roblox, logo Roblox, dan Powering Imagination termasuk dalam merek dagang kami yang terdaftar dan tidak terdaftar di AS dan negara lainnya.