ShinnUI wiki
Trang chủ/Bắt đầu/Lệnh & Quyền

Lệnh & Quyền

Cú pháp: [] là bắt buộc, <> là tùy chọn. Lệnh chính /shinnui (alias /sui, /shui).

Danh sách lệnh#2>
LệnhQuyềnMô tả
/shinnui list <filter>shinnui.command.listLiệt kê menu đã nạp (có thể lọc theo tên).
/shinnui open [ID]:<Page> <Player> <Args…>shinnui.command.openMở menu cho người chơi. ID:Page mở thẳng trang chỉ định; có thể truyền tham số menu.
/shinnui reloadshinnui.command.reloadNạp lại toàn bộ menu, settings, shortcuts, lệnh đã đăng ký.
/shinnui template <Rows>shinnui.command.templateCông cụ tạo khung menu trực quan (1–6 hàng, chỉ hỗ trợ chest).
/shinnui action [Player] [Action]shinnui.command.actionChạy thử một dòng action và in kết quả/thời gian ra chat. Thêm # đầu dòng để ẩn log.
/shinnui item [Method] <Value>shinnui.command.itemQuản lý item: toJson, fromJson, save, get, delete.
/shinnui convert [Plugin]shinnui.command.convertChuyển đổi cấu hình từ plugin menu khác (DeluxeMenus).
/shinnui sounds <filter>shinnui.command.soundsDuyệt & nghe thử sound của game.
/shinnui effectsshinnui.command.effectsXem các gói Effect-Pack đã định nghĩa trong settings.yml.
/shinnui datashinnui.command.dataXem/xoá dữ liệu Meta/Data của người chơi.
/shinnui debugshinnui.command.debugBật/tắt chế độ debug.
/shinnui helpTrợ giúp — hiện các sub-command mà sender có quyền.

Lệnh gốc /shinnui yêu cầu quyền shinnui.access. Mỗi sub-command có quyền riêng như bảng trên — tất cả đều optional, tức là admin cấp quyền nào thì hiện đúng sub-command đó.

Ví dụ lệnh open#2>
# Mở menu Example cho chính mình
/shinnui open Example

# Mở menu Example cho người chơi BlackSKY
/shinnui open Example BlackSKY

# Mở menu Shop, trang 3
/shinnui open Shop:3

# Mở menu Shop-Handler với tham số ['apple', '10']
/shinnui open Shop-Handler apple 10

# Mở cho người chơi khác + đặt "placeholder player" khác (agent)
/shinnui open Shop BlackSKY:Notch

Quyền cho người chơi#2>
QuyềnÝ nghĩa
shinnui.useQuyền "dùng menu" chuẩn — cần để mở menu qua Events.Open có condition, và bắt buộc để click vào slot Input / commit (input action kiểm tra quyền này).
shinnui.shortcutChỉ để demo trong settings.yml — dùng trong condition của Shortcuts.
shinnui.adminAction op: sẽ dùng OP "thật" thay vì fake-op nếu người chơi có quyền này (khi menu đặt commandFakeOp=false).

Trong các cấu hình mẫu của ShinnUI, điều kiện mở menu thường là perm *shinnui.use — bạn có thể đổi sang permission riêng của server mình (ví dụ perm *group.vip) vì plugin không ép buộc permission cụ thể nào ngoài các lệnh admin.

Đăng ký lệnh mở menu riêng#2>

Ngoài Bindings.Commands (lệnh ảo — regex khớp khi người chơi gõ lệnh), bạn có thể đăng ký lệnh Bukkit thật trong settings.yml:

RegisterCommands:
  openMenus:                    # Tên lệnh: /openMenus
    aliases: [ 'om' ]           # Alias
    permission: null            # null = ai cũng dùng được; đặt chuỗi để giới hạn
    execute:                    # Chạy khi lệnh không khớp argument nào
      - 'tell: &7Argument `example` Required!'
    arguments:                  # Sub-argument -> reaction
      example: 'open: example'
      shop: 'open: Shop-Handler'
  • arguments: khi người chơi gõ /openMenus example, reaction open: example được chạy. Tham số thừa phía sau được truyền làm menu arguments.
  • execute: reaction chạy khi không khớp argument nào (thường dùng để hướng dẫn).
  • Nạp lại bằng /shinnui reload — lệnh cũ được unregister tự động.

Bindings — lệnh ảo & item#2>
Bindings:
  # Regex commands (không đăng ký lệnh thật — chặn trong PlayerCommandPreprocessEvent)
  Commands:
    - '(?i)example(-)?(gui)?(s)?'
  # Item matcher — click phải item khớp sẽ mở menu
  Items:
    - 'material:compass'
    - 'material:clock,lore:OPEN_MENU'

Commands là lệnh ảo: nếu server khác cũng đăng ký cùng tên lệnh thật, lệnh thật sẽ thắng. Trong trường hợp đó hãy dùng RegisterCommands phía trên. Item binding có cooldown Menu.Settings.Bound-Item-Interval (ms) chống spam.