新execute 対応した記事はこちらになります。
もし今後のアップデートでexecuteコマンドが発動しなくなったらこちら記述に書き換えてみてください![ひらめき](https://stat100.ameba.jp/blog/ucs/img/char/char4/591.png)
新execute対応 魔法剣士コマンド
マインクラフトで敵を剣で攻撃すると色んな魔法が発動するコマンドを紹介します。
このコマンドは統合版のコマンドになります。
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/15/aa/j/o1080071215009460763.jpg?caw=800)
炎魔法、氷魔法、雷魔法、風魔法、土魔法、毒魔法、闇魔法、回復魔法の8種類の剣技が使えます。
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/58/60/p/o1080049515009460767.png?caw=800)
※複数の魔法を同時に使えないので先頭のコマンドブロックは使いたい属性魔法のみ「反復」モードになっていて、それ以外は「衝撃」モードにしています。
2022年4月追記
今まで魔法の属性を切り替えるときにコマンドブロックのオン、オフで毎回切り替えていたのですが、新しく追加された
hasitemをコマンドで使うことでアイテムのスロットから簡単に魔法属性を切り替えれるようになりました
![ニコニコ](https://stat100.ameba.jp/blog/ucs/img/char/char4/590.png)
前回、紹介した雪玉に魔法をかける方法
の剣バージョンになります![ニコニコ](https://stat100.ameba.jp/blog/ucs/img/char/char3/002.png)
魔法剣士になる流れ
サバイバルモードにする
↓
新品の金の剣を装備する
↓
金の剣で敵を攻撃
↓
魔法発動
剣で攻撃すると魔法が発動する仕組み
clearコマンドは新品の剣で攻撃すると耐久値が減って、剣で攻撃したか検知することができます。
剣で攻撃したか判定して、攻撃したら魔法攻撃のコマンドが実行されます。新品の剣でないと検知できないので、攻撃する度にコマンドで新品の剣に持ち替えています。
耐久値はサバイバルモードでしか減らないので必ずサバイバルモードで試してください。
今回は金の剣(golden_sword)ですがダイヤモンドの剣(diamond_sword)でも魔法剣を使うことができます。
魔法耐性をつける
魔法剣を使う前に下準備しましょう。
プレイヤーも炎魔法などで燃えないように耐性と火炎耐性を付けておくと安全です。
チャット欄から以下のコマンドをプレイヤーにかけてください。
耐性エフェクト
/effect @p resistance 1000000 150 true
火炎耐性エフェクト
/effect @p fire_resistance 1000000 150 true
またエンチャントつき金リンゴを食べても同様に耐性をつけることができます。
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/c2/e9/j/o1080075015009463030.jpg?caw=800)
耐性エフェクトをつけて、新品の金剣を装備して、サバイバルモードで色んな魔法剣を試してみましょう!
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/cd/c2/p/o1080060715009464028.png?caw=800)
色んな魔法のコマンドについて解説します。
炎魔法
剣で攻撃すると敵が炎で燃えます。
新品の金の剣で敵を攻撃したか検知する。※このコマンドは全て共通です。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
金の剣で攻撃すると耐久値が減るので新しい金の剣に持ち替えます。※このコマンドは全て共通です。
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル 煙の演出
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:dragon_death_explosion_emitter ~ ~ ~
炎で敵を燃やす魔法
(設定4)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ execute @e[type=!player,r=5,c=1] ~ ~ ~ fill ~ ~ ~ ~ ~1 ~ fire 0 keep
氷魔法
剣で攻撃すると氷柱があらわれて敵を倒します。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル 氷が蒸発する演出
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:ice_evaporation_emitter ~ ~ ~
氷ブロックが出現
(設定4)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ execute @e[type=!player,r=5,c=1] ~ ~ ~ fill ~ ~ ~ ~ ~1 ~ ice 0 keep
剣で攻撃した敵が消失
(設定5)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ execute @e[type=!player,r=5,c=1] ~ ~ ~ tp ~ ~-70 ~
雷魔法
剣で攻撃すると雷で敵を攻撃します。
※雷を召喚しているのでプレイヤーもダメージを与える可能が高いので雷魔法を使うときは耐性エフェクトをつけましょう。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
雷を召喚
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ summon lightning_bolt ~ ~ ~
風魔法
剣で攻撃すると敵が空高く打ち上げられダメージを与えます。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル 煙の演出
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:camera_shoot_explosion ~ ~ ~
敵が空中に浮遊する
(設定4)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ effect @e[type=!player,r=5] levitation 8 5 true
土魔法
剣で攻撃すると土ブロックが出現して、敵を倒します。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル 煙の演出
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:mob_block_spawn_emitter ~ ~ ~
土ブロックが出現
(設定4)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ execute @e[type=!player,r=5,c=1] ~ ~ ~ fill ~ ~ ~ ~ ~1 ~ dirt 0 keep
剣で攻撃した敵が消失
(設定5)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ execute @e[type=!player,r=5,c=1] ~ ~ ~ tp ~ ~-70 ~
毒魔法
剣で攻撃すると敵が毒状態になります。
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/86/e7/j/o1080068315009469561.jpg?caw=800)
イメージ図 毒状態になっています。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル 紫色のモヤの演出
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:end_chest ~ ~ ~
敵を毒状態にする
(設定4)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ effect @e[type=!player,r=5] fatal_poison 10000 60 true
闇魔法
剣で攻撃すると敵は衰弱して死にます。
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/2e/b7/j/o1080070915009469568.jpg?caw=800)
イメージ図 敵は衰弱状態になっています。
(設定1)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定2)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル 黒いモヤの演出
(設定3)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:splash_spell_emitter ~ ~ ~
徐々に敵が衰弱して死ぬ
(設定4)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ effect @e[type=!player,r=5] wither 10000 100 true
回復魔法
プレイヤーを剣で切ると回復します。
![](https://stat.ameba.jp/user_images/20211001/21/sasamiyu58/a0/8d/j/o1080071715009469580.jpg?caw=800)
イメージ図 村人になっていますが、味方のプレイヤーを剣で切ると回復します。
(設定)反復、無条件、常にアクティブ
clear @p golden_sword 1 1
(設定)チェーン、条件付き、常にアクティブ
replaceitem entity @p slot.weapon.mainhand 0 golden_sword
パーティクル ハートの演出
(設定)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ particle minecraft:heart_particle ~ ~1 ~
攻撃したプレイヤーが回復する
(設定)チェーン、条件付き、常にアクティブ
execute @p ~ ~ ~ effect @e[type=player,r=5] instant_health 10000 100 true
コマンドログを消す
コマンドを設定すると大量のコマンドログが出てしまうので、コマンドログを非表示にすることもできます。
チャット欄に以下のコマンドを実行するとログが表示されなくなります。
/gamerule commandBlockOutput false
色んな剣魔法を使ってみました
![爆笑](https://stat100.ameba.jp/blog/ucs/img/char/char3/001.png)
コマンドの有効範囲を広げる
コマンドブロックから一定離れてしまうと魔法が発動しなくなります。
コマンドの有効範囲を広げるにはこちらの記事を参考にしてください。tickingareaコマンドを使います。
コマンドブロックの有効範囲を広げる方法