Manually fix the problem children

This commit is contained in:
Sollace 2018-08-01 12:16:54 +02:00
parent bf83ff68ae
commit b9231a5bfd
15 changed files with 135 additions and 136 deletions

View file

@ -186,9 +186,7 @@ public final class HDSkinManager implements IResourceManagerReloadListener {
final IImageBuffer imagebufferdownload = type == Type.SKIN ? new ImageBufferDownloadHD() : null; final IImageBuffer imagebufferdownload = type == Type.SKIN ? new ImageBufferDownloadHD() : null;
ITextureObject texObject = new ThreadDownloadImageETag(file2, bustCache(texture.getUrl()), ITextureObject texObject = new ThreadDownloadImageETag(file2, bustCache(texture.getUrl()), DefaultPlayerSkin.getDefaultSkinLegacy(), new IImageBuffer() {
DefaultPlayerSkin.getDefaultSkinLegacy(),
new IImageBuffer() {
@Nonnull @Nonnull
@Override @Override
public BufferedImage parseUserSkin(@Nonnull BufferedImage image) { public BufferedImage parseUserSkin(@Nonnull BufferedImage image) {
@ -279,12 +277,12 @@ public final class HDSkinManager implements IResourceManagerReloadListener {
FileUtils.deleteDirectory(new File(LiteLoader.getAssetsDirectory(), "hd")); FileUtils.deleteDirectory(new File(LiteLoader.getAssetsDirectory(), "hd"));
TextureManager textures = Minecraft.getMinecraft().getTextureManager(); TextureManager textures = Minecraft.getMinecraft().getTextureManager();
INSTANCE.skinCache.values().stream() INSTANCE.skinCache.values().stream()
.flatMap(m -> m.values().stream()) .flatMap(m -> m.values().stream())
.forEach(textures::deleteTexture); .forEach(textures::deleteTexture);
INSTANCE.skinCache.clear(); INSTANCE.skinCache.clear();
INSTANCE.skins.invalidateAll(); INSTANCE.skins.invalidateAll();
} catch (IOException var1) { } catch (IOException e) {
var1.printStackTrace(); e.printStackTrace();
} }
INSTANCE.clearListeners = INSTANCE.clearListeners.stream() INSTANCE.clearListeners = INSTANCE.clearListeners.stream()

View file

@ -80,7 +80,7 @@ public class GuiSkins extends GuiScreen {
private final Object skinLock = new Object(); private final Object skinLock = new Object();
private File pendingSkinFile; private File pendingSkinFile;
private File selectedSkin; private File selectedSkin;
private float uploadOpacity = 0.0F; private float uploadOpacity = 0;
private int lastMouseX = 0; private int lastMouseX = 0;
@ -474,19 +474,19 @@ public class GuiSkins extends GuiScreen {
} }
} }
if (uploadingSkin || uploadOpacity > 0.0F) { if (uploadingSkin || uploadOpacity > 0) {
if (!uploadingSkin) { if (!uploadingSkin) {
uploadOpacity -= deltaTime * 0.05F; uploadOpacity -= deltaTime * 0.05F;
} else if (uploadOpacity < 1.0F) { } else if (uploadOpacity < 1) {
uploadOpacity += deltaTime * 0.1F; uploadOpacity += deltaTime * 0.1F;
} }
if (uploadOpacity > 1.0F) { if (uploadOpacity > 1) {
uploadOpacity = 1.0F; uploadOpacity = 1;
} }
int opacity = Math.min(180, (int) (uploadOpacity * 180.0F)) & 255; int opacity = Math.min(180, (int) (uploadOpacity * 180)) & 255;
if (uploadOpacity > 0.0F) { if (uploadOpacity > 0) {
Gui.drawRect(0, 0, width, height, opacity << 24); Gui.drawRect(0, 0, width, height, opacity << 24);
if (uploadingSkin) { if (uploadingSkin) {
drawCenteredString(fontRenderer, skinUploadMessage, width / 2, height / 2, opacity << 24 | 0xffffff); drawCenteredString(fontRenderer, skinUploadMessage, width / 2, height / 2, opacity << 24 | 0xffffff);
@ -508,16 +508,16 @@ public class GuiSkins extends GuiScreen {
float partialTick) { float partialTick) {
enableColorMaterial(); enableColorMaterial();
pushMatrix(); pushMatrix();
translate(xPosition, yPosition, 300.0F); translate(xPosition, yPosition, 300);
scale(-scale, scale, scale); scale(-scale, scale, scale);
rotate(180.0F, 0.0F, 0.0F, 1.0F); rotate(180, 0, 0, 1);
rotate(135.0F, 0.0F, 1.0F, 0.0F); rotate(135, 0, 1, 0);
RenderHelper.enableStandardItemLighting(); RenderHelper.enableStandardItemLighting();
rotate(-135.0F, 0.0F, 1.0F, 0.0F); rotate(-135, 0, 1, 0);
rotate(15.0F, 1.0F, 0.0F, 0.0F); rotate(15, 1, 0, 0);
float rot = (updateCounter + partialTick) * 2.5F % 360; float rot = (updateCounter + partialTick) * 2.5F % 360;
@ -526,10 +526,10 @@ public class GuiSkins extends GuiScreen {
thePlayer.rotationYawHead = (float) Math.atan(mouseX / 20) * 30; thePlayer.rotationYawHead = (float) Math.atan(mouseX / 20) * 30;
thePlayer.rotationPitch = -((float) Math.atan(mouseY / 40)) * 20; thePlayer.rotationPitch = -((float) Math.atan(mouseY / 40)) * 20;
translate(0.0D, thePlayer.getYOffset(), 0.0D); translate(0, thePlayer.getYOffset(), 0);
RenderManager rm = Minecraft.getMinecraft().getRenderManager(); RenderManager rm = Minecraft.getMinecraft().getRenderManager();
rm.playerViewY = 180.0F; rm.playerViewY = 180;
rm.renderEntity(thePlayer, 0, 0, 0, 0, 1, false); rm.renderEntity(thePlayer, 0, 0, 0, 0, 1, false);
popMatrix(); popMatrix();
@ -543,11 +543,11 @@ public class GuiSkins extends GuiScreen {
} }
doubleBuffer.clear(); doubleBuffer.clear();
doubleBuffer.put(0.0D).put(1.0D).put(0.0D).put(-30).flip(); doubleBuffer.put(0).put(1).put(0).put(-30).flip();
GL11.glClipPlane(GL11.GL_CLIP_PLANE0, doubleBuffer); GL11.glClipPlane(GL11.GL_CLIP_PLANE0, doubleBuffer);
doubleBuffer.clear(); doubleBuffer.clear();
doubleBuffer.put(0.0D).put(-1.0D).put(0.0D).put(yBottom).flip(); doubleBuffer.put(0).put(-1).put(0).put(yBottom).flip();
GL11.glClipPlane(GL11.GL_CLIP_PLANE1, doubleBuffer); GL11.glClipPlane(GL11.GL_CLIP_PLANE1, doubleBuffer);
GL11.glEnable(GL11.GL_CLIP_PLANE0); GL11.glEnable(GL11.GL_CLIP_PLANE0);
@ -567,9 +567,9 @@ public class GuiSkins extends GuiScreen {
uploadingSkin = true; uploadingSkin = true;
skinUploadMessage = I18n.format("hdskins.request"); skinUploadMessage = I18n.format("hdskins.request");
HDSkinManager.INSTANCE.getGatewayServer() HDSkinManager.INSTANCE.getGatewayServer()
.uploadSkin(session, null, textureType, getMetadata()) .uploadSkin(session, null, textureType, getMetadata())
.thenAccept(this::onUploadComplete) .thenAccept(this::onUploadComplete)
.exceptionally(this::onFailure); .exceptionally(this::onFailure);
} }
private void uploadSkin(Session session, @Nullable File skinFile) { private void uploadSkin(Session session, @Nullable File skinFile) {
@ -577,9 +577,9 @@ public class GuiSkins extends GuiScreen {
skinUploadMessage = I18n.format("hdskins.upload"); skinUploadMessage = I18n.format("hdskins.upload");
URI path = skinFile == null ? null : skinFile.toURI(); URI path = skinFile == null ? null : skinFile.toURI();
HDSkinManager.INSTANCE.getGatewayServer() HDSkinManager.INSTANCE.getGatewayServer()
.uploadSkin(session, path, textureType, getMetadata()) .uploadSkin(session, path, textureType, getMetadata())
.thenAccept(this::onUploadComplete) .thenAccept(this::onUploadComplete)
.exceptionally(this::onFailure); .exceptionally(this::onFailure);
} }
private Map<String, String> getMetadata() { private Map<String, String> getMetadata() {

View file

@ -71,10 +71,10 @@ public class MineLittlePony {
void postInit(Minecraft minecraft) { void postInit(Minecraft minecraft) {
HDSkinManager manager = HDSkinManager.INSTANCE; HDSkinManager manager = HDSkinManager.INSTANCE;
// manager.setSkinUrl(SKIN_SERVER_URL); // manager.setSkinUrl(SKIN_SERVER_URL);
// manager.setGatewayURL(GATEWAY_URL); // manager.setGatewayURL(GATEWAY_URL);
manager.addSkinModifier(new PonySkinModifier()); manager.addSkinModifier(new PonySkinModifier());
// logger.info("Set MineLP skin server URL."); // logger.info("Set MineLP skin server URL.");
manager.addClearListener(ponyManager); manager.addClearListener(ponyManager);
manager.setPrefferedSkinsGuiClass(GuiSkinsMineLP.class); manager.setPrefferedSkinsGuiClass(GuiSkinsMineLP.class);

View file

@ -540,9 +540,9 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
bipedHead = new PonyRenderer(this, 0, 0) bipedHead = new PonyRenderer(this, 0, 0)
.offset(HEAD_CENTRE_X, HEAD_CENTRE_Y, HEAD_CENTRE_Z) .offset(HEAD_CENTRE_X, HEAD_CENTRE_Y, HEAD_CENTRE_Z)
.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z - 2) .around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z - 2)
.box(-4, -4, -4, 8, 8, 8, stretch) .box(-4, -4, -4, 8, 8, 8, stretch)
.tex(12, 16).box(-4, -6, 1, 2, 2, 2, stretch) .tex(12, 16).box(-4, -6, 1, 2, 2, 2, stretch)
.flip().box( 2, -6, 1, 2, 2, 2, stretch); .flip().box( 2, -6, 1, 2, 2, 2, stretch);
bipedHeadwear = new PonyRenderer(this, 32, 0) bipedHeadwear = new PonyRenderer(this, 32, 0)
.offset(HEAD_CENTRE_X, HEAD_CENTRE_Y, HEAD_CENTRE_Z) .offset(HEAD_CENTRE_X, HEAD_CENTRE_Y, HEAD_CENTRE_Z)
@ -576,24 +576,24 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
upperTorso = new PlaneRenderer(this, 24, 0); upperTorso = new PlaneRenderer(this, 24, 0);
upperTorso.offset(BODY_CENTRE_X, BODY_CENTRE_Y, BODY_CENTRE_Z) upperTorso.offset(BODY_CENTRE_X, BODY_CENTRE_Y, BODY_CENTRE_Z)
.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z) .around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z)
.tex(24, 0) .addEastPlane( 4, -4, -4, 8, 8, stretch) .tex(24, 0) .addEastPlane( 4, -4, -4, 8, 8, stretch)
.tex(4, 0) .addEastPlane( 4, -4, 4, 8, 4, stretch) .tex(4, 0) .addEastPlane( 4, -4, 4, 8, 4, stretch)
.tex(56, 0) .addBottomPlane(-4, 4, -4, 8, 8, stretch) .tex(56, 0) .addBottomPlane(-4, 4, -4, 8, 8, stretch)
.tex(36, 16) .addBackPlane(-4, -4, 8, 8, 4, stretch) .tex(36, 16) .addBackPlane(-4, -4, 8, 8, 4, stretch)
.addBackPlane(-4, 0, 8, 8, 4, stretch) .addBackPlane(-4, 0, 8, 8, 4, stretch)
.addBottomPlane(-4, 4, 4, 8, 4, stretch) .addBottomPlane(-4, 4, 4, 8, 4, stretch)
.flipZ().tex(32, 20).addTopPlane(-4, -4, -4, 8, 12, stretch) .flipZ().tex(32, 20).addTopPlane(-4, -4, -4, 8, 12, stretch)
.tex(24, 0).addWestPlane(-4, -4, -4, 8, 8, stretch) .tex(24, 0).addWestPlane(-4, -4, -4, 8, 8, stretch)
.tex(4, 0) .addWestPlane(-4, -4, 4, 8, 4, stretch) .tex(4, 0) .addWestPlane(-4, -4, 4, 8, 4, stretch)
// Tail stub // Tail stub
.child(0) .child(0)
.tex(32, 0).addTopPlane(-1, 2, 2, 2, 6, stretch) .tex(32, 0).addTopPlane(-1, 2, 2, 2, 6, stretch)
.addBottomPlane(-1, 4, 2, 2, 6, stretch) .addBottomPlane(-1, 4, 2, 2, 6, stretch)
.addEastPlane( 1, 2, 2, 2, 6, stretch) .addEastPlane( 1, 2, 2, 2, 6, stretch)
.addBackPlane(-1, 2, 8, 2, 2, stretch) .addBackPlane(-1, 2, 8, 2, 2, stretch)
.flipZ().addWestPlane(-1, 2, 2, 2, 6, stretch) .flipZ().addWestPlane(-1, 2, 2, 2, 6, stretch)
.rotate(0.5F, 0, 0); .rotate(0.5F, 0, 0);
neck = new PlaneRenderer(this, 0, 16) neck = new PlaneRenderer(this, 0, 16)
.at(NECK_CENTRE_X, NECK_CENTRE_Y, NECK_CENTRE_Z) .at(NECK_CENTRE_X, NECK_CENTRE_Y, NECK_CENTRE_Z)

View file

@ -64,8 +64,8 @@ public class ModelPonyArmor extends AbstractPonyModel implements IModelArmor {
protected void initHead(float yOffset, float stretch) { protected void initHead(float yOffset, float stretch) {
super.initHead(yOffset, stretch * 1.1F); super.initHead(yOffset, stretch * 1.1F);
((PonyRenderer)bipedHead).child() ((PonyRenderer)bipedHead).child()
.tex(0, 4).box(2, -6, 1, 2, 2, 2, stretch * 0.5F) .tex(0, 4).box( 2, -6, 1, 2, 2, 2, stretch / 2)
.box(-4, -6, 1, 2, 2, 2, stretch * 0.5F); .box(-4, -6, 1, 2, 2, 2, stretch / 2);
} }
@Override @Override

View file

@ -27,9 +27,10 @@ public class ModelPonyHead extends ModelHumanoidHead implements ICapitated {
snout.init(0, 0); snout.init(0, 0);
ears = new PonyRenderer(this, 0, 0).offset(0, -3, 2).around(0, 0, -2) ears = new PonyRenderer(this, 0, 0)
.offset(0, -3, 2).around(0, 0, -2)
.tex(12, 16).box(-4, -6, 1, 2, 2, 2, 0) .tex(12, 16).box(-4, -6, 1, 2, 2, 2, 0)
.flip().box( 2, -6, 1, 2, 2, 2, 0); .flip().box( 2, -6, 1, 2, 2, 2, 0);
skeletonHead.addChild(ears); skeletonHead.addChild(ears);
} }

View file

@ -29,17 +29,17 @@ public class ModelWing {
float x = right ? -6 : 4; float x = right ? -6 : 4;
folded.around(HEAD_RP_X, WING_FOLDED_RP_Y + y, WING_FOLDED_RP_Z) folded.around(HEAD_RP_X, WING_FOLDED_RP_Y + y, WING_FOLDED_RP_Z)
.box(x, 5, 2, 2, 6, 2, scale) .box(x, 5, 2, 2, 6, 2, scale)
.box(x, 5, 4, 2, 8, 2, scale) .box(x, 5, 4, 2, 8, 2, scale)
.box(x, 5, 6, 2, 6, 2, scale) .box(x, 5, 6, 2, 6, 2, scale)
.rotateAngleX = ROTATE_90; .rotateAngleX = ROTATE_90;
} }
private void addFeathers(boolean right, boolean l, float rotationPointY, float scale) { private void addFeathers(boolean right, boolean l, float rotationPointY, float scale) {
float r = right ? -1 : 1; float r = right ? -1 : 1;
extended.around(r * LEFT_WING_EXT_RP_X, LEFT_WING_EXT_RP_Y + rotationPointY, LEFT_WING_EXT_RP_Z) extended.around(r * LEFT_WING_EXT_RP_X, LEFT_WING_EXT_RP_Y + rotationPointY, LEFT_WING_EXT_RP_Z)
.rotateAngleY = r * 3; .rotateAngleY = r * 3;
addFeather(0, l, 6, 0, 8, scale + 0.1F); addFeather(0, l, 6, 0, 8, scale + 0.1F);
addFeather(1, l, -1, -0.3F, 8, scale + 0.1F) .rotateAngleX = -0.85F; addFeather(1, l, -1, -0.3F, 8, scale + 0.1F) .rotateAngleX = -0.85F;
addFeather(2, l, 1.8F, 1.3F, 8, scale - 0.1F) .rotateAngleX = -0.75F; addFeather(2, l, 1.8F, 1.3F, 8, scale - 0.1F) .rotateAngleX = -0.75F;

View file

@ -40,22 +40,22 @@ public class PonySnout {
public void init(float yOffset, float stretch) { public void init(float yOffset, float stretch) {
mare.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z) mare.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z)
.tex(10, 14) .addBackPlane(-2, 2, -5, 4, 2, stretch) .tex(10, 14) .addBackPlane(-2, 2, -5, 4, 2, stretch)
.tex(11, 13) .addBackPlane(-1, 1, -5, 2, 1, stretch) .tex(11, 13) .addBackPlane(-1, 1, -5, 2, 1, stretch)
.tex(9, 14) .addTopPlane(-2, 2, -5, 1, 1, stretch) .tex(9, 14) .addTopPlane(-2, 2, -5, 1, 1, stretch)
.tex(14, 14) .addTopPlane( 1, 2, -5, 1, 1, stretch) .tex(14, 14) .addTopPlane( 1, 2, -5, 1, 1, stretch)
.tex(11, 12) .addTopPlane(-1, 1, -5, 2, 1, stretch) .tex(11, 12) .addTopPlane(-1, 1, -5, 2, 1, stretch)
.tex(18, 7).addBottomPlane(-2, 4, -5, 4, 1, stretch) .tex(18, 7).addBottomPlane(-2, 4, -5, 4, 1, stretch)
.tex(9, 14) .addWestPlane(-2, 2, -5, 2, 1, stretch) .tex(9, 14) .addWestPlane(-2, 2, -5, 2, 1, stretch)
.tex(14, 14) .addEastPlane( 2, 2, -5, 2, 1, stretch) .tex(14, 14) .addEastPlane( 2, 2, -5, 2, 1, stretch)
.tex(11, 12) .addWestPlane(-1, 1, -5, 1, 1, stretch) .tex(11, 12) .addWestPlane(-1, 1, -5, 1, 1, stretch)
.tex(12, 12) .addEastPlane( 1, 1, -5, 1, 1, stretch); .tex(12, 12) .addEastPlane( 1, 1, -5, 1, 1, stretch);
stallion.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z) stallion.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z)
.tex(10, 13) .addBackPlane(-2, 1, -5, 4, 3, stretch) .tex(10, 13) .addBackPlane(-2, 1, -5, 4, 3, stretch)
.tex(10, 13) .addTopPlane(-2, 1, -5, 4, 1, stretch) .tex(10, 13) .addTopPlane(-2, 1, -5, 4, 1, stretch)
.tex(18, 7).addBottomPlane(-2, 4, -5, 4, 1, stretch) .tex(18, 7).addBottomPlane(-2, 4, -5, 4, 1, stretch)
.tex(10, 13) .addWestPlane(-2, 1, -5, 3, 1, stretch) .tex(10, 13) .addWestPlane(-2, 1, -5, 3, 1, stretch)
.tex(13, 13) .addEastPlane( 2, 1, -5, 3, 1, stretch); .tex(13, 13) .addEastPlane( 2, 1, -5, 3, 1, stretch);
} }
public void setGender(PonyGender gender) { public void setGender(PonyGender gender) {

View file

@ -107,10 +107,10 @@ public class PonyTail extends PlaneRenderer implements IModelPart {
} }
tex(36, texX).addEastPlane( 2, 0, 2, 4, 4, stretch) tex(36, texX).addEastPlane( 2, 0, 2, 4, 4, stretch)
.addWestPlane(-2, 0, 2, 4, 4, stretch); .addWestPlane(-2, 0, 2, 4, 4, stretch);
tex(32, texX).addBackPlane(-2, 0, 2, 4, 4, stretch) tex(32, texX).addBackPlane(-2, 0, 2, 4, 4, stretch)
.addFrontPlane(-2, 0, 6, 4, 4, stretch); .addFrontPlane(-2, 0, 6, 4, 4, stretch);
tex(32, 0).addBottomPlane(-2, 4, 2, 4, 4, stretch); tex(32, 0) .addBottomPlane(-2, 4, 2, 4, 4, stretch);
} }
@Override @Override

View file

@ -38,38 +38,39 @@ public class SaddleBags implements IModelPart {
int z = -1; int z = -1;
strap.offset(-x, y + 0.2F, z + 3).around(0, 4, 4) strap.offset(-x, y + 0.2F, z + 3).around(0, 4, 4)
.tex(56, 31).addTopPlane(0, 0, 0, 8, 1, stretch) .tex(56, 31).addTopPlane(0, 0, 0, 8, 1, stretch)
.addTopPlane(0, 0, 1, 8, 1, stretch) .addTopPlane( 0, 0, 1, 8, 1, stretch)
.addBackPlane(0, 0, 2, 8, 1, stretch) .addBackPlane( 0, 0, 2, 8, 1, stretch)
.addFrontPlane(0, 0, 0, 8, 1, stretch) .addFrontPlane(0, 0, 0, 8, 1, stretch)
.child(0).offset(0, -3, -0.305F).tex(56, 31) .child(0).offset(0, -3, -0.305F).tex(56, 31)
.addWestPlane(4.0002F, 0, 0, 1, 3, stretch) // 0.0001 is there .addWestPlane( 4.0002F, 0, 0, 1, 3, stretch) // 0.0001 is there
.addWestPlane(4.0002F, -1, 0, 1, 3, stretch) // otherwise straps .addWestPlane( 4.0002F, -1, 0, 1, 3, stretch) // otherwise straps
.addWestPlane(-4.0002F, 0, 0, 1, 3, stretch) // clip into the body .addWestPlane(-4.0002F, 0, 0, 1, 3, stretch) // clip into the body
.addWestPlane(-4.0002F, -1, 0, 1, 3, stretch) .addWestPlane(-4.0002F, -1, 0, 1, 3, stretch)
.rotateAngleX = ROTATE_270; .rotateAngleX = ROTATE_270;
leftBag.offset(x, y, z).around(0, 4, 4) leftBag.offset(x, y, z).around(0, 4, 4)
.tex(56, 25).addBackPlane(0, 0, 0, 3, 6, stretch) .tex(56, 25).addBackPlane(0, 0, 0, 3, 6, stretch)
.tex(59, 25).addBackPlane(0, 0, 8, 3, 6, stretch) .tex(59, 25).addBackPlane(0, 0, 8, 3, 6, stretch)
.tex(56, 19).addWestPlane(3, 0, 0, 6, 8, stretch) .tex(56, 19).addWestPlane(3, 0, 0, 6, 8, stretch)
.addWestPlane(0, 0, 0, 6, 8, stretch) .addWestPlane(0, 0, 0, 6, 8, stretch)
.child(0).offset(z, y, -x).tex(56, 16) .child(0).offset(z, y, -x).tex(56, 16)
.addTopPlane(0, 0, -3, 8, 3, stretch) .addTopPlane(0, 0, -3, 8, 3, stretch)
.tex(56, 22).flipZ().addBottomPlane(0, 6, -3, 8, 3, stretch) .tex(56, 22).flipZ()
.rotateAngleY = ROTATE_270; .addBottomPlane(0, 6, -3, 8, 3, stretch)
.rotateAngleY = ROTATE_270;
x += 3; x += 3;
rightBag.offset(-x, y, z).around(0, 4, 4) rightBag.offset(-x, y, z).around(0, 4, 4)
.tex(56, 25).addBackPlane(0, 0, 0, 3, 6, stretch) .tex(56, 25).addBackPlane(0, 0, 0, 3, 6, stretch)
.tex(59, 25).addBackPlane(0, 0, 8, 3, 6, stretch) .tex(59, 25).addBackPlane(0, 0, 8, 3, 6, stretch)
.tex(56, 19).addWestPlane(3, 0, 0, 6, 8, stretch) .tex(56, 19).addWestPlane(3, 0, 0, 6, 8, stretch)
.addWestPlane(0, 0, 0, 6, 8, stretch) .addWestPlane(0, 0, 0, 6, 8, stretch)
.child(0).offset(z, y, x).tex(56, 16) .child(0).offset(z, y, x).tex(56, 16)
.flipZ().addTopPlane(0, 0, -3, 8, 3, stretch) .flipZ().addTopPlane( 0, 0, -3, 8, 3, stretch)
.tex(56, 22).flipZ().addBottomPlane(0, 6, -3, 8, 3, stretch) .tex(56, 22).flipZ().addBottomPlane(0, 6, -3, 8, 3, stretch)
.rotateAngleY = ROTATE_270; .rotateAngleY = ROTATE_270;
} }

View file

@ -31,14 +31,14 @@ public class SeaponyTail implements IModelPart {
@Override @Override
public void init(float yOffset, float stretch) { public void init(float yOffset, float stretch) {
tailBase.rotate(TAIL_ROTX, 0, 0).around(-2, 14, 8) tailBase.rotate(TAIL_ROTX, 0, 0).around(-2, 14, 8)
.box( 0, 0, 0, 4, 6, 4, stretch).flip(); .box( 0, 0, 0, 4, 6, 4, stretch).flip();
tailTip.rotate(0, 0, 0).around(1, 5, 1) tailTip.rotate(0, 0, 0).around(1, 5, 1)
.box(0, 0, 0, 2, 6, 1, stretch); .box(0, 0, 0, 2, 6, 1, stretch);
tailFins.offset(1, 0, 4).rotate(-TAIL_ROTX, 0, 0) tailFins.offset(1, 0, 4).rotate(-TAIL_ROTX, 0, 0)
.addTopPlane(-8, 0, 0, 8, 8, stretch) .addTopPlane(-8, 0, 0, 8, 8, stretch)
.flip().addTopPlane( 0, 0, 0, 8, 8, stretch); .flip().addTopPlane( 0, 0, 0, 8, 8, stretch);
} }
@Override @Override

View file

@ -24,14 +24,14 @@ public class UnicornHorn {
glow = new HornGlowRenderer(pony, 0, 3); glow = new HornGlowRenderer(pony, 0, 3);
horn.offset(HORN_X + x, HORN_Y + y, HORN_Z + z) horn.offset(HORN_X + x, HORN_Y + y, HORN_Z + z)
.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z) .around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z)
.box(0, 0, 0, 1, 4, 1, stretch) .box(0, 0, 0, 1, 4, 1, stretch)
.rotateAngleX = 0.5F; .rotateAngleX = 0.5F;
glow.offset(HORN_X + x, HORN_Y + y, HORN_Z + z) glow.offset(HORN_X + x, HORN_Y + y, HORN_Z + z)
.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z) .around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z)
.setAlpha(0.4f).box(0, 0, 0, 1, 4, 1, stretch + 0.5F) .setAlpha(0.4f).box(0, 0, 0, 1, 4, 1, stretch + 0.5F)
.setAlpha(0.2f).box(0, 0, 0, 1, 3, 1, stretch + 0.8F); .setAlpha(0.2f).box(0, 0, 0, 1, 3, 1, stretch + 0.8F);
} }
public void render(float scale) { public void render(float scale) {

View file

@ -33,13 +33,13 @@ public class ModelZebra extends ModelEarthPony {
bipedHead.addChild(bristles); bipedHead.addChild(bristles);
bristles.offset(-1, -1, -3) bristles.offset(-1, -1, -3)
.box(0, -10, 2, 2, 6, 2, stretch) .box(0, -10, 2, 2, 6, 2, stretch)
.box(0, -10, 4, 2, 8, 2, stretch) .box(0, -10, 4, 2, 8, 2, stretch)
.box(0, -8, 6, 2, 6, 2, stretch) .box(0, -8, 6, 2, 6, 2, stretch)
.rotateAngleX = 0.3F; .rotate(0.3F, 0, 0)
bristles.child(0).offset(-1.01F, 2, -7) //0.01 to prevent z-fighting .child(0).offset(-1.01F, 2, -7) //0.01 to prevent z-fighting
.box(0, -10, 4, 2, 8, 2, stretch) .box(0, -10, 4, 2, 8, 2, stretch)
.box(0, -8, 6, 2, 6, 2, stretch) .box(0, -8, 6, 2, 6, 2, stretch)
.rotateAngleX = -1F; .rotate(-1, 0, 0);
} }
} }

View file

@ -48,8 +48,7 @@ public class ModelIllagerPony extends ModelAlicorn {
bipedLeftArm.rotateAngleX -= sin; bipedLeftArm.rotateAngleX -= sin;
} else if (pose == IllagerArmPose.SPELLCASTING) { } else if (pose == IllagerArmPose.SPELLCASTING) {
// waving arms! // waving arms!
// this.bipedRightArm.rotationPointZ = 0; arm.rotateAngleX = (float) (-0.75F * Math.PI);
arm.rotateAngleX = (float) (-.75F * Math.PI);
arm.rotateAngleZ = mult * MathHelper.cos(ticks * 0.6662F) / 4; arm.rotateAngleZ = mult * MathHelper.cos(ticks * 0.6662F) / 4;
arm.rotateAngleY = mult * 1.1F; arm.rotateAngleY = mult * 1.1F;
} else if (pose == IllagerArmPose.BOW_AND_ARROW) { } else if (pose == IllagerArmPose.BOW_AND_ARROW) {

View file

@ -95,15 +95,15 @@ public class ModelWitchPony extends ModelZebra {
super.init(yOffset, stretch); super.init(yOffset, stretch);
witchHat = new PonyRenderer(this).size(64, 128); witchHat = new PonyRenderer(this).size(64, 128);
witchHat.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z - 2) witchHat.around(HEAD_RP_X, HEAD_RP_Y + yOffset, HEAD_RP_Z - 2)
.tex(0, 64).box(-5, -6, -7, 10, 2, 10, stretch) .tex(0, 64).box(-5, -6, -7, 10, 2, 10, stretch)
.child(0).around(1.75F, -4, 2) .child(0).around(1.75F, -4, 2)
.tex(0, 76).box(-5, -5, -7, 7, 4, 7, stretch) .tex(0, 76).box(-5, -5, -7, 7, 4, 7, stretch)
.rotate(-0.05235988F, 0, 0.02617994F) .rotate(-0.05235988F, 0, 0.02617994F)
.child(0).around(1.75F, -4, 2) .child(0).around(1.75F, -4, 2)
.tex(0, 87).box(-5, -4, -7, 4, 4, 4, stretch) .tex(0, 87).box(-5, -4, -7, 4, 4, 4, stretch)
.rotate(-0.10471976F, 0, 0.05235988F) .rotate(-0.10471976F, 0, 0.05235988F)
.child(0).around(1.75F, -2, 2) .child(0).around(1.75F, -2, 2)
.tex(0, 95).box(-5, -2, -7, 1, 2, 1, stretch) .tex(0, 95).box(-5, -2, -7, 1, 2, 1, stretch)
.rotate(-0.20943952F, 0, 0.10471976F); .rotate(-0.20943952F, 0, 0.10471976F);
} }
} }