Fix tile entity render in hand
This commit is contained in:
parent
9fdaf26e99
commit
a49d01f170
|
|
@ -12,6 +12,7 @@ import net.minecraft.client.gui.inventory.GuiContainer;
|
||||||
import net.minecraft.client.model.ModelPlayer;
|
import net.minecraft.client.model.ModelPlayer;
|
||||||
import net.minecraft.client.model.ModelRenderer;
|
import net.minecraft.client.model.ModelRenderer;
|
||||||
import net.minecraft.client.renderer.GlStateManager;
|
import net.minecraft.client.renderer.GlStateManager;
|
||||||
|
import net.minecraft.client.renderer.OpenGlHelper;
|
||||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||||
import net.minecraft.client.renderer.entity.RenderManager;
|
import net.minecraft.client.renderer.entity.RenderManager;
|
||||||
import net.minecraft.client.renderer.entity.RenderPlayer;
|
import net.minecraft.client.renderer.entity.RenderPlayer;
|
||||||
|
|
@ -27,6 +28,7 @@ import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.client.event.GuiOpenEvent;
|
import net.minecraftforge.client.event.GuiOpenEvent;
|
||||||
import net.minecraftforge.client.event.MouseEvent;
|
import net.minecraftforge.client.event.MouseEvent;
|
||||||
|
|
@ -43,12 +45,8 @@ import tschipp.carryon.client.keybinds.CarryOnKeybinds;
|
||||||
import tschipp.carryon.common.config.CarryOnConfig;
|
import tschipp.carryon.common.config.CarryOnConfig;
|
||||||
import tschipp.carryon.common.handler.ModelOverridesHandler;
|
import tschipp.carryon.common.handler.ModelOverridesHandler;
|
||||||
import tschipp.carryon.common.handler.RegistrationHandler;
|
import tschipp.carryon.common.handler.RegistrationHandler;
|
||||||
import tschipp.carryon.common.helper.ScriptParseHelper;
|
|
||||||
import tschipp.carryon.common.helper.StringParser;
|
|
||||||
import tschipp.carryon.common.item.ItemEntity;
|
import tschipp.carryon.common.item.ItemEntity;
|
||||||
import tschipp.carryon.common.item.ItemTile;
|
import tschipp.carryon.common.item.ItemTile;
|
||||||
import tschipp.carryon.common.scripting.CarryOnOverride;
|
|
||||||
import tschipp.carryon.common.scripting.ScriptChecker;
|
|
||||||
import tschipp.carryon.network.server.SyncKeybindPacket;
|
import tschipp.carryon.network.server.SyncKeybindPacket;
|
||||||
|
|
||||||
public class RenderEvents
|
public class RenderEvents
|
||||||
|
|
@ -66,16 +64,18 @@ public class RenderEvents
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void onScroll(MouseEvent event)
|
public void onScroll(MouseEvent event)
|
||||||
{
|
{
|
||||||
if (event.getDwheel() > 0 || event.getDwheel() < 0)
|
if (event.getDwheel() > 0 || event.getDwheel() < 0 || Minecraft.getMinecraft().gameSettings.keyBindPickBlock.isPressed())
|
||||||
{
|
{
|
||||||
ItemStack stack = Minecraft.getMinecraft().player.getHeldItemMainhand();
|
ItemStack stack = Minecraft.getMinecraft().player.getHeldItemMainhand();
|
||||||
|
|
||||||
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile)
|
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile)
|
||||||
{
|
{
|
||||||
if (ItemTile.hasTileData(stack))
|
if (ItemTile.hasTileData(stack))
|
||||||
|
{
|
||||||
event.setCanceled(true);
|
event.setCanceled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
|
|
@ -83,9 +83,9 @@ public class RenderEvents
|
||||||
public void onPlayerTick(PlayerTickEvent event) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException
|
public void onPlayerTick(PlayerTickEvent event) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException
|
||||||
{
|
{
|
||||||
EntityPlayer player = event.player;
|
EntityPlayer player = event.player;
|
||||||
|
|
||||||
if (player != null && event.side == Side.CLIENT)
|
if (player != null && event.side == Side.CLIENT)
|
||||||
{
|
{
|
||||||
|
|
||||||
boolean keyPressed = CarryOnKeybinds.carryKey.isKeyDown();
|
boolean keyPressed = CarryOnKeybinds.carryKey.isKeyDown();
|
||||||
boolean playerKeyPressed = CarryOnKeybinds.isKeyPressed(player);
|
boolean playerKeyPressed = CarryOnKeybinds.isKeyPressed(player);
|
||||||
|
|
||||||
|
|
@ -99,7 +99,6 @@ public class RenderEvents
|
||||||
CarryOnKeybinds.setKeyPressed(player, false);
|
CarryOnKeybinds.setKeyPressed(player, false);
|
||||||
CarryOn.network.sendToServer(new SyncKeybindPacket(false));
|
CarryOn.network.sendToServer(new SyncKeybindPacket(false));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -114,9 +113,11 @@ public class RenderEvents
|
||||||
{
|
{
|
||||||
boolean inventory = event.getGui() instanceof GuiContainer;
|
boolean inventory = event.getGui() instanceof GuiContainer;
|
||||||
EntityPlayer player = Minecraft.getMinecraft().player;
|
EntityPlayer player = Minecraft.getMinecraft().player;
|
||||||
|
|
||||||
if (player != null)
|
if (player != null)
|
||||||
{
|
{
|
||||||
ItemStack stack = player.getHeldItem(EnumHand.MAIN_HAND);
|
ItemStack stack = player.getHeldItem(EnumHand.MAIN_HAND);
|
||||||
|
|
||||||
if (inventory && !stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
if (inventory && !stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
||||||
{
|
{
|
||||||
event.setCanceled(true);
|
event.setCanceled(true);
|
||||||
|
|
@ -138,6 +139,7 @@ public class RenderEvents
|
||||||
field.setAccessible(true);
|
field.setAccessible(true);
|
||||||
ItemStack stack = Minecraft.getMinecraft().player.getHeldItemMainhand();
|
ItemStack stack = Minecraft.getMinecraft().player.getHeldItemMainhand();
|
||||||
EntityPlayer player = Minecraft.getMinecraft().player;
|
EntityPlayer player = Minecraft.getMinecraft().player;
|
||||||
|
|
||||||
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
||||||
{
|
{
|
||||||
if (settings.keyBindDrop.isPressed())
|
if (settings.keyBindDrop.isPressed())
|
||||||
|
|
@ -155,14 +157,14 @@ public class RenderEvents
|
||||||
field.set(keyBind, false);
|
field.set(keyBind, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int current = player.inventory.currentItem;
|
int current = player.inventory.currentItem;
|
||||||
|
|
||||||
if (player.getEntityData().hasKey("carrySlot") ? player.getEntityData().getInteger("carrySlot") != current : false)
|
if (player.getEntityData().hasKey("carrySlot") ? player.getEntityData().getInteger("carrySlot") != current : false)
|
||||||
|
{
|
||||||
player.inventory.currentItem = player.getEntityData().getInteger("carrySlot");
|
player.inventory.currentItem = player.getEntityData().getInteger("carrySlot");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -181,7 +183,6 @@ public class RenderEvents
|
||||||
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
||||||
{
|
{
|
||||||
Block block = ItemTile.getBlock(stack);
|
Block block = ItemTile.getBlock(stack);
|
||||||
BlockPos pos = player.getPosition();
|
|
||||||
NBTTagCompound tag = ItemTile.getTileData(stack);
|
NBTTagCompound tag = ItemTile.getTileData(stack);
|
||||||
IBlockState state = ItemTile.getBlockState(stack);
|
IBlockState state = ItemTile.getBlockState(stack);
|
||||||
ItemStack tileStack = ItemTile.getItemStack(stack);
|
ItemStack tileStack = ItemTile.getItemStack(stack);
|
||||||
|
|
@ -196,53 +197,48 @@ public class RenderEvents
|
||||||
GlStateManager.rotate(-8, 1f, 0, 0);
|
GlStateManager.rotate(-8, 1f, 0, 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
GlStateManager.rotate(8, 1f, 0, 0);
|
GlStateManager.rotate(8, 1f, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
if (perspective == 0)
|
if (perspective == 0)
|
||||||
{
|
{
|
||||||
IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileStack, world, player);
|
IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileStack, world, player);
|
||||||
|
|
||||||
CarryOnOverride carryOverride = ScriptChecker.inspectBlock(state, world, pos, tag);
|
|
||||||
if (carryOverride != null)
|
|
||||||
{
|
|
||||||
double[] translation = ScriptParseHelper.getXYZArray(carryOverride.getRenderTranslation());
|
|
||||||
double[] rotation = ScriptParseHelper.getXYZArray(carryOverride.getRenderRotation());
|
|
||||||
double[] scale = ScriptParseHelper.getScale(carryOverride.getRenderScale());
|
|
||||||
Block b = StringParser.getBlock(carryOverride.getRenderNameBlock());
|
|
||||||
if (b != null)
|
|
||||||
{
|
|
||||||
ItemStack s = new ItemStack(b, 1, carryOverride.getRenderMeta());
|
|
||||||
s.setTagCompound(carryOverride.getRenderNBT());
|
|
||||||
model = Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(s, world, player);
|
|
||||||
}
|
|
||||||
|
|
||||||
GlStateManager.translate(translation[0], translation[1], translation[2]);
|
|
||||||
GlStateManager.rotate((float) rotation[0], 1, 0, 0);
|
|
||||||
GlStateManager.rotate((float) rotation[1], 0, 1, 0);
|
|
||||||
GlStateManager.rotate((float) rotation[2], 0, 0, 1);
|
|
||||||
GlStateManager.scale(scale[0], scale[1], scale[2]);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ModelOverridesHandler.hasCustomOverrideModel(state, tag))
|
if (ModelOverridesHandler.hasCustomOverrideModel(state, tag))
|
||||||
{
|
{
|
||||||
Object override = ModelOverridesHandler.getOverrideObject(state, tag);
|
Object override = ModelOverridesHandler.getOverrideObject(state, tag);
|
||||||
|
|
||||||
if (override instanceof ItemStack)
|
if (override instanceof ItemStack)
|
||||||
{
|
{
|
||||||
Minecraft.getMinecraft().getRenderItem().renderItem((ItemStack) override, model);
|
Minecraft.getMinecraft().getRenderItem().renderItem((ItemStack) override, model);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model);
|
Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
int i = this.getBrightnessForRender(Minecraft.getMinecraft().player);
|
||||||
|
int j = i % 65536;
|
||||||
|
int k = i / 65536;
|
||||||
|
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j, k);
|
||||||
|
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
|
this.setLightmapDisabled(false);
|
||||||
Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model);
|
Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model);
|
||||||
|
this.setLightmapDisabled(true);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
GlStateManager.scale(1, 1, 1);
|
GlStateManager.scale(1, 1, 1);
|
||||||
GlStateManager.popMatrix();
|
GlStateManager.popMatrix();
|
||||||
|
|
||||||
if (perspective == 0)
|
if (perspective == 0)
|
||||||
|
{
|
||||||
event.setCanceled(true);
|
event.setCanceled(true);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (stack.isEmpty() ? true : stack.getItem() != RegistrationHandler.itemEntity)
|
if (stack.isEmpty() ? true : stack.getItem() != RegistrationHandler.itemEntity)
|
||||||
|
|
@ -260,6 +256,39 @@ public class RenderEvents
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
private int getBrightnessForRender(EntityPlayer player)
|
||||||
|
{
|
||||||
|
BlockPos.MutableBlockPos blockpos$mutableblockpos = new BlockPos.MutableBlockPos(MathHelper.floor(player.posX), 0, MathHelper.floor(player.posZ));
|
||||||
|
|
||||||
|
if (player.world.isBlockLoaded(blockpos$mutableblockpos))
|
||||||
|
{
|
||||||
|
blockpos$mutableblockpos.setY(MathHelper.floor(player.posY + player.getEyeHeight()));
|
||||||
|
return player.world.getCombinedLight(blockpos$mutableblockpos, 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
private void setLightmapDisabled(boolean disabled)
|
||||||
|
{
|
||||||
|
GlStateManager.setActiveTexture(OpenGlHelper.lightmapTexUnit);
|
||||||
|
|
||||||
|
if (disabled)
|
||||||
|
{
|
||||||
|
GlStateManager.disableTexture2D();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GlStateManager.enableTexture2D();
|
||||||
|
}
|
||||||
|
|
||||||
|
GlStateManager.setActiveTexture(OpenGlHelper.defaultTexUnit);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Renders the Block in Third Person
|
* Renders the Block in Third Person
|
||||||
*/
|
*/
|
||||||
|
|
@ -269,28 +298,26 @@ public class RenderEvents
|
||||||
{
|
{
|
||||||
World world = Minecraft.getMinecraft().world;
|
World world = Minecraft.getMinecraft().world;
|
||||||
EntityPlayer player = event.getEntityPlayer();
|
EntityPlayer player = event.getEntityPlayer();
|
||||||
ModelPlayer modelPlayer = event.getRenderer().getMainModel();
|
|
||||||
EntityPlayerSP clientPlayer = Minecraft.getMinecraft().player;
|
EntityPlayerSP clientPlayer = Minecraft.getMinecraft().player;
|
||||||
ItemStack stack = player.getHeldItemMainhand();
|
ItemStack stack = player.getHeldItemMainhand();
|
||||||
float partialticks = event.getPartialRenderTick();
|
float partialticks = event.getPartialRenderTick();
|
||||||
|
|
||||||
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
|
||||||
{
|
{
|
||||||
Block block = ItemTile.getBlock(stack);
|
Block block = ItemTile.getBlock(stack);
|
||||||
IBlockState state = ItemTile.getBlockState(stack);
|
IBlockState state = ItemTile.getBlockState(stack);
|
||||||
NBTTagCompound tag = ItemTile.getTileData(stack);
|
NBTTagCompound tag = ItemTile.getTileData(stack);
|
||||||
|
|
||||||
ItemStack tileItem = ItemTile.getItemStack(stack);
|
ItemStack tileItem = ItemTile.getItemStack(stack);
|
||||||
|
|
||||||
float rotation = -(player.prevRenderYawOffset + (player.renderYawOffset - player.prevRenderYawOffset) * partialticks);
|
float rotation = -(player.prevRenderYawOffset + (player.renderYawOffset - player.prevRenderYawOffset) * partialticks);
|
||||||
int perspective = Minecraft.getMinecraft().gameSettings.thirdPersonView;
|
|
||||||
|
|
||||||
double d0 = player.lastTickPosX + (player.posX - player.lastTickPosX) * (double) partialticks;
|
double d0 = player.lastTickPosX + (player.posX - player.lastTickPosX) * partialticks;
|
||||||
double d1 = player.lastTickPosY + (player.posY - player.lastTickPosY) * (double) partialticks;
|
double d1 = player.lastTickPosY + (player.posY - player.lastTickPosY) * partialticks;
|
||||||
double d2 = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * (double) partialticks;
|
double d2 = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * partialticks;
|
||||||
|
|
||||||
double c0 = clientPlayer.lastTickPosX + (clientPlayer.posX - clientPlayer.lastTickPosX) * (double) partialticks;
|
double c0 = clientPlayer.lastTickPosX + (clientPlayer.posX - clientPlayer.lastTickPosX) * partialticks;
|
||||||
double c1 = clientPlayer.lastTickPosY + (clientPlayer.posY - clientPlayer.lastTickPosY) * (double) partialticks;
|
double c1 = clientPlayer.lastTickPosY + (clientPlayer.posY - clientPlayer.lastTickPosY) * partialticks;
|
||||||
double c2 = clientPlayer.lastTickPosZ + (clientPlayer.posZ - clientPlayer.lastTickPosZ) * (double) partialticks;
|
double c2 = clientPlayer.lastTickPosZ + (clientPlayer.posZ - clientPlayer.lastTickPosZ) * partialticks;
|
||||||
|
|
||||||
double xOffset = d0 - c0;
|
double xOffset = d0 - c0;
|
||||||
double yOffset = d1 - c1;
|
double yOffset = d1 - c1;
|
||||||
|
|
@ -312,50 +339,33 @@ public class RenderEvents
|
||||||
}
|
}
|
||||||
|
|
||||||
if (player.isSneaking())
|
if (player.isSneaking())
|
||||||
|
{
|
||||||
GlStateManager.translate(0, -0.3, 0);
|
GlStateManager.translate(0, -0.3, 0);
|
||||||
|
}
|
||||||
|
|
||||||
IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileItem, world, player);
|
IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileItem, world, player);
|
||||||
|
|
||||||
CarryOnOverride carryOverride = ScriptChecker.inspectBlock(state, world, player.getPosition(), tag);
|
|
||||||
if (carryOverride != null)
|
|
||||||
{
|
|
||||||
double[] translation = ScriptParseHelper.getXYZArray(carryOverride.getRenderTranslation());
|
|
||||||
double[] rot = ScriptParseHelper.getXYZArray(carryOverride.getRenderRotation());
|
|
||||||
double[] scale = ScriptParseHelper.getScale(carryOverride.getRenderScale());
|
|
||||||
Block b = StringParser.getBlock(carryOverride.getRenderNameBlock());
|
|
||||||
if (b != null)
|
|
||||||
{
|
|
||||||
ItemStack s = new ItemStack(b, 1, carryOverride.getRenderMeta());
|
|
||||||
s.setTagCompound(carryOverride.getRenderNBT());
|
|
||||||
model = Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(s, world, player);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
GlStateManager.translate(translation[0], translation[1], translation[2]);
|
|
||||||
GlStateManager.rotate((float) rot[0], 1, 0, 0);
|
|
||||||
GlStateManager.rotate((float) rot[1], 0, 1, 0);
|
|
||||||
GlStateManager.rotate((float) rot[2], 0, 0, 1);
|
|
||||||
GlStateManager.scale(scale[0], scale[1], scale[2]);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ModelOverridesHandler.hasCustomOverrideModel(state, tag))
|
if (ModelOverridesHandler.hasCustomOverrideModel(state, tag))
|
||||||
{
|
{
|
||||||
Object override = ModelOverridesHandler.getOverrideObject(state, tag);
|
Object override = ModelOverridesHandler.getOverrideObject(state, tag);
|
||||||
|
|
||||||
if (override instanceof ItemStack)
|
if (override instanceof ItemStack)
|
||||||
{
|
{
|
||||||
Minecraft.getMinecraft().getRenderItem().renderItem((ItemStack) override, model);
|
Minecraft.getMinecraft().getRenderItem().renderItem((ItemStack) override, model);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
Minecraft.getMinecraft().getRenderItem().renderItem(tileItem.isEmpty() ? stack : tileItem, model);
|
Minecraft.getMinecraft().getRenderItem().renderItem(tileItem.isEmpty() ? stack : tileItem, model);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
Minecraft.getMinecraft().getRenderItem().renderItem(tileItem.isEmpty() ? stack : tileItem, model);
|
Minecraft.getMinecraft().getRenderItem().renderItem(tileItem.isEmpty() ? stack : tileItem, model);
|
||||||
GlStateManager.scale(1, 1, 1);
|
|
||||||
|
|
||||||
GlStateManager.popMatrix();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GlStateManager.scale(1, 1, 1);
|
||||||
|
GlStateManager.popMatrix();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -375,30 +385,29 @@ public class RenderEvents
|
||||||
|
|
||||||
if (!initModels)
|
if (!initModels)
|
||||||
{
|
{
|
||||||
fakeLeftArm = new ModelRenderer(model, 32, 48);
|
this.fakeLeftArm = new ModelRenderer(model, 32, 48);
|
||||||
fakeRightArm = new ModelRenderer(model, 40, 16);
|
this.fakeRightArm = new ModelRenderer(model, 40, 16);
|
||||||
fakeLeftArmwear = new ModelRenderer(model, 48, 48);
|
this.fakeLeftArmwear = new ModelRenderer(model, 48, 48);
|
||||||
fakeRightArmwear = new ModelRenderer(model, 40, 32);
|
this.fakeRightArmwear = new ModelRenderer(model, 40, 32);
|
||||||
initModels = true;
|
initModels = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
player.setArrowCountInEntity(0); // TODO Temporary Fix
|
player.setArrowCountInEntity(0); // TODO Temporary Fix
|
||||||
|
|
||||||
if (!stack.isEmpty() && (stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) || (stack.getItem() == RegistrationHandler.itemEntity && ItemEntity.hasEntityData(stack)))
|
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack) || stack.getItem() == RegistrationHandler.itemEntity && ItemEntity.hasEntityData(stack))
|
||||||
{
|
{
|
||||||
if (model.bipedBody.childModels != null && !model.bipedBody.childModels.isEmpty())
|
if (model.bipedBody.childModels != null && !model.bipedBody.childModels.isEmpty())
|
||||||
{
|
{
|
||||||
|
|
||||||
for (int k = 0; k < model.bipedBody.childModels.size(); k++)
|
for (int k = 0; k < model.bipedBody.childModels.size(); k++)
|
||||||
{
|
{
|
||||||
float chkRot = model.bipedBody.childModels.get(k).rotateAngleX;
|
float chkRot = model.bipedBody.childModels.get(k).rotateAngleX;
|
||||||
|
|
||||||
if (chkRot == -0.9001F || chkRot == -1.2001F || chkRot == -1.4001F || chkRot == -1.7001F)
|
if (chkRot == -0.9001F || chkRot == -1.2001F || chkRot == -1.4001F || chkRot == -1.7001F)
|
||||||
{
|
{
|
||||||
model.bipedBody.childModels.remove(k);
|
model.bipedBody.childModels.remove(k);
|
||||||
k = k - 1;
|
k = k - 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Item item = stack.getItem();
|
Item item = stack.getItem();
|
||||||
|
|
@ -409,82 +418,80 @@ public class RenderEvents
|
||||||
model.bipedRightArmwear.isHidden = true;
|
model.bipedRightArmwear.isHidden = true;
|
||||||
|
|
||||||
Minecraft.getMinecraft().getTextureManager().bindTexture(skinLoc);
|
Minecraft.getMinecraft().getTextureManager().bindTexture(skinLoc);
|
||||||
float rotation = -player.renderYawOffset;
|
|
||||||
|
|
||||||
if (aplayer.getSkinType().equals("default"))
|
if (aplayer.getSkinType().equals("default"))
|
||||||
{
|
{
|
||||||
fakeLeftArm.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 4, 12, 4, .08F);
|
this.fakeLeftArm.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 4, 12, 4, .08F);
|
||||||
fakeLeftArmwear.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 4, 12, 4, .08F + 0.25F);
|
this.fakeLeftArmwear.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 4, 12, 4, .08F + 0.25F);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fakeLeftArm.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 3, 12, 4, .08F);
|
this.fakeLeftArm.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 3, 12, 4, .08F);
|
||||||
fakeLeftArmwear.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 3, 12, 4, .08F + 0.25F);
|
this.fakeLeftArmwear.addBox(model.bipedLeftArm.offsetX + 4.2F, model.bipedLeftArm.offsetY, model.bipedLeftArm.offsetZ, 3, 12, 4, .08F + 0.25F);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (aplayer.getSkinType().equals("default"))
|
if (aplayer.getSkinType().equals("default"))
|
||||||
{
|
{
|
||||||
fakeRightArm.addBox(model.bipedRightArm.offsetX - 7.9F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 4, 12, 4, .08F);
|
this.fakeRightArm.addBox(model.bipedRightArm.offsetX - 7.9F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 4, 12, 4, .08F);
|
||||||
fakeRightArmwear.addBox(model.bipedRightArm.offsetX - 7.9F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 4, 12, 4, .08F + 0.25F);
|
this.fakeRightArmwear.addBox(model.bipedRightArm.offsetX - 7.9F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 4, 12, 4, .08F + 0.25F);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fakeRightArm.addBox(model.bipedRightArm.offsetX - 7.2F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 3, 12, 4, .08F);
|
this.fakeRightArm.addBox(model.bipedRightArm.offsetX - 7.2F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 3, 12, 4, .08F);
|
||||||
fakeRightArmwear.addBox(model.bipedRightArm.offsetX - 7.2F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 3, 12, 4, .08F + 0.25F);
|
this.fakeRightArmwear.addBox(model.bipedRightArm.offsetX - 7.2F, model.bipedRightArm.offsetY, model.bipedRightArm.offsetZ, 3, 12, 4, .08F + 0.25F);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item == RegistrationHandler.itemTile)
|
if (item == RegistrationHandler.itemTile)
|
||||||
{
|
{
|
||||||
if (!player.isSneaking())
|
if (!player.isSneaking())
|
||||||
{
|
{
|
||||||
fakeRightArm.rotateAngleX = -.9001F;
|
this.fakeRightArm.rotateAngleX = -.9001F;
|
||||||
fakeLeftArm.rotateAngleX = -.9001F;
|
this.fakeLeftArm.rotateAngleX = -.9001F;
|
||||||
fakeLeftArmwear.rotateAngleX = -.9001F;
|
this.fakeLeftArmwear.rotateAngleX = -.9001F;
|
||||||
fakeRightArmwear.rotateAngleX = -.9001F;
|
this.fakeRightArmwear.rotateAngleX = -.9001F;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fakeRightArm.rotateAngleX = -1.4001F;
|
this.fakeRightArm.rotateAngleX = -1.4001F;
|
||||||
fakeLeftArm.rotateAngleX = -1.4001F;
|
this.fakeLeftArm.rotateAngleX = -1.4001F;
|
||||||
fakeLeftArmwear.rotateAngleX = -1.4001F;
|
this.fakeLeftArmwear.rotateAngleX = -1.4001F;
|
||||||
fakeRightArmwear.rotateAngleX = -1.4001F;
|
this.fakeRightArmwear.rotateAngleX = -1.4001F;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!player.isSneaking())
|
if (!player.isSneaking())
|
||||||
{
|
{
|
||||||
fakeRightArm.rotateAngleX = -1.2001F;
|
this.fakeRightArm.rotateAngleX = -1.2001F;
|
||||||
fakeLeftArm.rotateAngleX = -1.2001F;
|
this.fakeLeftArm.rotateAngleX = -1.2001F;
|
||||||
fakeLeftArmwear.rotateAngleX = -1.2001F;
|
this.fakeLeftArmwear.rotateAngleX = -1.2001F;
|
||||||
fakeRightArmwear.rotateAngleX = -1.2001F;
|
this.fakeRightArmwear.rotateAngleX = -1.2001F;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fakeRightArm.rotateAngleX = -1.7001F;
|
this.fakeRightArm.rotateAngleX = -1.7001F;
|
||||||
fakeLeftArm.rotateAngleX = -1.7001F;
|
this.fakeLeftArm.rotateAngleX = -1.7001F;
|
||||||
fakeLeftArmwear.rotateAngleX = -1.7001F;
|
this.fakeLeftArmwear.rotateAngleX = -1.7001F;
|
||||||
fakeRightArmwear.rotateAngleX = -1.7001F;
|
this.fakeRightArmwear.rotateAngleX = -1.7001F;
|
||||||
}
|
}
|
||||||
|
|
||||||
fakeRightArm.rotateAngleY = -0.15f;
|
this.fakeRightArm.rotateAngleY = -0.15f;
|
||||||
fakeLeftArm.rotateAngleY = 0.15f;
|
this.fakeLeftArm.rotateAngleY = 0.15f;
|
||||||
fakeLeftArmwear.rotateAngleY = 0.15f;
|
this.fakeLeftArmwear.rotateAngleY = 0.15f;
|
||||||
fakeRightArmwear.rotateAngleY = -0.15f;
|
this.fakeRightArmwear.rotateAngleY = -0.15f;
|
||||||
|
|
||||||
}
|
}
|
||||||
model.bipedBody.addChild(fakeLeftArm);
|
|
||||||
model.bipedBody.addChild(fakeRightArm);
|
model.bipedBody.addChild(this.fakeLeftArm);
|
||||||
|
model.bipedBody.addChild(this.fakeRightArm);
|
||||||
|
|
||||||
if (player.isWearing(EnumPlayerModelParts.LEFT_SLEEVE))
|
if (player.isWearing(EnumPlayerModelParts.LEFT_SLEEVE))
|
||||||
{
|
{
|
||||||
model.bipedBody.addChild(fakeLeftArmwear);
|
model.bipedBody.addChild(this.fakeLeftArmwear);
|
||||||
}
|
}
|
||||||
if (player.isWearing(EnumPlayerModelParts.RIGHT_SLEEVE))
|
if (player.isWearing(EnumPlayerModelParts.RIGHT_SLEEVE))
|
||||||
{
|
{
|
||||||
model.bipedBody.addChild(fakeRightArmwear);
|
model.bipedBody.addChild(this.fakeRightArmwear);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
@ -498,6 +505,7 @@ public class RenderEvents
|
||||||
for (int k = 0; k < model.bipedBody.childModels.size(); k++)
|
for (int k = 0; k < model.bipedBody.childModels.size(); k++)
|
||||||
{
|
{
|
||||||
float chkRot = model.bipedBody.childModels.get(k).rotateAngleX;
|
float chkRot = model.bipedBody.childModels.get(k).rotateAngleX;
|
||||||
|
|
||||||
if (chkRot == -0.9001F || chkRot == -1.2001F || chkRot == -1.4001F || chkRot == -1.7001F)
|
if (chkRot == -0.9001F || chkRot == -1.2001F || chkRot == -1.4001F || chkRot == -1.7001F)
|
||||||
{
|
{
|
||||||
model.bipedBody.childModels.remove(k);
|
model.bipedBody.childModels.remove(k);
|
||||||
|
|
@ -507,7 +515,7 @@ public class RenderEvents
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stack.isEmpty() || (stack.getItem() != RegistrationHandler.itemTile && stack.getItem() != RegistrationHandler.itemEntity))
|
if (stack.isEmpty() || stack.getItem() != RegistrationHandler.itemTile && stack.getItem() != RegistrationHandler.itemEntity)
|
||||||
{
|
{
|
||||||
model.bipedLeftArm.isHidden = false;
|
model.bipedLeftArm.isHidden = false;
|
||||||
model.bipedRightArm.isHidden = false;
|
model.bipedRightArm.isHidden = false;
|
||||||
|
|
@ -515,7 +523,6 @@ public class RenderEvents
|
||||||
model.bipedRightArmwear.isHidden = false;
|
model.bipedRightArmwear.isHidden = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isChest(Block block)
|
public static boolean isChest(Block block)
|
||||||
|
|
@ -549,5 +556,4 @@ public class RenderEvents
|
||||||
event.setRenderItem(false);
|
event.setRenderItem(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user