LV. 27
GP 274

用最簡單的方式解釋最複雜的指令! 你一直期望的execute教學

樓主 藍色收音機 a31916909
前言
大家好我是收音機
「execute好難喔」這是大家對execute指令的刻板印象
今天我就要破除這個印象,讓你用最簡單的方式來學習execute指令

影片

execute的語法
/execute 子指令 參數 子指令 參數 子指令 參數.......
這個指令只需要加子指令跟參數就可以了
因為沒有人規定每個子指令只能用一個,也沒有人規定子指令的順序
所以這個指令相當自由,並且理論上長度可以到無限長
execute的子指令有以下12個,以下是他們的介紹

run
run 要執行的指令
他可以執行指令,後面不能再加子指令
範例:
執行say 你好
/execute run say 你好

as at
as 實體
as是以該實體的名義執行指令
你也可以使用好幾個as,具體的效果就當回家功課吧!(其實影片裡面有講)
範例:
讓十個實體說你好
/execute as @e[limit=10] run say 你好

at 實體
at則是以該實體的位置執行指令,影響維度、視角、座標
範例:
在最近的10個實體的腳下放玻璃
/execute at @e[limit=10,sort=nearest] run setblock ~ ~ ~ glass

as跟at可以混合使用
範例:
最近的10個實體會跳起來
/execute as @e[limit=10,sort=nearest] at @s run tp @s ~ ~2 ~
如果把at @s 改成at @e的話會發生悲劇,因為as的@e跟at的@e不是同一個實體
具體的解釋可以參考璇(merakx)的這篇文章

facing rotated anchored
facing 座標
facing entity 實體 eyes或feet
facing子指令可以改變執行時候的視角,可以看像特定座標、特定實體的眼睛或腳
範例:
最近十個實體會看向最近的玩家,並在眼前三格處放下一個玻璃
/execute at @e[limit=10,sort=nearest] facing entity @p eyes run setblock ^ ^ ^3 minecraft:glass

rotated 視角座標
rotated as 實體
rotated子指令可以讓執行的時候看向特定視覺座標,或是看相跟實體一樣的方向
範例:
看向45 0 的地方,在眼前三格的地方放下一個玻璃
/execute rotated 45 0 run setblock ^ ^ ^3 glass
範例:
最近十個實體會看向跟最近的玩家一樣的方向,並在眼前三格的地方放下玻璃
/execute at @e rotated as @p run setblock ^ ^1 ^3 minecraft:glass

anchored eyes或feet
改變執行時的視角基準,可以選擇眼睛或腳,預設是腳
這個比較簡單,在此就不示範了

align positioned in
align xyz
可以讓執行的時候座標對其座標軸,可以只填兩個或一個
範例:
tp 方塊的交界處
/execute align xyz run tp @s ~ ~ ~

position 座標
以特定座標來執行指令
範例:
文字不好說明,請看影片4分39秒的地方
/execute positioned 0 5 0 run setblock ^ ^ ^5 minecraft:glass

in 維度
以特定的維度來執行指令
可選的維度有
minecraft:overworld(主世界)、minecraft:the_end(終界)、minecraft:the_nether(地獄)

if unless
if是如果條件符合就繼續執行,unless與if相反
if block 座標 方塊[狀態]{NBT}
如果那個座標有特定方塊就繼續執行

if blocks 座標1 座標2 座標檢查基準 all或masked
如果檢查基準的地方與座標1、座標2框選的範圍有相同的方塊,就繼續執行
all代表檢察全部方塊,masked代表忽略空氣

if data block、entity、storage 座標、實體或容器 NBT路徑
如果指定的方塊、實體或容器有指定的NBT標籤,就繼續執行

if entity 實體
如果世界上存在指定的實體就繼續實行

if predicate 述詞
如果符合述詞就會繼續執行,述詞是DataPack(資料包)特有的東西

if score 實體 記分板 比大小符號 實體2 記分板2
可選的符號有<、<=、=、>、>=,如果符合就繼續執行

if score 實體 記分板 matches 1..2
如果實體的記分板分數介於1到2就繼續執行

store
store result或success 東西
store可以把執行指令的結果儲存到東西裡面
result會儲存執行結果,success只會儲存1或0,執行成功是1,失敗則是0
可選的東西有
block 座標 NBT路徑
bossbar 名稱 max或value
entity 實體 NBT路徑 資料型別 放大(縮小)倍率
score 實體 記分板
storage 容器名稱 NBT路徑 資料型別 放大(縮小)倍率
其中,資料型別有以下幾種
byte、double、float、int、long、short
影片中有示範

結尾
希望透過今天的教學,大家都能夠學會execute的用法
由於run子指令可以連接各式各樣的子指令,所以大家可以發揮自己的想像力做出獨一無二的指令發明喔!
那我們下次再見,掰掰

更多文章
板務人員: