マイクラの配布サイト › フォーラム › 技術相談(統合版) › 溶岩が上がるアドオンが動作しない。 (function)
- このトピックには6件の返信、2人の参加者があり、最後に
CLOVER_creationにより6ヶ月前に更新されました。
- 投稿者投稿
下から溶岩が上がってくるアドオンを作りましたが、うまく動作しません
誰か改善してほしいです。こんな感じで動かそうとしていた↓
tick.jsonで一ティックごとに
二つのファンクションを動かす
1つめ
スコアが-64だったら溶岩を設置する。
スコアが-63だったら溶岩を設置する。
-64から320まで2つ目
lavaupタグが付いたプレイヤーのスコアを1ティックごとに0.01あげる。
=5秒に一回スコアが1上がるということ。/function startでスコアボードを作成。スコアを-64にセットする。
すべてのプレイヤーにlavaupタグを追加
結果
スコアが5秒に一回1あがってそれを検知して溶岩を配置する。
ダウンロードリンク。改善するところなどがあればお教えください。
できれば改善したアドオンをコメントに添付してくださると幸いです。返信は見れるときに見ます
匿名
ゲストlavablockfill.mcfunctionを見たところ、execute asではなく、execute atにしないとプレイヤーの周りにマグマが出てこないので変更してください。
あとスコアボードで少数って使えましたっけ?
gameandpc
参加者lavablockscore.mcfunctionに記述されている
execute as @a[tag=lavaup] run scoreboard players add @a lava 0.01
という内容について。
スコアボードで小数点は使えません。levelblockscore.mcfunctionが動作しないのはこのせいです。また、”lava”というスコアボードは作られていません。対処法・・・5秒に一度スコアを1上げるとするならば別のスコアボードを増やし、そのスコアボードをティック毎に1ずつ増やすようにする。1秒で20ティックなので、スコアボードが100になったときにlava(本当はlavablock?)のスコアボードを1増やすようにする。あとそのスコアボードは0にする。という感じにすれば行けると思います。
サンプルコード>>>
start.mcfunctionscoreboard objectives add lavablock dummy scoreboard objectives add tick dummy scoreboard players set @a lavablock -64 scoreboard objectives setdisplay sidebar lavablock ascending tag @a add lavauplavablockscore.mcfunction
execute as @a[tag=lavaup] if score @s tick matches 100 run scoreboard players add @s lavablock 1 execute as @a[tag=lavaup] if score @s tick matches 100 run scoreboard players reset @s tick execute as @a[tag=lavaup] run scoreboard players add @s tick 1こんな感じでどうでしょう…?
- この返信は6ヶ月前に
gameandpcが編集しました。
皆さん本当にありがとうございます。
アドオンが完璧に動作しました。
これから最終編集をしてクラフター図コロニーに配布しようと思います。
クレジットなどは必要でしょうか?
- この返信は6ヶ月前に
ありがとうございます。試してみますね。
クレジットつけて配布します
- 投稿者投稿

