executeコマンドについて
複雑なコマンドを使用する際にほぼ必須なコマンド
発動に必要とする条件をつけたり、発動する位置、発動させるエンティティなどを指定することができる
※このページの説明はコマンドブロックで行ったものとしている
発動に必要とする条件をつけたり、発動する位置、発動させるエンティティなどを指定することができる
※このページの説明はコマンドブロックで行ったものとしている
execute ① ② ...
① at as if unless
② at as if unless run
① at as if unless
② at as if unless run
atとasの違いは基準点の違いなのだがものすごく難しいものになっている
とりあえず、困ったらatを使用しうまく発動しない場合はasを使用すればいい
とりあえず、困ったらatを使用しうまく発動しない場合はasを使用すればいい
atの場合
execute at @a[tag=ジャンプ] run effect @a jump_boost
ジャンプのタグがついたプレイヤーがいるときにジャンプブーストをつける
execute at @a[tag=ジャンプ] run effect @s jump_boost
ジャンプのタグがついたプレイヤーがいたときにコマンドブロックにジャンプブーストをつける
execute at @a[tag=ジャンプ] run effect @a jump_boost
ジャンプのタグがついたプレイヤーがいるときにジャンプブーストをつける
execute at @a[tag=ジャンプ] run effect @s jump_boost
ジャンプのタグがついたプレイヤーがいたときにコマンドブロックにジャンプブーストをつける
asの場合
execute as @a[tag=ジャンプ] run effect @a jump_boost
ジャンプのタグがついたプレイヤーがいるときにジャンプブーストをつける
execute as @a[tag=ジャンプ] run effect @s jump_boost
ジャンプのタグがついたプレイヤーに対してジャンプブーストをつける
execute as @a[tag=ジャンプ] run effect @a jump_boost
ジャンプのタグがついたプレイヤーがいるときにジャンプブーストをつける
execute as @a[tag=ジャンプ] run effect @s jump_boost
ジャンプのタグがついたプレイヤーに対してジャンプブーストをつける
atを使用するときに@sをつけるとコマンドブロックに対して実行することになり、コマンドが実質不発に終わるが、asを使用するときに@sをつけるとasで指定されたものに対してコマンド実行する ということになる
atの場合
execute at @e[type=item,name=石] run effect @a[r=2] jump_boost
石があるときに石の周りにいるプレイヤーにジャンプブーストをつける
execute at @e[type=item,name=石] run effect @s jump_boost
石があるときにコマンドブロックにジャンプブーストをつける
execute at @e[type=item,name=石] run effect @a[r=2] jump_boost
石があるときに石の周りにいるプレイヤーにジャンプブーストをつける
execute at @e[type=item,name=石] run effect @s jump_boost
石があるときにコマンドブロックにジャンプブーストをつける
asの場合
execute as @e[type=item,name=石] run effect @a[r=2] jump_boost
石があるときにコマンドブロックの周りにいるプレイヤーにジャンプブーストをつける
execute as @e[type=item,name=石] run effect @s jump_boost
石があるときに石にジャンプブーストをつける
execute as @e[type=item,name=石] run effect @a[r=2] jump_boost
石があるときにコマンドブロックの周りにいるプレイヤーにジャンプブーストをつける
execute as @e[type=item,name=石] run effect @s jump_boost
石があるときに石にジャンプブーストをつける
結論
atとasの共通点は条件をつけること
atはそれがいるかどうかを判定し、判定したものを基準点してコマンドを発動する @sはコマンドブロックを中心としてコマンド発動する
asはそれがいるかどうかを判定する、基準点がコマンドブロックになっている @sは条件を満たしたものに対してコマンドを発動する
atとasの共通点は条件をつけること
atはそれがいるかどうかを判定し、判定したものを基準点してコマンドを発動する @sはコマンドブロックを中心としてコマンド発動する
asはそれがいるかどうかを判定する、基準点がコマンドブロックになっている @sは条件を満たしたものに対してコマンドを発動する
if
現在 制作中