Mo Glass は、ステンド グラスや色付きガラスのバリエーションを含む、ガラスの階段とガラスのスラブを追加する Minecraft MOD です。どのようなビルドでも見栄えがよく、バニラ ガラス ブロックとシームレスに接続できます。この MOD は、スナップショットを含め、さまざまな Minecraft バージョンで利用できます。
(これは、Eclipse および Java Development Kit 21 がすでにインストールされている Windows を使用していることを前提としています。)
リポジトリをクローン/ダウンロードします。
PowerShell で次の 2 つのコマンドを実行します。
. / gradlew.bat -- stop
. / gradlew.bat genSources eclipse
Eclipse で、 Import...
> Existing Projects into Workspace
に移動し、このプロジェクトを選択します。
階段もスラブもバニラのガラスブロックと同じようにシースルーになっています。複数の階段、スラブ、フルブロックを並べて配置すると、1 枚のガラスのように見えます。
色ガラスでできたスラブや階段は、隙間なく設置すると光を遮断し、隙間があると光を通してくれます。
この MOD を作り始める前、私はいつも Mojang がこれらのブロックのことを忘れているだけ、あるいは追加するのが怠けているのではないかと思っていました。しかし、これらのブロックを自分で追加し、透明性を機能させるために多くの時間を費やした今、なぜ Mojang がわざわざ手を出さなかったのかがようやく理解できたように思います。 Minecraft の階段は驚くほど複雑なブロックであり、透明にすることは意図されていませんでした。スラブは十分簡単かもしれないが、もし Mojang がスラブを追加したら、人々は階段を求めるのをやめないだろう。そして、ガラスの階段はまさに悪夢です。
階段は北、東、南、西に向けて配置でき、上下逆または正向きにすることができ、4 つの異なる方法のいずれかで直線または曲線にすることができ、透明な場合とそうでない場合がある 6 つの面があります。 、隣にあるブロックに応じて。しかし、ここに落とし穴があります。これらの 6 つの面のそれぞれに、別のガラス階段のブロックがあり、北、東、南、西の方向を向いて、上下逆さままたは右側を向いて、1 つの直線または曲線で配置することもできます。 4つの異なる方法があります。そしてもちろん、6 つの面のそれぞれに、不透明なブロック、通常のガラス ブロック、または下半分、上半分、または二重スラブに配置されたガラス スラブを配置することもできます。
最終的に、ガラス階段の透明度を計算するだけでも 10,800 のシナリオを考慮する必要があります。ただし、ガラス スラブの透明度を計算し (810 の可能なシナリオ)、通常のガラス ブロックの透明度の計算を調整する必要もあります (270 の可能なシナリオ、つまり以前より 258 多いシナリオ)。
ゲームに 2 つの新しいブロックを追加するだけでも多大な労力がかかります。また、新しいバグが侵入する機会もたくさんあります。それが、Mojang が気にしなかった理由だと思います。
可能な階段のバリエーション: pvStairs = 4 * 2 * 5 = 40
スラブの可能なバリエーション: pvSlabs = 3
ガラス ブロックの可能なバリエーション: pvGlass = 1
不透明なブロックの可能なバリエーション: pvBlocks = 1 (透明度を計算するときにバリエーションは無視されるため)
組み合わせ可能な組み合わせ: pvAll = pvStairs + pvSlabs + pvGlass + pvBlocks = 40 + 3 + 1 + 1 = 45
ブロックのおそらく透明な面 (より多くの面がある場合でも、階段を含む): f = 6
階段の透明度について考えられるシナリオ: psStairs = pvAll * f * pvStairs = 45 * 6 * 40 = 10800
スラブの透明度について考えられるシナリオ: psSlabs = pvAll * f * pvSlabs = 45 * 6 * 3 = 810
ガラス ブロックの透明度について考えられるシナリオ: psGlass = pvAll * f * pvGlass = 45 * 6 * 1 = 270
ガラスの階段とスラブが存在しない場合のガラス ブロックの透明度について考えられるシナリオ: psGlassVanilla = (pvGlass + pvBlocks) * f * pvGlass = (1 + 1) * 6 * 1 = 12