ЛЕЖИИИИТ
This commit is contained in:
@@ -229,12 +229,11 @@ public class EllieEntity extends Animal implements GeoEntity {
|
|||||||
updateDebugBrainString();
|
updateDebugBrainString();
|
||||||
if (!level().isClientSide) {
|
if (!level().isClientSide) {
|
||||||
List<BlockPos> wps = getPathWaypoints();
|
List<BlockPos> wps = getPathWaypoints();
|
||||||
String brain = entityData.get(DATA_DEBUG_BRAIN);
|
|
||||||
for (Player player : level().players()) {
|
for (Player player : level().players()) {
|
||||||
if (player.distanceToSqr(this) < 64 * 64) {
|
if (player.distanceToSqr(this) < 64 * 64) {
|
||||||
ModNetworking.CHANNEL.send(
|
ModNetworking.CHANNEL.send(
|
||||||
PacketDistributor.PLAYER.with(() -> (ServerPlayer) player),
|
PacketDistributor.PLAYER.with(() -> (ServerPlayer) player),
|
||||||
new DebugSyncPacket(this.getId(), wps, brain));
|
new DebugSyncPacket(this.getId(), wps));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -424,12 +423,9 @@ public class EllieEntity extends Animal implements GeoEntity {
|
|||||||
: pos.relative(facing);
|
: pos.relative(facing);
|
||||||
|
|
||||||
setPose(Pose.SLEEPING);
|
setPose(Pose.SLEEPING);
|
||||||
BlockPos footPos = headPos.relative(facing.getOpposite());
|
setPos(headPos.getX() + 0.5, pos.getY() + 0.6875, headPos.getZ() + 0.5);
|
||||||
double footX = footPos.getX() + 0.5 - facing.getStepX() * 0.5;
|
|
||||||
double footZ = footPos.getZ() + 0.5 - facing.getStepZ() * 0.5;
|
|
||||||
setPos(footX, footPos.getY() + 1.0625, footZ);
|
|
||||||
setSleepingPos(headPos);
|
setSleepingPos(headPos);
|
||||||
float yRot = facing.getOpposite().toYRot();
|
float yRot = facing.toYRot();
|
||||||
setYRot(yRot);
|
setYRot(yRot);
|
||||||
yRotO = yRot;
|
yRotO = yRot;
|
||||||
setYHeadRot(yRot);
|
setYHeadRot(yRot);
|
||||||
|
|||||||
@@ -8,12 +8,9 @@ import net.minecraft.client.gui.Font;
|
|||||||
import net.minecraft.client.renderer.MultiBufferSource;
|
import net.minecraft.client.renderer.MultiBufferSource;
|
||||||
import net.minecraft.client.renderer.RenderType;
|
import net.minecraft.client.renderer.RenderType;
|
||||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||||
import net.minecraft.core.BlockPos;
|
|
||||||
import net.minecraft.core.Direction;
|
import net.minecraft.core.Direction;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.entity.Pose;
|
import net.minecraft.world.entity.Pose;
|
||||||
import net.minecraft.world.level.block.BedBlock;
|
|
||||||
import net.minecraft.world.level.block.state.BlockState;
|
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.joml.Matrix4f;
|
import org.joml.Matrix4f;
|
||||||
import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
||||||
@@ -27,24 +24,18 @@ public class EllieRenderer extends GeoEntityRenderer<EllieEntity> {
|
|||||||
@Override
|
@Override
|
||||||
protected void applyRotations(EllieEntity entity, PoseStack poseStack, float tick, float yRot, float partialTick) {
|
protected void applyRotations(EllieEntity entity, PoseStack poseStack, float tick, float yRot, float partialTick) {
|
||||||
if (entity.getPose() == Pose.SLEEPING) {
|
if (entity.getPose() == Pose.SLEEPING) {
|
||||||
BlockPos bedPos = entity.getBedPos();
|
Direction bedDir = entity.getBedOrientation();
|
||||||
if (bedPos != null) {
|
if (bedDir != null) {
|
||||||
BlockState state = entity.level().getBlockState(bedPos);
|
poseStack.translate(
|
||||||
if (state.getBlock() instanceof BedBlock) {
|
-bedDir.getStepX() * 1.847,
|
||||||
Direction facing = state.getValue(BedBlock.FACING);
|
0.0F,
|
||||||
float angle = switch (facing) {
|
-bedDir.getStepZ() * 1.847
|
||||||
case SOUTH -> 90;
|
);
|
||||||
case WEST -> 0;
|
poseStack.mulPose(Axis.YP.rotationDegrees(bedDir.toYRot()));
|
||||||
case NORTH -> 270;
|
poseStack.mulPose(Axis.XP.rotationDegrees(90.0F));
|
||||||
case EAST -> 180;
|
poseStack.mulPose(Axis.ZP.rotationDegrees(180.0F));
|
||||||
default -> 180;
|
|
||||||
};
|
|
||||||
poseStack.mulPose(Axis.YP.rotationDegrees(angle));
|
|
||||||
poseStack.mulPose(Axis.ZP.rotationDegrees(90));
|
|
||||||
poseStack.mulPose(Axis.YP.rotationDegrees(270));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
super.applyRotations(entity, poseStack, tick, yRot, partialTick);
|
super.applyRotations(entity, poseStack, tick, yRot, partialTick);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13897,14 +13897,6 @@
|
|||||||
"loop": true,
|
"loop": true,
|
||||||
"animation_length": 2.25,
|
"animation_length": 2.25,
|
||||||
"bones": {
|
"bones": {
|
||||||
"root": {
|
|
||||||
"rotation": {
|
|
||||||
"vector": [90, 0, -180]
|
|
||||||
},
|
|
||||||
"position": {
|
|
||||||
"vector": [0, 9.1, 9]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"torso": {
|
"torso": {
|
||||||
"rotation": {
|
"rotation": {
|
||||||
"0.0833": {
|
"0.0833": {
|
||||||
|
|||||||
Reference in New Issue
Block a user