mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2025-02-13 08:14:23 +01:00
Packport parrot sizing and fix parrots positioning
This commit is contained in:
parent
7328d0c43d
commit
5fce5b376c
2 changed files with 21 additions and 20 deletions
|
@ -8,12 +8,13 @@ import net.minecraft.client.render.entity.ParrotEntityRenderer;
|
|||
import net.minecraft.client.render.entity.model.EntityModelLayers;
|
||||
import net.minecraft.client.render.entity.model.ParrotEntityModel;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.util.math.RotationAxis;
|
||||
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.entity.passive.ParrotEntity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.*;
|
||||
|
||||
import com.minelittlepony.api.model.BodyPart;
|
||||
import com.minelittlepony.client.model.ClientPonyModel;
|
||||
|
@ -48,14 +49,17 @@ public class PassengerFeature<T extends PlayerEntity, M extends ClientPonyModel<
|
|||
|
||||
private void renderShoulderParrot(MatrixStack stack, VertexConsumerProvider renderContext, int light, T entity, float limbDistance, float limbAngle, float headYaw, float headPitch, Identifier texture, int sigma) {
|
||||
stack.push();
|
||||
float scale = 1/getContext().getEntityPony(entity).size().scaleFactor();
|
||||
final double parrotModelHeight = 1.5;
|
||||
|
||||
getContextModel().transform(BodyPart.BODY, stack);
|
||||
getContextModel().transform(BodyPart.BACK, stack);
|
||||
getContextModel().body.rotate(stack);
|
||||
|
||||
stack.translate(
|
||||
sigma * 0.25,
|
||||
entity.isInSneakingPose() ? -0.9 : -1.2,
|
||||
0.45);
|
||||
stack.translate(0, -1.28, 0);
|
||||
stack.multiply(RotationAxis.NEGATIVE_Z.rotationDegrees(sigma * -5));
|
||||
stack.translate(0, parrotModelHeight, 0);
|
||||
stack.scale(scale, scale, scale);
|
||||
stack.translate(sigma * 0.25, -parrotModelHeight, 0.45);
|
||||
|
||||
VertexConsumer buffer = renderContext.getBuffer(model.getLayer(texture));
|
||||
model.poseOnShoulder(stack, buffer, light, OverlayTexture.DEFAULT_UV, limbDistance, limbAngle, headYaw, headPitch, entity.age);
|
||||
|
|
|
@ -33,7 +33,6 @@ public enum PonyTransformation {
|
|||
if (model.getAttributes().isCrouching) stack.translate(0, 0.1F, 0);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
|
@ -71,8 +70,10 @@ public enum PonyTransformation {
|
|||
stack.scale(1.1F, 1, 1.1F);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
stack.translate(0, -0.08F, -0.05F);
|
||||
if (model.getAttributes().isLyingDown) stack.translate(0, -0.1F, 0);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -108,7 +109,7 @@ public enum PonyTransformation {
|
|||
stack.scale(0.9F, 1.12F, 0.9F);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
stack.translate(0, -0.14F, -0.04F);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -144,7 +145,7 @@ public enum PonyTransformation {
|
|||
stack.scale(1.15F, 1.12F, 1.15F);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
stack.translate(0, -0.15F, -0.04F);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -174,7 +175,6 @@ public enum PonyTransformation {
|
|||
stack.scale(1, 0.81F, 1);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
|
@ -200,6 +200,7 @@ public enum PonyTransformation {
|
|||
break;
|
||||
case BODY:
|
||||
case TAIL:
|
||||
case BACK:
|
||||
stack.translate(0, -0.1F, 0);
|
||||
break;
|
||||
case LEGS:
|
||||
|
@ -207,9 +208,6 @@ public enum PonyTransformation {
|
|||
stack.scale(1, 1.18F, 1);
|
||||
if (model.getAttributes().isGoingFast) stack.translate(0, 0.05F, 0);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
break;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -235,6 +233,7 @@ public enum PonyTransformation {
|
|||
break;
|
||||
case BODY:
|
||||
case TAIL:
|
||||
case BACK:
|
||||
stack.translate(0, -0.1F, 0);
|
||||
break;
|
||||
case LEGS:
|
||||
|
@ -242,9 +241,6 @@ public enum PonyTransformation {
|
|||
stack.scale(1, 1.18F, 1);
|
||||
if (model.getAttributes().isGoingFast) stack.translate(0, 0.05F, 0);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
break;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -274,6 +270,10 @@ public enum PonyTransformation {
|
|||
stack.scale(1.4F, 1.3F, 1);
|
||||
if (model.getAttributes().isCrouching) stack.translate(0, -0.05F, 0);
|
||||
break;
|
||||
case BACK:
|
||||
stack.translate(0, 0.07F, 0);
|
||||
if (model.getAttributes().isCrouching) stack.translate(0, -0.05F, 0);
|
||||
break;
|
||||
case TAIL:
|
||||
stack.translate(0, -0.1F, 0);
|
||||
break;
|
||||
|
@ -282,9 +282,6 @@ public enum PonyTransformation {
|
|||
stack.scale(1.1F, 0.8F, 1.1F);
|
||||
if (model.getAttributes().isLyingDown) stack.translate(0, -0.1F, 0);
|
||||
break;
|
||||
case BACK:
|
||||
translateForRider(stack);
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue