フォーラムへの返信
- 投稿者投稿
あいうえお
参加者攻撃力上昇は
damage(n)=floor(damage(n-1)×1.3+1)
で表されるのでレベル100でダイヤ剣の場合だとdamage₁₀₀ =floor(damage₉₉×1.3+1) =floor(792×1.3+1) =floor(1030.6) =1030
となり攻撃力は100ではなく、1030になると思われます。
- この返信は2週、 1日前に
あいうえおが編集しました。
あいうえお
参加者あいうえお
参加者もしかしたらマイクラの仕様上、剣で防具を着ているプレイヤーを殴ったとき耐久値は剣が先に減り、その1ティック後に防具が減るのかもしれません。
なのでネザライト剣を新品にする動作を防具の耐久値が減った後するコマンドを書いたのでこちらに変更してみてください。
あとあまり関係はないと思いますが、ダブルクォーテーションの向きがおかしかったので直しておきました。
※1ティック=0.05秒コマンド:
衝撃 無条件 動力が必要(スタート時のコマンドブロックのどこかに入れてください)
/replaceitem entity @a slot.armor.feet 0 iron_boots 1 0 {“keep_on_death”:{},“item_lock”:{“mode”:“lock_in_slot”}}反復 無条件 常時実行
/execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[rm=0.01,r=6,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標チェーン 無条件 常時実行
/execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] if entity @a[rm=0.01,r=6,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] replaceitem entity @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 netherite_sword 1 0チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,data=1}] slot.armor.feet 0 iron_boots 1 0 {“keep_on_death”:{},“item_lock”:{“mode”:“lock_in_slot”}}あいうえお
参加者ごめんなさい。僕がコマンドの一部を間違えていました。
チェーン 無条件 常時実行
/execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[r=6,c=1,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標2番目のこの上コマンドが間違っていて正しくは下のコマンドになります!
チェーン 無条件 常時実行
/execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[rm=0.01,r=6,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標─────────────────────
また、改良点も見つかったのでこちらに変更してください(上の間違えも修正された状態で書いてあります)
衝撃 無条件 動力が必要(スタート時のコマンドブロックのどこかに入れてください)
/replaceitem entity @a slot.armor.feet 0 iron_boots 1 0 {“keep_on_death”:{},”item_lock”:{“mode”:”lock_in_slot”}}反復 無条件 常時実行
/execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[rm=0.01,r=6,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 netherite_sword 1 0チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,data=1}] slot.armor.feet 0 iron_boots 1 0 {“keep_on_death”:{},”item_lock”:{“mode”:”lock_in_slot”}}一応こちらのコマンドを説明しておくと、
一つ目:全てのプレイヤーに脱げない鉄のブーツを着させる。
二つ目:ネザライト剣の耐久値が減ったプレイヤーの6マス以内にいる鉄のブーツの耐久値が減ったプレイヤーをtp
三つ目:耐久値が減ったネザライト剣を新しく
四つ目:耐久値が減った鉄のブーツを新しく
のような感じです。─────────────────────
動かない場合や質問がある場合はまた気軽に質問してください。
ちなみに【セレクターに合う対象がありません】というのはエラーではなく、全ての条件に合ったプレイヤーがいないというだけで動くときはしっかり動くので、安心してください!
- この返信は3週、 1日前に
あいうえおが編集しました。
あいうえお
参加者このコマンドを試してみてください。
反復 無条件 常時実行
/replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,quantity=0}] slot.armor.feet 0 iron_bootsチェーン 無条件 常時実行
/execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[r=6,c=1,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 netherite_swordチェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,data=1}] slot.armor.feet 0 iron_bootsあいうえお
参加者tagはワールドを閉じても、外さない限り永遠についたままなのでその必要はありません。
あいうえお
参加者特定の効果を持ったポーションを空中に出すということならばstructureコマンドで保存して出すしかないですね
あいうえお
参加者衝撃 無条件 動力が必要(コマンドブロックにボタンを置く)
/tag @p add 鬼
で1番近くにいるプレイヤーに“鬼”のtagがつきますこのままだと次の試合の時もその人たちが鬼だというようになってしまうので、逃走者が全員捕まった時のコマンドブロックの最後に
チェーン 無条件 常時実行
/tag @a remove 鬼
というコマンドを追加しておきましょう
これは“鬼”というtagを全員から外すコマンドになっています─────────────────────
tagコマンドの説明tagコマンドというものは簡単に言えば、目印のようなものです。
これを使えば、チームを分けたり、プレイヤーごとに識別したりすることが簡単にできます。
ちなみに構文はこのようになっています
/tag (@p,@aなど) (add,remove) (tag名)addは追加する、removeは外すというものです
─────────────────────
これからもコマンドを使うならばtagコマンドは結構使うと思うのでぜひ覚えておいてくださいねあいうえお
参加者ちなみに鬼側はなんの剣を持っていますか?
基本的にアップデートが来ても影響はないはずですあいうえお
参加者1. 鬼ごっこの様なワールド作成しているのですが、剣でダメージ与えると逃走者側がTPするコマンドは作成可能でしょうか?
→これは剣の耐久値の減りを検知して、剣を持っている人から1番近くにいる人をtpするので、ダメージを受けている人より近くに他の人がいるとその人がtpされてしまうので注意してください。それが嫌なら何かしらの特定の防具を着させれば確実にできます。
コマンド:
反復 無条件 常時実行
/execute at @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] run tp @a[r=5,c=1] 座標
チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 剣のid防具を着させる場合(上のコマンドは使わない)
反復 無条件 常時実行
/replaceitem entity @a[hasitem={item=防具のid,location=防具の着る場所,quantity=0}] 防具の着る場所 0 防具のid
チェーン 無条件 常時実行
/execute at @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] run tp @a[r=5,c=1,hasitem={item=防具のid,location=防具の着る場所,data=1}] 座標
チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 剣のid
チェーン 無条件 常時実行
/replaceitem entity @a[hasitem={item=防具のid,location=防具の着る場所,data=1}] 防具の着る場所 0 防具のid防具の着る場所の説明
slot.armor.head:ヘルメット
slot.armor.chest:チェストプレート
slot.armor.legs:レギンス
slot.armor.feet:ブーツ防具のidは自分で調べてください
2. 逃走者が全員捕まった(剣でTP)したときに玄関からやり直しで逃走者全員のHPをハート一個分減らすなども作成可能かお伺いしたいです。
→人数が決まっていない場合はコマンド数が増えてしまったりしてしまい、難しいので全員捕まったら手動でしてください。手動が嫌なら自動のやつを教えます。
あとダメージを与えるだけなので自動回復されるのでしない方が良いのであれば
/gamerule naturalRegeneration false
をチャット欄で一回実行しましょうコマンド:
衝撃 無条件 動力が必要(コマンドブロックにボタンを置く)
/effect @a instant_health 1 255 true
チェーン 無条件 常時実行
/damage @a 2
チェーン 無条件 常時実行(tpするなら)
/tp @a 玄関の座標3. 鬼に雪玉を当てると透明になる、もしくは鬼役のPLがTPするなど、撤退させるようなコマンドもあれば教えていただきたいです。
→鬼に雪玉を当てると透明になる(鬼にtagかscoreboardで識別済みなのが前提、していないなら質問してください)
コマンド:
反復 無条件 常時実行(鬼にtag“鬼”がついている場合)
/execute at @e[type=snowball] run effect @a[r=1,tag=鬼] invisibility 秒数 1 true
↑最後のtrueはモヤモヤを出さないようにするものです。モヤモヤを出したい場合はなくて大丈夫です。→鬼役のPLがTPする
コマンド:
反復 無条件 常時実行(鬼にtag“鬼”がついている場合)
/execute at @e[type=snowball] run tp @a[r=1,tag=鬼] 座標わからないことや、質問があったり、動かなかったりした場合は聞いてください
見にくかったらすいません。
なんか送れてなかったのでもう一度送りますあいうえお
参加者コマンドではごり押ししないと無理なので、アドオンを使ってみてはいいかかでしょうか?
https://minecraft-mcworld.com/95215/
こちらがおすすめです- この返信は1ヶ月前に
あいうえおが編集しました。
- この返信は2週、 1日前に
- 投稿者投稿