Chuyển tới nội dung chính

Nhấn giữ nút trên tay cầm (:down)

Phương thức này chỉ khả dụng trên các phiên bản sau 20260805

Khai báo

success, err = pad:down(button)

Tham số

  • button Kiểu số nguyên hoặc chuỗi. Có thể truyền số nguyên từ 1 đến 32, một trong các tên bên dưới, hoặc "start", "menu"; việc so khớp chuỗi không phân biệt chữ hoa chữ thường.
SốTên nútBí danh
1a-
2b-
3x-
4y-
5left_shoulderleft_bumper, lb, l1
6right_shoulderright_bumper, rb, r1
7left_triggerlt, l2
8right_triggerrt, r2
9left_stickl3
10right_stickr3
11l4left_paddle
12r4right_paddle
13m1-
14m2-
15m3-
16m4-

Giá trị trả về

  • success Kiểu boolean. Trả về true nếu thao tác thành công; trả về false nếu thiết bị đã ngắt kết nối, đang bận hoặc gửi đầu vào thất bại.
  • err Kiểu chuỗi. Thông báo lỗi khi thao tác thất bại.

Mô tả

  • Các giá trị số từ 1 đến 32 biểu thị nút số, không phải mã nút được chuẩn hóa giữa các thiết bị. Nên ưu tiên dùng tên trong bảng khi có thể.
  • Các nút số từ 17 đến 32 không có tên định sẵn và chỉ có tác dụng khi ứng dụng đích hỗ trợ nút mở rộng tương ứng.
  • "start""menu" là bí danh của cùng một đầu vào trình đơn, không tương ứng với nút số nào từ 1 đến 32.
  • Hiện chưa hỗ trợ các tên select, back, options, home, share và nút bàn di chuột.
  • left_triggerright_trigger chỉ hỗ trợ trạng thái nhấn hoặc nhả, không hỗ trợ giá trị áp lực analog. menu không kích hoạt thao tác về Màn hình chính của hệ thống.
  • Kiểu đối số không hợp lệ, tên không xác định và giá trị vượt phạm vi sẽ phát sinh lỗi đối số Lua thay vì trả về false, error.

Ví dụ

local pad = assert(gamepad.connect())

assert(pad:down("left_shoulder"))
assert(pad:up("left_shoulder"))
assert(pad:down(13)) -- nút số 13
assert(pad:up(13))
assert(pad:disconnect())