Skip to content

Instantly share code, notes, and snippets.

@sirsavary
Last active March 5, 2016 02:43
Show Gist options
  • Select an option

  • Save sirsavary/805d9d597d3df1788b94 to your computer and use it in GitHub Desktop.

Select an option

Save sirsavary/805d9d597d3df1788b94 to your computer and use it in GitHub Desktop.
private OreBlock dankBlock;
@EventHandler
public void preinit(FMLPreInitializationEvent event) {
metals = gson.fromJson(mMetals.getResourceAsJSON("data/wip.json"), Metal[].class);
MinecraftForge.EVENT_BUS.register(this);
for (Metal metal : metals) {
OreBlock oreBlock = new OreBlock(metal);
dankBlock = oreBlock;
GameRegistry.registerBlock(oreBlock, oreBlock.getName());
ModelBakery.registerItemVariants(Item.getItemFromBlock(oreBlock));
}
}
@EventHandler
public void init(FMLInitializationEvent event) {
ItemModelMesher itemModelMesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
itemModelMesher.register(Item.getItemFromBlock(dankBlock), 0, new ModelResourceLocation(MODID + ":" + dankBlock.getName(), "normal"));
}
@SubscribeEvent(priority = EventPriority.LOWEST)
public void bakeModels(ModelBakeEvent event) {
try {
IRetexturableModel model = (IRetexturableModel) ModelLoaderRegistry.getModel(new ResourceLocation("minecraft:block/cube_all"));
IModel retexture = model.retexture(ImmutableMap.of("all", "mmetals:blocks/copper_ore"));
TextureMap textures = Minecraft.getMinecraft().getTextureMapBlocks();
IFlexibleBakedModel bakedModel = retexture.bake(retexture.getDefaultState(), Attributes.DEFAULT_BAKED_FORMAT, (location) -> textures.getAtlasSprite(location.toString()));
event.modelRegistry.putObject(new ModelResourceLocation("mmetals:copper_ore#normal"), bakedModel);
event.modelRegistry.putObject(new ModelResourceLocation("mmetals:copper_ore#inventory"), bakedModel);
} catch (IOException e) {
e.printStackTrace();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment