About

位置 (-1920,4,-184)

呼び出し元 初期化処理, 村人像

分岐先 黙想終了処理, マジックシールド終了処理, アイアンウィル継続判定

黙想やウィンドウォール、マジックシールド、跳躍、アイアンウィルなど継続して発動するスキルの継続もしくは終了処理、または分岐を行う。

コマンド群

No. コマンド 状態 コメント
1 /scoreboard players tag @a[tag=Mokuso,score_WalkOneCm_min=5] add MokusoEnd   黙想終了処理 Mokuso
2 /scoreboard players tag @a[tag=Mokuso,score_SprintOneCm_min=5] add MokusoEnd    
3 /scoreboard players tag @a[tag=Mokuso,score_CrouchOneCm_min=5] add MokusoEnd    
4 /execute @a[tag=MokusoEnd,c=1] ~ ~ ~ /execute 0-0-1-0-1 ~ 8 -184 /clone ~ ~ ~ ~ ~ ~ ~ ~ ~ filtered force minecraft:command_block 5 ###黙想終了処理    
5 /execute @a[score_WindWall_min=0] ~ ~ ~ /particle sweepAttack ~ ~1 ~ 2 2 2 0 1 true   ウィンドウォール WindWallスコア
6 /execute @a[score_WindWall_min=0] ~ ~ ~ /entitydata @e[r=6,tag=Driftable] {direction:[0d,-0.1d,0d]} 条件付き  
7 /execute @a[score_WindWall_min=0] ~ ~ ~ /execute @e[r=6,tag=Driftable] ~ ~ ~ /summon Endermite ~ ~ ~ {Silent:true,NoAI:true,Invulnerable:true,Lifetime:2395,ActiveEffects:[{Id:14b,Duration:10,Amplifier:0b,ShowParticles:false}],Tags:[SystemEntity,TypeChecked,WindWallMite]} 条件付き  
8 /execute @a[score_WindWall_min=0] ~ ~ ~ /scoreboard players tag @e[r=6,tag=Driftable] remove Driftable 条件付き  
9 /execute @a[score_WindWall_min=0] ~ ~ ~ /execute @e[r=6,tag=DriftableA] ~ ~ ~ /entitydata @e[r=0,tag=WindWallMite] {Lifetime:2400} 条件付き  
10 /execute @a[score_WindWall_min=0] ~ ~ ~ /execute @e[r=6,tag=DriftableA] ~ ~ ~ /summon ArmorStand ~ ~ ~ {Invisible:true,NoGravity:true,Invulnerable:true,Tags:[SystemEntity,Garbage,TypeChecked]} 条件付き  
11 /execute @a[score_WindWall_min=0] ~ ~ ~ /scoreboard players tag @e[r=6,tag=DriftableA] remove DriftableA 条件付き  
12 /scoreboard players tag @a[tag=MagicShield] add MagicShieldEnd マジックシールドチェック MagicShield MagicShieldCheck  
13 /scoreboard players tag @a[tag=MagicShield] remove MagicShieldEnd {HurtTime:0s} 条件付き  
14 /execute @a[tag=MagicShieldEnd,c=1] ~ ~ ~ /execute 0-0-1-0-1 ~ 9 -184 /clone ~ ~ ~ ~ ~ ~ ~ ~ ~ filtered force minecraft:command_block 5 ###マジックシールド終了処理    
15 /scoreboard players set @a[score_Jump_min=1] WalkOneCm 0   ジャンプ Jump
16 /scoreboard players set @a[score_Jump_min=1] FlyOneCm 0 条件付き  
17 /scoreboard players tag @a[score_Choyaku_min=2,score_Jump_min=1] add ChoyakuJump {ActiveEffects:[{Id:8b}]} 条件付き 跳躍ダメージ Shiyaku Jump
18 /execute @a[tag=ChoyakuJump] ~ ~ ~ /playsound entity.enderdragon.flap master @a[r=16] ~ ~ ~ 8 0.8 0 条件付き  
19 /execute @a[tag=ChoyakuJump] ~ ~ ~ /particle explode ~ ~ ~ 2.0 0 2.0 0 30 force 条件付き  
20 /fill ~2 ~-1 ~ ~5 ~-1 ~ minecraft:redstone_block 0 replace minecraft:lapis_block 0 #跳躍ダメージ処理開始 条件付き  
21 /execute @a[tag=ChoyakuJump] ~ ~ ~ /scoreboard players tag @e[r=9,tag=Enemy] add SkillTarget 条件付き  
22 /execute @a[tag=ChoyakuJump,score_Choyaku_min=2,score_Choyaku=7] ~ ~ ~ /execute @e[r=3,tag=Enemy] ~ ~ ~ /summon Arrow ~ ~0.02 ~ {CustomName:”旋風”,damage:15d,Motion:[0d,1d,0d],Silent:true,life:1200s,Tags:[Garbage]} 動力が必要  
23 /execute @a[tag=ChoyakuJump,score_Choyaku_min=8,score_Choyaku=12] ~ ~ ~ /execute @e[r=6,tag=Enemy] ~ ~ ~ /summon Arrow ~ ~0.02 ~ {CustomName:”旋風”,damage:35d,Motion:[0d,1d,0d],Silent:true,life:1200s,Tags:[Garbage]} 動力が必要  
24 /execute @a[tag=ChoyakuJump,score_Choyaku_min=13] ~ ~ ~ /execute @e[r=9,tag=Enemy] ~ ~ ~ /summon Arrow ~ ~0.02 ~ {CustomName:”旋風”,damage:60d,Motion:[0d,1d,0d],Silent:true,life:1200s,Tags:[Garbage]} 動力が必要  
25 /fill ~-3 ~-1 ~ ~ ~-1 ~ minecraft:lapis_block 0 replace minecraft:redstone_block    
26 /scoreboard players tag @a[tag=ChoyakuJump] remove ChoyakuJump 条件付き  
27 /scoreboard players reset @a[score_Jump_min=1] Jump    
28 /scoreboard players tag @a[score_HPChanging_min=0] add Damaged   緩衝体力用被ダメージ補正処理
29 /scoreboard players tag @a[tag=Damaged] remove Damaged {AbsorptionAmount:0f} 条件付き  
30 /execute @a[tag=Damaged] ~ ~ ~ /scoreboard players operation @a[c=1] DamageTaken = @a[c=1] HP    
31 /execute @a[tag=Damaged] ~ ~ ~ /scoreboard players operation @a[c=1] DamageTaken -= @a[c=1] HPChanging 条件付き  
32 /scoreboard players operation @a[tag=Damaged] DamageTaken < #0 Const 条件付き  
33 /scoreboard players tag @a[tag=Damaged] remove Damaged 条件付き  
34 /execute @a[score_DamageTaken_min=0] ~ -200 ~ /kill @a[dy=-40]   奈落介錯
35 /scoreboard players tag @a[score_IronWill_min=1,score_DamageTaken_min=0] add IronWill   アイアンウィル発動 DamageTaken IronWill
36 /clone -1920 11 ~ -1920 11 ~ -1920 11 ~ filtered force minecraft:command_block 5 ###アイアンウィル継続判定 条件付き  
37 /execute @a[tag=IronWill] ~ ~ ~ /summon AreaEffectCloud ~ ~ ~ {Invulnerable:true,Radius:0f,RadiusOnUse:0f,DurationOnUse:0f,Duration:0,RadiusPerTick:0f,WaitTime:0,Age:0,Particle:take,Tags:[IronWillPoint,SystemEntity,TypeChecked]} 条件付き  
38 /execute @a[tag=IronWill] ~ ~ ~ /tp @e[dx=0,tag=IronWillPoint,c=1] @a[c=1] 条件付き  
39 /execute @a[tag=IronWill] ~ ~ ~ /tp @a[c=1] @e[r=4,tag=IronWillPoint,c=1] 条件付き  

詳細

  1. Mokusoを持ち、WalkOneCmが5以上であるすべてのプレイヤーにMokusoEndSprintOneCmCrouchOneCmを付与
  2. MokusoEndを持つプレイヤーが一人存在するとき、(-1920,8,-184)にある黙想終了処理を実行
  3. WindWallが0以上であるプレイヤーが存在するとき、そのプレイヤーの座標上でパーティクルを表示し以下の事柄を実行
    1. WindWallが0以上であるプレイヤーから6m以内にいるDriftableを持つすべてのエンティティに{direction:[0d,-0.1d,0d]}を付与し、WindWallMiteをそのエンティティと同座標上に召喚し、Driftableを削除
    2. WindWallが0以上であるプレイヤーから6m以内にいるDriftableAを持つすべてのエンティティの同座標上にいるWindWallMiteを持つすべてのエンティティのLifetimeを2400にし、キルする
    3. WindWallが0以上であるプレイヤーから6m以内にいるDriftableAを持つすべてのエンティティの位置にWindWall用ArmorStandを召喚し、DriftableAを削除
  4. MagicShieldを持ち、HurtTimeが0でないすべてのプレイヤーにMagicSheildEndを付与
  5. MagicShieldを持つプレイヤーを一人選択し、(-1920,9,-184)にあるマジックシールド終了処理を実行
  6. Jumpが1以上であるすべてのプレイヤーのWalkOneCmFlyOneCmを0に設定し、以下の事柄を実行
    1. Choyakuが2以上、Jumpが1以上であり、跳躍エフェクトを持つすべてのプレイヤーにChoyakuJumpを付与
    2. ChoyakuJumpを持つすべてのプレイヤーの座標上で演出を実行
    3. (-1899,4,-184)~(-1896,4,-184)にあるNo.22 ~ No.24のコマンドを実行可能状態に変更
    4. ChoyakuJumpを持つすべてのプレイヤーから9m以内にいるEnemyを持つすべてのエンティティにAddSkillTargetを付与
  7. (No.22 ~ No.24のコマンド)ChoyakuJumpを持ち、Choyakuの値によってそのプレイヤーからある半径にいるEnemyを持つエンティティの座標上に、矢を召喚しダメージ与える。詳細は跳躍によるダメージ処理を参考
  8. No.22 ~ No.24のコマンドブロックを実行不可状態に変更し、変更できたらChoyakuJumpを持つすべてのプレイヤーからChoyakuJumpを削除
  9. Jumpが1以上であるすべてのプレイヤーのJumpを0に設定
  10. HPChangingが0以上であり、追加体力(AbsorptionAmount)が0より大きいすべてのプレイヤーにDamagedを付与
  11. Damagedを持つプレイヤーを一人選択し、DamageTakenに以下の計算結果を代入、その後Damagedを削除
\[\text{DamageTaken} = \begin{cases} \text{HP} - \text{HPChanging} & (\text{HP} \geq \text{HPChanging})\\ 0 & (\text{HP} < \text{HPChanging}) \end{cases}\]
  1. DamageTakenが0以上であるプレイヤーから下に200 ~ 240 m の範囲にいるすべてのプレイヤーをキルする
  2. IronWill(スコア)が1以上であり、DamageTakenが0以上であるすべてのプレイヤーにIronWill(タグ)を付与し、以下の事柄を実行
    1. (-1920,11,-184)にあるアイアンウィル継続判定を実行
    2. IronWillを持つすべてのプレイヤーの同座標上にIronWillPointを持つAEC、IronWillPointを召喚
    3. IronWillを持つプレイヤーと同座標上にいて、かつ最も近いIronWillPointを持つエンティティをプレイヤーの座標上に移動
    4. IronWillを持つプレイヤーを半径4m以内にいて、かつ最も近いIronWillPointを持つエンティティの座標上に移動

跳躍によるダメージ処理

Choyakuの値 半径[m] ダメージ 召喚される矢
2 ~ 7 3 15 (ハート7.5個分) 旋風1
8 ~ 12 6 35 (ハート17.5個分) 旋風2
13 ~ 9 60 (ハート30個分) 旋風3