@EventHandler
public void init(FMLInitializationEvent event)
{
if (exempleEnabled)
{
logger.info("Registering ISBRH Block Exemple...");
testId = RenderRegistry.getNextAvailableRenderId();
GameRegistry.registerBlock(test, "test");
RenderRegistry.registerBlockHandler(new RenderExample());
RenderRegistry.registerTextureHandler((ITextureHandler) test);
}
Minecraft mc = Minecraft.getMinecraft();
// Prerequisite
ModelManager modelManager = ObfuscationReflectionHelper
.getPrivateValue(Minecraft.class, mc, "aL", "field_175617_aL",
"modelManager");
RenderManager renderManager = mc.getRenderManager();
IReloadableResourceManager resourceManager = ((IReloadableResourceManager) mc
.getResourceManager());
// Render Item Hook
RenderItem item = new RenderItemISBRH(mc.getTextureManager(),
modelManager, mc.getRenderItem());
ObfuscationReflectionHelper.setPrivateValue(Minecraft.class, mc, item,
"X", "field_175621_X", "renderItem");
ObfuscationReflectionHelper.setPrivateValue(Minecraft.class, mc,
new ItemRenderer(mc), "Y", "field_175620_Y", "itemRenderer");
renderManager.entityRenderMap.remove(EntityItem.class);
renderManager.entityRenderMap.put(EntityItem.class,
new RenderEntityItem(renderManager, item));
renderManager.entityRenderMap.remove(EntityItemFrame.class);
renderManager.entityRenderMap.put(EntityItemFrame.class,
new RenderItemFrame(renderManager, item));
mc.entityRenderer = new EntityRenderer(mc, resourceManager);
// Render Block Dispatcher Hook
BlockRendererDispatcher rendererDispatcher = new ISBRHDispatcher(
mc.getBlockRendererDispatcher(), modelManager.getBlockModelShapes(), mc.gameSettings);
ObfuscationReflectionHelper.setPrivateValue(Minecraft.class, mc,
rendererDispatcher, "aM", "field_175618_aM",
"blockRenderDispatcher");
// Register Reload Listeners
resourceManager.registerReloadListener(rendererDispatcher);
resourceManager.registerReloadListener(item);
resourceManager.registerReloadListener(mc.entityRenderer);
}
ISBRH.java 文件源码
java
阅读 17
收藏 0
点赞 0
评论 0
项目:ISBRH
作者:
评论列表
文章目录