@SubscribeEvent
public void onPlayerRender(RenderPlayerEvent.Post event) {
EntityPlayer player = event.getEntityPlayer();
float delta = event.getPartialRenderTick();
boolean iWalked = new Vec3d(player.posX, player.posY, player.posZ).distanceTo(new Vec3d(player.prevPosX, player.prevPosY, player.prevPosZ)) > 0.15;
if (!player.isInvisible() && ((player.getActivePotionEffect(ModPotions.VANISH) != null && iWalked) || player.getActivePotionEffect(ModPotions.VANISH) == null))
if (delta < 1) { // not rendering in inventory
double x = -TileEntityRendererDispatcher.staticPlayerX;
double y = -TileEntityRendererDispatcher.staticPlayerY;
double z = -TileEntityRendererDispatcher.staticPlayerZ;
instance().getCape(player).render(player, x, y, z, delta);
}
}
java类net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher的实例源码
CapeHandler.java 文件源码
项目:Wizardry
阅读 36
收藏 0
点赞 0
评论 0
SignPicRender.java 文件源码
项目:SignPicture
阅读 28
收藏 0
点赞 0
评论 0
@CoreEvent
public void onRender(final @Nonnull RenderWorldLastEvent event) {
float opacity = Config.getConfig().renderPreviewFixedOpacity.get().floatValue();
if (CurrentMode.instance.isMode(CurrentMode.Mode.SETPREVIEW)||CurrentMode.instance.isMode(CurrentMode.Mode.PLACE)) {
Sign.preview.capturePlace();
opacity = Config.getConfig().renderPreviewFloatedOpacity.get().floatValue();
}
if (CurrentMode.instance.isState(CurrentMode.State.PREVIEW))
if (Sign.preview.isRenderable()&&Sign.preview.isVisible()) {
final TileEntitySign tile = Sign.preview.getRenderTileEntity();
Client.renderer.renderSignPictureBase(tile, tile.xCoord-TileEntityRendererDispatcher.staticPlayerX, tile.yCoord-TileEntityRendererDispatcher.staticPlayerY, tile.zCoord-TileEntityRendererDispatcher.staticPlayerZ, event.partialTicks, opacity);
}
}
ChestMimicRenderer.java 文件源码
项目:Aether-Legacy
阅读 21
收藏 0
点赞 0
评论 0
public void renderTileEntityAt(TileEntityChest te, double x, double y, double z, float partialTicks, int destroyStage)
{
if (te == null)
{
TileEntityRendererDispatcher.instance.renderTileEntityAt(new TileEntityChestMimic(), 0, 0, 0, 0);
return;
}
super.renderTileEntityAt(te, x, y, z, partialTicks, destroyStage);
}
ClientRenderUtils.java 文件源码
项目:InspiringWorld
阅读 20
收藏 0
点赞 0
评论 0
public static Vector3d getRealPositionX(BlockPos pos)
{
Vector3d vector3d = new Vector3d();
vector3d.x = pos.getX() - TileEntityRendererDispatcher.staticPlayerX;
vector3d.y = pos.getY() - TileEntityRendererDispatcher.staticPlayerY;
vector3d.z = pos.getZ() - TileEntityRendererDispatcher.staticPlayerZ;
return vector3d;
}
RenderTileEnderChest.java 文件源码
项目:EnderStorage
阅读 18
收藏 0
点赞 0
评论 0
public static void renderChest(int rotation, Frequency freq, double x, double y, double z, int offset, float lidAngle) {
TileEntityRendererDispatcher info = TileEntityRendererDispatcher.instance;
CCRenderState ccrs = CCRenderState.instance();
ccrs.reset();
renderEndPortal.render(x, y, z, 0, info.entityX, info.entityY, info.entityZ, info.renderEngine);
GlStateManager.color(1, 1, 1, 1);
TextureUtils.changeTexture("enderstorage:textures/enderchest.png");
GlStateManager.pushMatrix();
GlStateManager.enableRescaleNormal();
GlStateManager.color(1, 1, 1, 1);
GlStateManager.translate(x, y + 1.0, z + 1.0F);
GlStateManager.scale(1.0F, -1F, -1F);
GlStateManager.translate(0.5F, 0.5F, 0.5F);
GlStateManager.rotate(rotation * 90, 0.0F, 1.0F, 0.0F);
GlStateManager.translate(-0.5F, -0.5F, -0.5F);
model.chestLid.rotateAngleX = lidAngle;
model.render(freq.hasOwner());
GlStateManager.popMatrix();
GlStateManager.pushMatrix();
GlStateManager.translate(x, y, z);
renderButtons(freq, rotation, lidAngle);
GlStateManager.popMatrix();
double time = ClientUtils.getRenderTime() + offset;
Matrix4 pearlMat = RenderUtils.getMatrix(new Vector3(x + 0.5, y + 0.2 + lidAngle * -0.5 + RenderUtils.getPearlBob(time), z + 0.5), new Rotation(time / 3, new Vector3(0, 1, 0)), 0.04);
GlStateManager.disableLighting();
TextureUtils.changeTexture("enderstorage:textures/hedronmap.png");
GlStateManager.pushMatrix();
ccrs.startDrawing(7, DefaultVertexFormats.POSITION_TEX_COLOR_NORMAL);
CCModelLibrary.icosahedron7.render(ccrs, pearlMat);
ccrs.draw();
GlStateManager.popMatrix();
GlStateManager.enableLighting();
}
RenderTileEnderTank.java 文件源码
项目:EnderStorage
阅读 25
收藏 0
点赞 0
评论 0
public static void renderTank(CCRenderState ccrs, int rotation, float valve, Frequency freq, double x, double y, double z, int offset) {
ccrs.reset();
TileEntityRendererDispatcher info = TileEntityRendererDispatcher.instance;
renderEndPortal.render(x, y, z, 0, info.entityX, info.entityY, info.entityZ, info.renderEngine);
GlStateManager.color(1, 1, 1, 1);
GlStateManager.pushMatrix();
GlStateManager.translate(x + 0.5, y, z + 0.5);
GlStateManager.rotate(-90 * (rotation + 2), 0, 1, 0);
TextureUtils.changeTexture("enderstorage:textures/endertank.png");
ccrs.startDrawing(4, POSITION_TEX_COLOR_NORMAL);
tankModel.render(ccrs);
valveModel.render(ccrs, new Rotation(valve, new Vector3(0, 0, 1)).at(new Vector3(0, 0.4165, 0)), new UVTranslation(0, freq.hasOwner() ? 13 / 64D : 0));
ccrs.draw();
TextureUtils.changeTexture("enderstorage:textures/buttons.png");
ccrs.startDrawing(7, POSITION_TEX_COLOR_NORMAL);
EnumColour[] colours = freq.toArray();
for (int i = 0; i < 3; i++) {
buttons[i].render(ccrs, new UVTranslation(0.25 * (colours[i].getWoolMeta() % 4), 0.25 * (colours[i].getWoolMeta() / 4)));
}
ccrs.draw();
GlStateManager.popMatrix();
double time = ClientUtils.getRenderTime() + offset;
Matrix4 pearlMat = RenderUtils.getMatrix(new Vector3(x + 0.5, y + 0.45 + RenderUtils.getPearlBob(time) * 2, z + 0.5), new Rotation(time / 3, new Vector3(0, 1, 0)), 0.04);
GlStateManager.disableLighting();
TextureUtils.changeTexture("enderstorage:textures/hedronmap.png");
ccrs.startDrawing(4, POSITION_TEX_COLOR_NORMAL);
CCModelLibrary.icosahedron4.render(ccrs, pearlMat);
ccrs.draw();
GlStateManager.enableLighting();
ccrs.reset();
}
MultiblockRenderer.java 文件源码
项目:Toms-Mod
阅读 21
收藏 0
点赞 0
评论 0
public static <T extends TileEntity> void registerTESR(Block controller, int id, MultiblockRenderer<T> renderer) {
if (!TESR_REGISTRY.containsKey(controller)) {
TESR_REGISTRY.put(controller, new HashMap<>());
}
renderer.setRendererDispatcher(TileEntityRendererDispatcher.instance);
TESR_REGISTRY.get(controller).put(id, renderer);
}
MultiblockRenderer.java 文件源码
项目:Toms-Mod
阅读 24
收藏 0
点赞 0
评论 0
public static void drawNameplate(BlockPos pos, String str, double x, double y, double z, int maxDistance) {
Entity entity = TileEntityRendererDispatcher.instance.entity;
double d0 = pos.distanceSq(entity.posX, entity.posY, entity.posZ);
if (d0 <= maxDistance * maxDistance) {
float f = TileEntityRendererDispatcher.instance.entityYaw;
float f1 = TileEntityRendererDispatcher.instance.entityPitch;
EntityRenderer.drawNameplate(Minecraft.getMinecraft().fontRenderer, str, (float) x + 0.5F, (float) y + 1.5F, (float) z + 0.5F, 0, f, f1, false, false);
}
}
RenderingRadarHandler.java 文件源码
项目:OpenTechnology
阅读 23
收藏 0
点赞 0
评论 0
@Override
public void renderInventoryBlock(Block block, int metadata, int modelID, RenderBlocks renderer) {
GL11.glRotatef(-90.0F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(-0.5F, -0.5F, -0.5F);
if (block == Blocks.radar) {
TileEntityRendererDispatcher.instance.renderTileEntityAt(new TileEntityRadar(), 0.0D, 0.0D, 0.0D, 0.0F);
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
}
}
RenderDimensionSliceEntity.java 文件源码
项目:Factorization
阅读 19
收藏 0
点赞 0
评论 0
void renderDamage(World world, DestroyBlockProgress damage, TextureAtlasSprite[] icons, BlockRendererDispatcher brd, float partial) {
IBlockState bs = world.getBlockState(damage.getPosition());
Block block = bs.getBlock();
if (block.getMaterial() == Material.air) return;
int dmg = damage.getPartialBlockDamage();
brd.renderBlockDamage(bs, damage.getPosition(), icons[dmg], world);
if (block.hasTileEntity(bs)) {
TileEntity te = world.getTileEntity(damage.getPosition());
TileEntityRendererDispatcher.instance.renderTileEntity(te, partial, damage.getPartialBlockDamage());
}
}