The problem childs

This commit is contained in:
Sollace 2018-08-01 12:38:15 +02:00
parent 65a5fc230c
commit bee8d0556d
19 changed files with 182 additions and 168 deletions

View file

@ -89,7 +89,8 @@ public class GuiSkinsMineLP extends GuiSkins {
text = "minelp.mode.wet"; text = "minelp.mode.wet";
} }
this.drawHoveringText(I18n.format(text), mouseX, y); this.drawHoveringText(I18n.format(text), mouseX, y);
}; }
;
} }
@Override @Override

View file

@ -70,7 +70,8 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
} }
/** /**
* Checks flying and speed conditions and sets rainboom to true if we're a species with wings and is going faaast. * Checks flying and speed conditions and sets rainboom to true if we're a species with wings and is
* going faaast.
*/ */
protected void checkRainboom(Entity entity, float swing) { protected void checkRainboom(Entity entity, float swing) {
rainboom = canFly() || isElytraFlying(); rainboom = canFly() || isElytraFlying();
@ -90,12 +91,15 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
/** /**
* Sets the model's various rotation angles. * Sets the model's various rotation angles.
* *
* @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to calculate step amount. * @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds
* to calculate step amount.
* @param swing Degree to which each 'limb' swings. * @param swing Degree to which each 'limb' swings.
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
* @param headYaw Horizontal head motion in radians. * @param headYaw Horizontal head motion in radians.
* @param headPitch Vertical head motion in radians. * @param headPitch Vertical head motion in radians.
* @param scale Scaling factor used to render this model. Determined by the return value of {@link RenderLivingBase.prepareScale}. Usually {@code 0.0625F}. * @param scale Scaling factor used to render this model. Determined by the return value of
* {@link RenderLivingBase.prepareScale}. Usually {@code 0.0625F}.
* @param entity The entity we're being called for. * @param entity The entity we're being called for.
*/ */
@Override @Override
@ -174,10 +178,12 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
/** /**
* Sets the model's various rotation angles. * Sets the model's various rotation angles.
* *
* @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to calculate step amount. * @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds
* to calculate step amount.
* @param swing Degree to which each 'limb' swings. * @param swing Degree to which each 'limb' swings.
* @param bodySwing Horizontal (Y) body rotation. * @param bodySwing Horizontal (Y) body rotation.
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
*/ */
protected void shakeBody(float move, float swing, float bodySwing, float ticks) { protected void shakeBody(float move, float swing, float bodySwing, float ticks) {
tail.setRotationAndAngles(isSwimming || rainboom, move, swing, bodySwing * 5, ticks); tail.setRotationAndAngles(isSwimming || rainboom, move, swing, bodySwing * 5, ticks);
@ -266,9 +272,11 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
/** /**
* Rotates legs in quopy fashion whilst swimming. * Rotates legs in quopy fashion whilst swimming.
* *
* @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to calculate step amount. * @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to
* calculate step amount.
* @param swing Degree to which each 'limb' swings. * @param swing Degree to which each 'limb' swings.
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
* @param entity The entity we're being called for. * @param entity The entity we're being called for.
* *
*/ */
@ -299,9 +307,11 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
/** /**
* Rotates legs in quopy fashion whilst flying. * Rotates legs in quopy fashion whilst flying.
* *
* @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to calculate step amount. * @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to
* calculate step amount.
* @param swing Degree to which each 'limb' swings. * @param swing Degree to which each 'limb' swings.
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
* @param entity The entity we're being called for. * @param entity The entity we're being called for.
* *
*/ */
@ -325,9 +335,11 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
/** /**
* Rotates legs in quopy fashion for walking. * Rotates legs in quopy fashion for walking.
* *
* @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to calculate step amount. * @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to
* calculate step amount.
* @param swing Degree to which each 'limb' swings. * @param swing Degree to which each 'limb' swings.
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
* @param entity The entity we're being called for. * @param entity The entity we're being called for.
* *
*/ */
@ -460,7 +472,8 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
/** /**
* Animates the walking animation. * Animates the walking animation.
* *
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
*/ */
protected void swingArms(float ticks) { protected void swingArms(float ticks) {
if (isSleeping) { if (isSleeping) {
@ -747,11 +760,13 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
} }
switch (getMetadata().getSize()) { switch (getMetadata().getSize()) {
case NORMAL: return 0.4F; case NORMAL:
return 0.4F;
case FOAL: case FOAL:
case TALL: case TALL:
case LARGE: case LARGE:
default: return 0.25F; default:
return 0.25F;
} }
} }
@ -759,12 +774,15 @@ public abstract class AbstractPonyModel extends ModelPlayer implements IModel {
* Sets the model's various rotation angles. * Sets the model's various rotation angles.
* *
* @param entity The entity we're being called for. * @param entity The entity we're being called for.
* @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds to calculate step amount. * @param move Entity motion parameter - i.e. velocity in no specific direction used in bipeds
* to calculate step amount.
* @param swing Degree to which each 'limb' swings. * @param swing Degree to which each 'limb' swings.
* @param ticks Total whole and partial ticks since the entity's existance. Used in animations together with {@code swing} and {@code move}. * @param ticks Total whole and partial ticks since the entity's existance. Used in animations
* together with {@code swing} and {@code move}.
* @param headYaw Horizontal head motion in radians. * @param headYaw Horizontal head motion in radians.
* @param headPitch Vertical head motion in radians. * @param headPitch Vertical head motion in radians.
* @param scale Scaling factor used to render this model. Determined by the return value of {@link RenderLivingBase.prepareScale}. Usually {@code 0.0625F}. * @param scale Scaling factor used to render this model. Determined by the return value of
* {@link RenderLivingBase.prepareScale}. Usually {@code 0.0625F}.
*/ */
@Override @Override
public void render(Entity entity, float move, float swing, float ticks, float headYaw, float headPitch, float scale) { public void render(Entity entity, float move, float swing, float ticks, float headYaw, float headPitch, float scale) {

View file

@ -31,15 +31,13 @@ public class ModelWing {
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

@ -46,8 +46,7 @@ public class SaddleBags implements IModelPart {
.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)
@ -57,8 +56,7 @@ public class SaddleBags implements IModelPart {
.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() .tex(56, 22).flipZ()
.addBottomPlane(0, 6, -3, 8, 3, stretch) .addBottomPlane(0, 6, -3, 8, 3, stretch).rotateAngleY = ROTATE_270;
.rotateAngleY = ROTATE_270;
x += 3; x += 3;
@ -69,8 +67,7 @@ public class SaddleBags implements IModelPart {
.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

@ -25,8 +25,7 @@ public class UnicornHorn {
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)

View file

@ -12,7 +12,8 @@ import com.minelittlepony.model.capabilities.IModelUnicorn;
import static com.minelittlepony.model.PonyModelConstants.*; import static com.minelittlepony.model.PonyModelConstants.*;
/** /**
* Used for both unicorns and alicorns since there's no logical way to keep them distinct and not duplicate stuff. * Used for both unicorns and alicorns since there's no logical way to keep them distinct and not
* duplicate stuff.
*/ */
public class ModelUnicorn extends ModelEarthPony implements IModelUnicorn { public class ModelUnicorn extends ModelEarthPony implements IModelUnicorn {

View file

@ -33,6 +33,7 @@ public enum PonyRace implements ITriggerPixelMapped<PonyRace> {
/** /**
* Returns true if this pony has a horn (and by extension can cast magic). * Returns true if this pony has a horn (and by extension can cast magic).
*
* @return * @return
*/ */
public boolean hasHorn() { public boolean hasHorn() {
@ -61,10 +62,9 @@ public enum PonyRace implements ITriggerPixelMapped<PonyRace> {
} }
/** /**
* Gets the actual race determined by the given pony level. * Gets the actual race determined by the given pony level. PonyLevel.HUMANS would force all races
* PonyLevel.HUMANS would force all races to be humans. * to be humans. PonyLevel.BOTH is no change. PonyLevel.PONIES (should) return a pony if this is a
* PonyLevel.BOTH is no change. * human. Don't be fooled, though. It doesn't.
* PonyLevel.PONIES (should) return a pony if this is a human. Don't be fooled, though. It doesn't.
*/ */
public PonyRace getEffectiveRace(PonyLevel level) { public PonyRace getEffectiveRace(PonyLevel level) {
if (level == PonyLevel.HUMANS) { if (level == PonyLevel.HUMANS) {