问题描述
我最近开始使用 fabric api 修改 minecraft。
我想获得玩家当前站立的草方块的颜色。我发现在 Biome 类中有一个名为 getGrassColorAt(double x,double y)
的方法 我设法获取了它的数据,但它是一个整数。而且我不知道如何使用它。
例如,通过在普通生物群落中调用 getGrassColorAt(double x,double y)
,我会得到:-7226023,在河流生物群落中我会得到 -7423631。在沙漠中为 -4212907。
正如我在 this 上所读到的那样,我知道草块的颜色是由一个名为草.png 的纹理贴图决定的,但我不知道 int 如何帮助我使用它。
注意:如果无法获取颜色,我至少希望获取生物群落的名称(我在类中找不到 getName)
如果有人知道我可以在哪里获得可读的文档,请提供链接。 (我目前正在使用我的 IDE 来了解一个类的不同方法)
感谢您抽出宝贵时间。
解决方法
面料不和谐的人帮助了我。 显然,在字符串中编码的数据 vas 我不得不将 r g b 值直接与位隔离(或者我理解)这里是解决方案(j 是作为 int 的颜色)
int r = j >> 16 & 255;
int g = j >> 8 & 255;
int b = j & 255;