mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2025-02-13 08:14:23 +01:00
Fixed tails and necks rendering on spectator mode players,
fixed spectators missing snouts and ears, and fixed spectators bodies rotating when flying
This commit is contained in:
parent
7180f22f4f
commit
2f0ad4bf3e
5 changed files with 13 additions and 9 deletions
|
@ -144,6 +144,7 @@ public class ModelAttributes {
|
||||||
isGoingFast &= zMotion > 0.4F;
|
isGoingFast &= zMotion > 0.4F;
|
||||||
isGoingFast |= entity.isUsingRiptide();
|
isGoingFast |= entity.isUsingRiptide();
|
||||||
isGoingFast |= entity.isGliding();
|
isGoingFast |= entity.isGliding();
|
||||||
|
isGoingFast &= !entity.isSpectator();
|
||||||
|
|
||||||
motionLerp = MathUtil.clampLimit(zMotion * 30, 1);
|
motionLerp = MathUtil.clampLimit(zMotion * 30, 1);
|
||||||
|
|
||||||
|
|
|
@ -86,6 +86,7 @@ public abstract class AbstractPonyModel<T extends PonyRenderState> extends Clien
|
||||||
protected void setModelVisibilities(T state) {
|
protected void setModelVisibilities(T state) {
|
||||||
resetPivot(head, neck, leftArm, rightArm, leftLeg, rightLeg);
|
resetPivot(head, neck, leftArm, rightArm, leftLeg, rightLeg);
|
||||||
hat.visible = head.visible && !state.attributes.isHorsey;
|
hat.visible = head.visible && !state.attributes.isHorsey;
|
||||||
|
neck.visible = body.visible;
|
||||||
if (state.attributes.isHorsey) {
|
if (state.attributes.isHorsey) {
|
||||||
neck.visible = head.visible;
|
neck.visible = head.visible;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -57,8 +57,8 @@ public class PonyEars implements SubModel<PonyRenderState>, MsonModel {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setVisible(boolean visible, PonyRenderState state) {
|
public void setVisible(boolean visible, PonyRenderState state) {
|
||||||
right.visible = visible && !state.race.isHuman();
|
right.visible = !state.race.isHuman();
|
||||||
left.visible = visible && !state.race.isHuman();
|
left.visible = !state.race.isHuman();
|
||||||
|
|
||||||
if (state.attributes.isHorsey) {
|
if (state.attributes.isHorsey) {
|
||||||
left.pivotX = -1;
|
left.pivotX = -1;
|
||||||
|
|
|
@ -39,7 +39,7 @@ public class PonySnout implements SubModel<PonyRenderState>, MsonModel {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setVisible(boolean visible, PonyRenderState state) {
|
public void setVisible(boolean visible, PonyRenderState state) {
|
||||||
visible &= !state.attributes.isHorsey
|
visible = !state.attributes.isHorsey
|
||||||
&& !state.attributes.metadata.race().isHuman()
|
&& !state.attributes.metadata.race().isHuman()
|
||||||
&& PonyConfig.getInstance().snuzzles.get();
|
&& PonyConfig.getInstance().snuzzles.get();
|
||||||
Gender gender = state.attributes.metadata.gender();
|
Gender gender = state.attributes.metadata.gender();
|
||||||
|
|
|
@ -92,14 +92,16 @@ public class PonyTail implements SubModel<PonyRenderState>, MsonModel {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void renderPart(MatrixStack stack, VertexConsumer vertices, int overlay, int light, int color) {
|
public void renderPart(MatrixStack stack, VertexConsumer vertices, int overlay, int light, int color) {
|
||||||
stack.push();
|
if (tail.visible) {
|
||||||
tail.rotate(stack);
|
stack.push();
|
||||||
|
tail.rotate(stack);
|
||||||
|
|
||||||
for (int i = 0; i < segments.size(); i++) {
|
for (int i = 0; i < segments.size(); i++) {
|
||||||
segments.get(i).render(stack, vertices, i, overlay, light, color);
|
segments.get(i).render(stack, vertices, i, overlay, light, color);
|
||||||
|
}
|
||||||
|
|
||||||
|
stack.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
stack.pop();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class Segment {
|
public static class Segment {
|
||||||
|
|
Loading…
Reference in a new issue