CommandOnCommand – Ghi đè lệnh

3 min read

Giới thiệu #

Đã bao giờ bạn muốn “Việt hoá” những lệnh như /home thành /venha Hoặc /island /is thành /daotrenkhong hay gì đó tương tự?. Hay nói cách khác, bạn muốn khi player chạy lệnh /A thì server sẽ chạy hoặc khiến player chạy lệnh /B?

CommandOnCommand là plugin hoàn toàn có thể đáp ứng nhu cầu này, thậm chí hơn cả thế. Với tính năng ghi đè command của player, bạn có thể tuỳ chỉnh tuỳ ý những command sẽ được thực thi khi player thực hiện một lệnh gì đó.

Config của cái này ở dưới

Lệnh trong game #

Yêu cầu permission coc.admin để dùng lệnh

/coc reload: Reload plugin
# /coc hoặc /commandoncommand đều được

Hướng dẫn Config #

config.yml #

fake-commands: true # Khiến cho lệnh không tồn tại (ví dụ: /chetao) không bị đỏ

command-on-command:
  0: #Các số phải để theo thứ tự 0, 1, 2, 3, 4,...
    cancel: true #cancel: true là sẽ huỷ lệnh của player, false thì sẽ không huỷ
    permission: 'cocperm.perm' # Permission yêu cầu để được thay thế lệnh
    catches: #Những lệnh mà player sử dụng sẽ được check, có thể điền nhiều
      - 'chetao'
    commands: #Những lệnh sẽ thực hiện khi player dùng lệnh ở catches
      - '[consolecmd] crafts gui menu %player% main_1'

  1: # Không yêu cầu permission nên không cần có field này
    cancel: true
    catches:
      - 'spawn'
    commands:
      - '{30} [title] &a;&f&lỒ bạn định về spawn sao?;0;40;0' # Delay 30 tick mới thực hiện lệnh
      - '{60} [title] &a;&f&lOk nếu bạn muốn;0;40;0'
      - '{90} [title] &a3;&f&lChuẩn bị dịch chuyển;0;40;0'
      - '{95} [title] &a3;&f&lChuẩn bị dịch chuyển.;0;40;0'
      - '{100} [title] &a3;&f&lChuẩn bị dịch chuyển..;0;40;0'
      - '{105} [title] &a3;&f&lChuẩn bị dịch chuyển...;0;40;0'
      - '{110} [title] &a2;&f&lChuẩn bị dịch chuyển....;0;40;0'
      - '{115} [title] &a2;&f&lChuẩn bị dịch chuyển;0;40;0'
      - '{120} [title] &a2;&f&lChuẩn bị dịch chuyển.;0;40;0'
      - '{125} [title] &a2;&f&lChuẩn bị dịch chuyển..;0;40;0'
      - '{130} [title] &a1;&f&lChuẩn bị dịch chuyển...;0;40;0'
      - '{135} [title] &a1;&f&lChuẩn bị dịch chuyển....;0;40;0'
      - '{140} [title] &a1;&f&lChuẩn bị dịch chuyển.;0;40;0'
      - '{145} [title] &a1;&f&lChuẩn bị dịch chuyển..;0;40;0'
      - '{146} [consolecmd] spawn %player%'
      - '{150} [title] &6Woooo;&f&lVề spawn rồi nè!'
      - '{150} [sound] ENTITY_FIREWORK_ROCKET_LAUNCH;1;1'  

CommandOnCommand có duy nhất 1 file config.yml, bên trên là config mẫu mình đã làm sẵn. Khi config như trên thì sẽ có kết quả như sau:

Với 0, khi một player tên MankaiStep dùng lệnh /chetao (catches), plugin sẽ huỷ lệnh (cancel: true) này của player và console sẽ chạy lệnh (commands, [consolecmd]) /crafts gui menu MankaiStep main_1

Với 1, khi một player tên MankaiStep dùng lệnh /spawn, plugin sẽ KHÔNG huỷ lệnh này – tức là player vẫn về spawn (cancel: false) và:

  • Player sẽ nhận được message “Đứng yên nào, bạn sẽ trở về spawn sau 5 giây nữa” ([message])
  • Màn hình player sẽ hiển thị title và subtitle “Teleport…” và “Đây là subtitle” ([title])
  • Sound của ENTITY_EXPERIENCE_ORB_PICKUP sẽ được phát cho player ([sound])
  • Thông báo “Player Mankaistep đang di chuyển về spawn” sẽ được gửi tới tất cả mọi người ([broadcast])

commands #

Trong lúc setup command, bạn có thể dùng %player% để thay thế cho tên người chơi. Ví dụ như ở 1

Cấu trúc một command: {delay} [<loại command>] <command>. Ví dụ :

{20} [message] Chào bạn %player%, tôi là admin 

Command này sẽ được 20 tick (~ 1 giây) rồi gửi tin nhắn Chào bạn MankaiStep, tôi là admin

Có 7 loại command cho bạn tuỳ chọn

[playercmd] #

Khiến người chơi chạy một lệnh, ví dụ:

[playercmd] say Tôi là thằng ngu
[opplayercmd] #

Khiến người chơi chạy một lệnh với tư cách op, ví dụ

[opplayercmd] kick all
[consolecmd] #

Chạy một lệnh ở console, ví dụ:

[consolecmd] bc Chào cả nhà
[message] #

Gửi một message tới người chơi hiện tại, ví dụ

[message] Chào %player% nhé, tôi là MankaiStep
[broadcast] #

Gửi message tới tất cả member, ví dụ:

[broadcast] Chào cả nhà
[title] #

Hiển thị title và sub title cho người chơi hiện tại.

Cú pháp: [title] <title>;<subtitle>;<tick xuất hiện>;<tick hiển thị>;<tick biến mất>. Trong đó <tick xuất hiện>;<tick hiển thị>;<tick biến mất> là không bắt buộc

Ví dụ

[title] Teleport...;Đây là subtitle;10;30;10
hoặc [title] Teleport...;Đây là subtitle
[sound] #

Phát sound cho người chơi, cú pháp: [sound] <id_sound>;1;1. Trong đó 1;1 là không bắt buộc, ví dụ

[sound] ENTITY_EXPERIENCE_ORB_PICKUP;1;1
hoặc [sound] ENTITY_EXPERIENCE_ORB_PICKUP

Danh sách những sound có thể dùng được bạn lấy ở đây: Sounds


Plugin này làm bạn hứng thú và bạn mua hoặc trao đổi thêm về plugin này? Hãy liên hệ mình qua

Facebook (ưu tiên): https://www.facebook.com/mankaistep/

Mail: hhoang.mis.neu@gmail.com

Powered by BetterDocs