Fixed piston rendering (WorldRenderer offset wasn't applied); fixed TESR being registered too early in one of the debug mods.

This commit is contained in:
RainWarrior 2015-10-27 19:02:22 +03:00
parent ef2bcb056d
commit 6b10b41b02
3 changed files with 15 additions and 11 deletions

View File

@ -141,9 +141,9 @@ public class VertexLighterFlat extends QuadGatheringTransformer
case POSITION:
float[] pos = new float[4];
System.arraycopy(position[v], 0, pos, 0, position[v].length);
pos[0] += (blockInfo.getBlockPos().getX() & 0xF);
pos[1] += (blockInfo.getBlockPos().getY() & 0xF);
pos[2] += (blockInfo.getBlockPos().getZ() & 0xF);
pos[0] += blockInfo.getBlockPos().getX();
pos[1] += blockInfo.getBlockPos().getY();
pos[2] += blockInfo.getBlockPos().getZ();
parent.put(e, pos);
break;
case NORMAL: if(normalIndex != -1)

View File

@ -36,7 +36,7 @@ public class WorldRendererConsumer implements IVertexConsumer
if(v == 4)
{
renderer.addVertexData(quadData);
renderer.checkAndGrow();
renderer.putPosition(0, 0, 0);
Arrays.fill(quadData, 0);
v = 0;
}

View File

@ -2,11 +2,8 @@ package net.minecraftforge.debug;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.client.resources.model.IBakedModel;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
@ -16,13 +13,11 @@ import net.minecraftforge.client.ForgeHooksClient;
import net.minecraftforge.client.event.ModelBakeEvent;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.debug.ModelBakeEventDebug.BakeEventHandler;
import net.minecraftforge.debug.ModelBakeEventDebug.ClientProxy;
import net.minecraftforge.debug.ModelBakeEventDebug.CustomModel;
import net.minecraftforge.fml.client.registry.ClientRegistry;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry;
@ -41,6 +36,9 @@ public class ItemTileDebug
@EventHandler
public void preInit(FMLPreInitializationEvent event) { proxy.preInit(event); }
@EventHandler
public void init(FMLInitializationEvent event) { proxy.init(event); }
public static class CommonProxy
{
public void preInit(FMLPreInitializationEvent event)
@ -48,6 +46,8 @@ public class ItemTileDebug
GameRegistry.registerBlock(TestBlock.instance, TestBlock.name);
GameRegistry.registerTileEntity(CustomTileEntity.class, MODID.toLowerCase() + ":custom_tile_entity");
}
public void init(FMLInitializationEvent event) {}
}
public static class ClientProxy extends CommonProxy
@ -58,12 +58,16 @@ public class ItemTileDebug
public void preInit(FMLPreInitializationEvent event)
{
super.preInit(event);
ClientRegistry.bindTileEntitySpecialRenderer(CustomTileEntity.class, TestTESR.instance);
Item item = Item.getItemFromBlock(TestBlock.instance);
ForgeHooksClient.registerTESRItemStack(item, 0, CustomTileEntity.class);
ModelLoader.setCustomModelResourceLocation(item, 0, itemLocation);
MinecraftForge.EVENT_BUS.register(BakeEventHandler.instance);
}
@Override
public void init(FMLInitializationEvent event) {
ClientRegistry.bindTileEntitySpecialRenderer(CustomTileEntity.class, TestTESR.instance);
}
}
public static class BakeEventHandler