About

位置 (-1920,12,-181)

呼び出し元 毎tick実行するコマンド群5

剣士のスキルの1つである真空斬りの使用時の判定処理を行う。

コマンド群

(-1921,10,-181)にレッドストーンブロックが置かれている限り、以下のコマンド群が実行され続ける。

No. コマンド 状態
1 /execute @a[tag=AerialSlash] ~ ~2.3 ~ /scoreboard players tag @e[r=2,tag=AerialShockwave] add AerialTransition リピート
2 /execute @a[tag=AerialSlash] ~ ~2.3 ~ /scoreboard players tag @e[r=2,tag=AerialTransition] remove AerialTransition {Motion:[0d]} 条件付き
3 /execute @a[tag=AerialSlash] ~ ~2.3 ~ /execute @e[r=2,type=Fireball,tag=AerialTransition,c=1] ~ ~-2.3 ~ /scoreboard players tag @a[r=2,tag=AerialSlash] add UseMode  
4 /execute @a[tag=AerialSlash] ~ ~2.3 ~ /execute @e[r=2,type=Fireball,tag=AerialTransition,c=1] ~ ~-2.3 ~ /scoreboard players tag @a[r=2,tag=AerialSlash] remove AerialSlash 条件付き
5 /scoreboard players tag @a[tag=AerialSlash,score_WalkOneCm_min=1] remove AerialSlash  
6 /scoreboard players test #EntityCount Global * 0  
7 /fill -1921 ~ ~ -1921 ~ ~ minecraft:lapis_block 0 replace minecraft:redstone_block 0 ###ストップ 条件付き

No.1のコマンドブロックについて

No.1のコマンドブロックには以下のタグが付与されている。

CommandStats:{AffectedEntitiesObjective:"Global",AffectedEntitiesName:"#EntityCount"}

詳細

  1. AerialSlashを持つすべてのプレイヤーの2.3m上を中心とした、半径2m以内に存在するAerialShockwaveを持ち、移動ベクトルが0でないすべてのエンティティにAerialTransitionを付与
  2. 1.で実行できたAerialSlashを持つエンティティの数を#EntityCountGlobalに代入
  3. AerialSlashを持つすべてのプレイヤーの2.3m上を中心とした、半径2m以内に存在するAerialTransitionを持つすべてのファイアーボールから2.3m下から2m以内にいるAerialSlashを持つすべてのプレイヤーにUseModeを付与し、AerialSlashを削除
  4. AerialSlashを持ち、WalkOneCmが1以上であるすべてのプレイヤーからAerialSlashを削除
  5. #EntityCountGlobalが0以下であるとき、真空斬り使用判定を停止