Jellofish83
嗯对,如题。
是个人都有问问题的时候,虽然我学Java已经三年了
但是,我前几天写模组的时候遇到一个问题,
就是我做了一朵花,然后进到游戏里面之后是正常的模型,但是放置后有黑色背景。但是物品状态又没有黑色的背景。
我检查过JSON了,JSON没有问题,如果有人可以给出答案,本人必有500金粒重赏

源代码如下:

花:
  1. public static final RegistryObject<Block> FROZEN_ROSE = registerBlock("frozen_rose", () -> new
  2.             FlowerBlock(MobEffects.MOVEMENT_SLOWDOWN, 5, BlockBehaviour.Properties.copy(Blocks.DANDELION).noOcclusion()),
  3.             CreativeModeTab.TAB_DECORATIONS);
复制代码
盆装(放到花盆里的):
  1. public static final RegistryObject<Block> POTTED_FROZEN_ROSE = registerBlockWithoutBlockItem("potted_frozen_rose", () -> new
  2.                     FlowerPotBlock(() -> ((FlowerPotBlock) Blocks.FLOWER_POT), ModBlocks.FROZEN_ROSE,
  3.             BlockBehaviour.Properties.copy(Blocks.POTTED_DANDELION).noOcclusion()));
复制代码
Main class里的FMLClientSetupEvent:
  1. private void clientSetup(final FMLClientSetupEvent event) {
  2.         ItemBlockRenderTypes.setRenderLayer(ModBlocks.FROZEN_ROSE.get(), RenderType.cutout());
  3.         ItemBlockRenderTypes.setRenderLayer(ModBlocks.POTTED_FROZEN_ROSE.get(), RenderType.cutout());
  4.     }
复制代码
假如说各位大佬有解决方案,请将其告知。
假如说没有,请不要在回复区水贴
谢了~

无敌三脚猫
看着没问题,会不会是这个事件就没触发,比如你没有放注册事件的代码,咱猜一下,可能你把这个事件注册到mod总线里了

Jellofish83
无敌三脚猫 发表于 2023-7-22 10:49
看着没问题,会不会是这个事件就没触发,比如你没有放注册事件的代码,咱猜一下,可能你把这个事件注册到fo ...

咳咳,我发现我忘记在我的代码里加
  1. eventBus.addListener(this::clientSetup);
复制代码

问题现在解决了,确实是没有触发,连注册都忘注册了