いつの間にか bone_visibility のバグが直ってて幸せになった話

スポンサーリンク

やっほぅ、ようこそぷっこ村へ。最近マイクラのお仕事とかもらえ始めてるししゃもです。

(・∀・)ノ

今回はバグのお話。ブロックの特定部位を表示させたり、させなかったりできる機能があります。minecraft:geometryコンポーネントの bone_visibility って機能なのですが、これが長いことバグり散らかしてまして、全く使い物になりませんでした。バグる前は minecraft:part_visibility という独立したコンポーネントでして、このころは普通に使えてましたし、Molangも受け付けてくれてました。

で、まぁ具体的に何ができるねん?って話なんですが、例えば置いた時にランダムで変化するブロックとか、伸びるたびに収穫できる作物とかに利用できます。置いた時にランダムで変化するってちょっと分かりにくいのですが、例えば机の上の散らかり具合をランダムに表現したいときなんかに使うとめっちゃ便利です。

↑これらは作物、左のゴンぶとのごぼうみたいなんは、植木鉢に植えられたマンドラゴラちゃんなのですが、ランダムに葉っぱが茂ってきて、それをハサミで収穫できる仕組みになってます。右のトゲトゲはパイナップルで、仕組みは同じです。

このたび、知らんうちにバグが直ってたので、嬉しさのあまり速攻で直してあげました。おかえり!

具体的な記法なのですが

      "minecraft:geometry": { 
        "identifier": "geometry.mandragora_block", 
        "bone_visibility": { 
          "leaves": "query.block_state('tyoitashi:growth_state') == 1"
        } 
      },

みたいな感じです。この bone_visibility が、まぁ酷いバグり散らかし方でした。

マンドラゴラちゃんのモデルですが、

↑のように、葉っぱのところを leaves というグループでまとめてあり、こちらをMolangによって条件判定、表示の切り替えを行っています。

1.20.60で run_command もとい queue_command が本実装予定なので、かなり自由度高くマケプレ用のアドオン開発ができるようにもなります。捗るね!

てなわけで、マンドラゴラちゃんとパインちゃんが帰ってきてくれて、なんか嬉しくてテンション上がったので書き散らかしてみました。

それでは、いつも通りすかっすかの記事でしたがこの辺で、お帰りの際はお気をつけて~(・∀・)ノシ

コメント