*New Execute*
New execute 1.19.10
- execute mới từ 1.19.10 trở đi sẽ mới và khá giống execute java
Execute mới này khá lạ với mọi người và sẽ khó khăn cho những người hay dùng lệnh execute vì đã quen với execute củ nên bài đăng này sẽ giúp mọi người.
Cú Pháp:
/execute <subcommand: Option If_Unless> block <position: x y z> <block: Block> <blockStates: block states> [chainedCommand: ExecuteChainedOption_0]
<subcommand: Option_If_Unless) : phần
phụ điều kiện hoạt động
Có 2 loại :
If (nếu như)
Unless (nếu không)
block là 1 khối
<position: x y z> : tọa độ
<block: Block> : id Block
<blockStates: block states) là trạng thái Block
[chainedCommand: ExecuteChainedOption_0] là chuỗi nối tiếp của /execute
Vd: /execute if block 0 -60 0 wool ["color":0] run say Hi
Nếu như block ở tọa độ 0 -60 0 là 1 cục len trắng thì sẽ hiện : [!] Hi
/execute <subcommand: Option If_Unless> block <position: x y z> <block: Block> <data:int> [chainedCommand: ExecuteChainedOption_0]
<subcommand: Option_If_Unless) : phần
phụ điều kiện hoạt động
Có 2 loại :
If (nếu như)
Unless (nếu không)
block là 1 khối
<position: x y z> : tọa độ
<block: Block> : id Block
<data:int> : id block
[chainedCommand: ExecuteChainedOption_0] là chuỗi nối tiếp của /execute
Vd : /execute if block 0 -60 0 wool 0 run say Hi
Nếu như block ở tọa độ 0 -60 0 là 1 cục len trắng thì sẽ hiện : [!] Hi
{Hiện tại ở phiên bản 1.19.73 câu lệnh này sẽ không hoạt động mà chỉ có thể dùng câu lệnh ở trên, bạn có thể bỏ phần <data:int> đi, câu lệnh vẫn sẽ hoạt động bình thường}
{2 Câu lệnh này giống /testforblock}
/execute <subcommand: Option If_Unless> blocks <begin: x y z> <end: x y z>
<destination: x y z> <scan mode: BlocksScanMode> [chainedCommand:
ExecuteChainedOption_0]
<subcommand: Option If_Unless> : phần phụ điều kiện hoạt động.
Danh sách
Có 2 loại :
If (nếu như)
Unless (nếu không)
blocks là nhiều khối
<begin: x_y_z> : tọa độ bắt đầu giới
hạn
<end: x y z> : tọa độ kết thúc giới hạn
<destination: x y z> : là tọa độ khoảng giới hạn khác
<scan mode: BlocksScanMode> là phương thức so sánh
Danh sách
Có 2 loại :
All (tất cả)
Masked (không tính air nếu khoản giới hạn đầu có air)
[chainedCommand: ExecuteChainedOption_0] : chuỗi nối tiếp của /execute
Vd : /execute if blocks 0 -60 0 1 -60 1 5 -60 5 all wool run say Done
Nếu nhưng ở tọa độ 0 -60 0 tới 1 -60 1 có các block ở tọa độ 5 -60 5 thì sẽ hiện : [!] Done
{Câu lệnh này giống /testforblocks}
/execute <subcommand: Option_If_Unless> entity <target: target> [chainedCommand: ExecuteChainedOption_0]
<subcommand: Option_If_Unless> : phần phụ điều kiện hoạt động.
Có 2 loại :
If (nếu như)
Unless (nếu không)
entity : vật thể
<target: target> : mục tiêu {Mục tiêu là Entity}
[chainedCommand: ExecuteChainedOption_0] là chuỗi nối tiếp của /execute
Vd: /execute if entity @e[type=sheep] run say Be
Nếu nhưng con cừu có tồn tại trong map bạn thì sẽ hiện : [!] Be
{Câu lệnh này giống /testfor @e[type=sheep]}
/execute <subcommand: Option_If_Unless> score <target: target> <objective: string> <operation: compare operator> [chainedCommand: ExecuteChainedOption_0]
<subcommand: Option If_Unless> : phần phụ điều kiện hoạt động.
Có 2 loại :
If (nếu như)
Unless (nếu không)
score : điểm
<target: target> : mục tiêu
<objective: string> : id bảng
<operation: compare operators> : phép so sánh
Danh sách
< : nhỏ hơn
<= : nhờ hơn hoặc bằng
> : lớn hơn
>= : lớn hơn hoặc bằng
[chainedCommand: ExecuteChainedOption_O> chuỗi nối tiếp của /execute
Vd : /execute if score KariXD4352 money = ChickenCMB money run say gà rán
Nếu như money của Kari = money của Chicken thì sẽ hiện [!] gà rán
{Câu lệnh này giống scoreboard 'operation' nhưng nó không giúp hoạt động lệnh}
Vd : /execute unless score KariXD4352 money > ChickenCMB money run say Done
Nếu nhưng số money của Kari không lớn hơn Chicken thì sẽ hiện : [!] Done
/execute <subcommand: Option_If_Unless> score <target: target> <objective: string> matches <range: integer range> [chainedCommand: ExecuteChainedOption_0]
<subcommand: Option_If_Unless) là phần phụ điều kiện hoạt động
Có 2 loại :
If (nếu như)
Unless (nếu không)
score : điểm
<target: target> : mục tiêu
<objective: string> : id bảng
matches là trùng khớp.
<range: integer ranges> : khoảng giá trị
Các trường hợp
1 : giá trị 1
!1 : khác giá trị 1
1.. : giá trị lớn hơn hoặc bằng 1
..1 : giá trị nhỏ hơn hoặc bằng 1
1..10 : giá trị từ bằng 1 đến 10
[chainedCommand: ExecuteChainedOption_O> chuỗi nối tiếp của /execute
Vd: /execute if score @p money matches 1..10 run say Done
Nếu nhưng bạn có từ 1 đến 10 money thì sẽ hiện [!] Done
{Câu lệnh trên giống /scoreboard players test @p 1 10, nhưng nó không có tác dụng thực hiện câu lệnh liên tiếp}
/execute as <origin: target> <chainedCommand: ExecuteChainedOption_0>
as : chọn đối tượng
<origin: target> : là mục tiêu
<chainedCommand: ExecuteChainedOption_0> là chuỗi nối tiếp của /execute
Vd : /execute as KariXD4352 run say Hi
Chọn Kari say Hi
{Câu lệnh này sẽ chọn đối tượng nhưng vẫn thực hiện cậu lệnh ở command nếu bạn dùng command}
/execute at <origin: target> <chainedCommand: ExecuteChainedOption_0>
at : đổi đối tượng
<origin: target> : mục tiêu
<chainedCommand: ExecuteChainedOption_0> : chuỗi nối tiếp của /execute
Vd: execute at KariXD4352 run say Hi
Chưa có chọn đối tượng nên không đối được, Command sẽ chọn đối tượng sử dụng Command này say Hi
/execute at KariXD4352 as @s run say Hi
Chưa chọn đối tượng nên không đổi được => câu lệnh sẽ không hoạt động
Hãy thử : /execute as KariXD4352 at @s run say Hi
Sẽ hiện : [KariXD4352] Hi
Vì as đã chọn đối tượng là Kari và sau đó đổi vị trí thực hiện câu lệnh từ command lên Kari nên câu lệnh say sẽ được thực hiện trên Kari
/execute positioned as <origin: target> <chainedCommand: ExecuteChainedOption_0>
positioned : vị trí đối tượng
as : chọn đối tượng
<origin: target> : mục tiêu
<chainedCommand: ExecuteChainedOption_0> chuỗi nối tiếp của /execute
Vd : /execute positioned as KariXD4352 run kill @e[type=chicken,r=3]
Con gà nào ở gần tọa độ Kari 3 block sẽ bị kill
{Câu lệnh này sẽ áp dụng vị trí của đối tượng, không áp dụng lên đối tượng}
/execute run <command: command>
run : chạy Command
<command: command> : command
Vd : /execute run say a
Sẽ hiện [!] a
{Cái này không có gì đặt biệt}
Lưu ý:
Khi dùng as if trong Command Block phải dùng thêm at vì nếu không có at phần if sẽ chạy trên đối tượng sử dụng Command
/execute as KariXD4352 if block~~-1~ wool 0 give @s diamond
Khi không có at thì if chạy trên Commmand, nếu có Wool dưới Command Block thì Kari sẽ được give diamond, nếu không có Wool dưới Command Block thì Kari không được give diamond
/execute as Hg at @s if block~~-1~ wool 0 kill @s
Khi có at thì if chạy trên at, nếu có Wool dưới @s (es trong at ở đây là bản thân Kari) thì Kark die:), nếu không có Wool dưới @s (@s trong at ở đây là bản thân Kari) thì Kari sẽ sống :D
Nếu bạn thấy quá khó với những execute mới này cách đơn giản nhất là dùng
/execute as <tager> at @s run <command>
Vd : /execute as @p at @s run title @s title Hi
Người gần command nhất sẽ thấy Hi ở trước màng hình, nếu như bạn không at thì sẽ không hiện gì vì chưa chuyển đổi đối tượng sử dụng lệnh.
Ở 1.19.73 còn có 4 loại execute mới là
/execute align <axes: string> <chained Command: ExecuteChainedOption_0>
/execute anchored <eyes | feet> <chainedCommand: ExecuteChained Option_0>
/execute facing <position: x y z> <chained Command: ExecuteChainedOption_0>
/execute facing entity <origin: target> <eyes | feet> <chained Command: Execute ChainedOption_0>
Tui vẫn đang nghiên cứu những execute này có thể trong thời gian tới sẽ có bài đăng
Ghi chú :
Tui sau khi học xong thì có hứng làm tiếp về /execute nên đã bắt đầu làm từ 20h40 và bây giờ là 22h42 :) nên là hãy like
Bài đăng tới đây đã dài rồi, bài đăng khá dài nên lúc đầu bạn sẽ thấy nó khó nhưng tui đã cố gắn cách dòng và ghi 1 cách dễ hiểu nhất
Bài đăng này được tham khảo web https://hgvn23.github.io/ và kinh nghiệm cá nhân
Nếu có thắc mắc gì liện hệ karifellasleep@gmail.com
Uy tính 👍✨
Cảm ơn đã xem tới dây :D
Bye bye ✨
