= 创作分享 =
编程开发
1.12注册问题
是墨靈不是墨白

1.12注册问题

1758 12
5RF
本帖最后由 MBYL_InkAndSoul 于 2023-6-29 18:06 编辑



如何将元数据分开……
现在这样会导致不同元数据的物品能够堆叠从而丢失原有的元数据。
[已解决]

最佳答案

查看完整内容

纹理一类的还是需要单独注册的,一般会被分配到块里 流体也算方块x
发表于 2023-6-28 11:22:02 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

回复 | 举报

该帖共收到 12 条回复!
初雪·冰
MBYL_InkAndSoul 发表于 2023-6-29 14:58
我翻到了JEI中对流体的渲染:
这是必须要注册流体方块才行得通吗?
但注册了之后纹理还是黑紫块啊……

纹理一类的还是需要单独注册的,一般会被分配到块里
流体也算方块x

清晨的凤梨闻起来真棒!闻起来就像凤
发表于 2023-6-28 11:22:03 | 只看该作者

回复 | 举报

是墨靈不是墨白
还有,我明明有把ItemBlocks的CreativeTab设置为当前物品页,但却没有任何效果。
发表于 2023-6-28 11:36:27 | 只看该作者

回复 | 举报

初雪·冰
插入新的元数据子类:
  1.     @Override
  2.     @SideOnly(Side.CLIENT)
  3.     public void getSubItems(Item item, CreativeTabs tab, List list) {
  4.         for (int i = 0; i < 2; i ++) list.add(new ItemStack(item, 1, i));
  5.     }
复制代码
子类贴图区分:
  1.     @Override
  2.     @SideOnly(Side.CLIENT)
  3.     public IIcon getIconFromDamage(int meta) {
  4.         return meta < this.icon.length ? this.icon[meta] : this.icon[0];
  5.     }

  6.     @Override
  7.     @SideOnly(Side.CLIENT)
  8.     public void registerIcons(IIconRegister icon) {
  9.         this.icon = new IIcon[2];
  10.         for (int i = 0; i < 2; i ++) this.icon[i] = icon.registerIcon(MODID + ":" + this.name + i);
  11.     }
复制代码
使用元数据区分物品,务必关闭物品可修复,因为元数据与伤害值是相同的,否则玩家可能会通过某些修复手段实现物品之间切换。

清晨的凤梨闻起来真棒!闻起来就像凤
发表于 2023-6-29 13:09:00 | 只看该作者

回复 | 举报

是墨靈不是墨白
QQ酱208628 发表于 2023-6-29 13:09
插入新的元数据子类:
子类贴图区分:
使用元数据区分物品,务必关闭物品可修复,因为元数据与伤害值是相同 ...

呃呃呃……Icon?这是1.7.10的实现吗?

好像只要调用setHasSubtypes(true);就可以了啊……
低版本物品方块需要在方块那边设置物品页(?)【只是看到了Block有这个方法,还没测试】
不过流体纹理怎么整……流体纹理需要在哪里注册?
发表于 2023-6-29 13:54:05 | 只看该作者

回复 | 举报

初雪·冰
MBYL_InkAndSoul 发表于 2023-6-29 13:54
呃呃呃……Icon?这是1.7.10的实现吗?

好像只要调用setHasSubtypes(true);就可以了啊……

对,我直接复制我自己工作区的(逃)

低版本的话,Block会自动集成ItemBlock(高版本类名为BlockItem)且不可自己为方块注册,如果一定要指定ItemBlock,需要注册方块时直接提供集成了ItemBlock的类(Class<? extends ItemBlock>),大多情况下直接对Block进行操作即可,物品相关方法已经被并入方块中。

清晨的凤梨闻起来真棒!闻起来就像凤
发表于 2023-6-29 13:58:06 | 只看该作者

回复 | 举报

是墨靈不是墨白
QQ酱208628 发表于 2023-6-29 13:58
对,我直接复制我自己工作区的(逃)

低版本的话,Block会自动集成ItemBlock(高版本类名为BlockItem) ...

“但流体纹理怎么办……”
这是完成CregTech重置的最后一步……
发表于 2023-6-29 14:04:04 | 只看该作者

回复 | 举报

初雪·冰
MBYL_InkAndSoul 发表于 2023-6-29 14:04
“但流体纹理怎么办……”
这是完成CregTech重置的最后一步……

看看香草的实现?x

清晨的凤梨闻起来真棒!闻起来就像凤
发表于 2023-6-29 14:32:55 | 只看该作者

回复 | 举报

是墨靈不是墨白
QQ酱208628 发表于 2023-6-29 14:32
看看香草的实现?x

香草的实现和Forge的实现不沾边啊……(Forge的Fluid类)
我需要让流体不能被放下来,所以没有注册对应的流体块。
即使我注册了流体块放下来它的纹理也只能是岩浆……JEI中依然显示黑紫块
发表于 2023-6-29 14:36:01 | 只看该作者

回复 | 举报

是墨靈不是墨白
还是说从原CregTech中搬来的MCr生成的Blockstate有错误?

发表于 2023-6-29 14:38:43 | 只看该作者

回复 | 举报

12下一页
百科目前不允许匿名发帖哦~ 请先 [ 登陆 ][ 注册 ] 吧~

本版积分规则

发新帖
  • 回复
  • 点评
  • 评分

[ MC百科(mcmod.cn) 除另有声明,所有开放公共编辑的内容均使用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表