Posted July 25, 20205 yr Hi, how can I change the color of a custom grass block to the color of a biome?
July 25, 20205 yr Author I wrote now an EventHandler with the following Code. But what should I insert in the first field of register? public class EventHandler{ @OnlyIn(Dist.CLIENT) @SubscribeEvent public static void registerBlockColorHandler(final ColorHandlerEvent.Block event) { event.getBlockColors().register( ,RegistryHandler.MYBLOCK); }
July 25, 20205 yr Author Ok, I changed it like this, but it gives me an error. public class EventHandler implements IBlockColor{ @Override public int getColor(BlockState x, @Nullable IBlockDisplayReader reader, @Nullable BlockPos pos, int u) { return 0; } @SubscribeEvent public static void registerBlockColorHandler(final ColorHandlerEvent.Block event) { event.getBlockColors().register((x, reader, pos, u) -> reader != null && pos != null ? BiomeColors.getGrassColor(reader, pos) : GrassColors.get(0.5D, 1.0D), RegistryHandler.MYBLOCK); } }
July 25, 20205 yr Author Ok, I see that two implementations are useless, but why is there an error shown two me? @Mod.EventBusSubscriber(modid = Main.MOD_ID) public class EventHandler{ @SubscribeEvent public static void registerBlockColorHandler(final ColorHandlerEvent.Block event) { event.getBlockColors().register((x, reader, pos, u) -> reader != null && pos != null ? BiomeColors.getGrassColor(reader, pos) : GrassColors.get(0.5D, 1.0D), RegistryHandler.MYBLOCK); }
July 25, 20205 yr Author error: method register in class BlockColors cannot be applied to given types; event.getBlockColors().register((x, reader, pos, u) -> reader != null ^ required: IBlockColor,Block[] found: (x,reader,[...] 1.0),RegistryObject<MyBlock> reason: varargs mismatch; RegistryObject<MyBlock> cannot be converted to Block Edited July 25, 20205 yr by Thanos
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.