mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2024-11-29 23:48:00 +01:00
The problem childs
This commit is contained in:
parent
65a5fc230c
commit
bee8d0556d
19 changed files with 182 additions and 168 deletions
|
@ -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
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
|
@ -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;
|
||||||
|
|
|
@ -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;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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 {
|
||||||
|
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
Loading…
Reference in a new issue