Chorus forest slimes & math fixes

This commit is contained in:
paulevsGitch 2021-01-13 04:51:17 +03:00
parent 56d7a2b7c3
commit e09d1d2235
7 changed files with 14 additions and 6 deletions

View file

@ -190,6 +190,10 @@ public class EntityEndSlime extends SlimeEntity {
return this.dataTracker.get(VARIANT) == 3;
}
public boolean isChorus() {
return this.dataTracker.get(VARIANT) == 0;
}
public static boolean canSpawn(EntityType<EntityEndSlime> type, ServerWorldAccess world, SpawnReason spawnReason, BlockPos pos, Random random) {
return random.nextInt(64) == 0 || isPermanentBiome(world, pos) || (notManyEntities(world, pos, 32, 3) && isWaterNear(world, pos, 32, 8));
}

View file

@ -8,6 +8,7 @@ import net.minecraft.client.render.VertexConsumer;
import net.minecraft.client.render.entity.model.CompositeEntityModel;
import net.minecraft.client.util.math.MatrixStack;
import ru.betterend.entity.EntityEndSlime;
import ru.betterend.util.MHelper;
public class EndSlimeEntityModel<T extends EntityEndSlime> extends CompositeEntityModel<T> {
private final ModelPart flower;
@ -39,7 +40,7 @@ public class EndSlimeEntityModel<T extends EntityEndSlime> extends CompositeEnti
for (int i = 0; i < 4; i++) {
ModelPart petalRot = new ModelPart(this);
petalRot.yaw = i * 45F;
petalRot.yaw = MHelper.degreesToRadians(i * 45F);
ModelPart petal = new ModelPart(this, 40, 0);
petal.setPivot(-4, 8, 0);
@ -51,7 +52,7 @@ public class EndSlimeEntityModel<T extends EntityEndSlime> extends CompositeEnti
for (int i = 0; i < 2; i++) {
ModelPart petalRot = new ModelPart(this);
petalRot.yaw = i * 90F + 45F;
petalRot.yaw = MHelper.degreesToRadians(i * 90F + 45F);
ModelPart petal = new ModelPart(this, 40, 0);
petal.setPivot(-4, 8, 0);

View file

@ -76,7 +76,7 @@ public class RendererEntityEndSlime extends MobEntityRenderer<EntityEndSlime, En
VertexConsumer vertexConsumer = vertexConsumerProvider.getBuffer(RenderLayer.getEntityCutout(this.getTexture(livingEntity)));
this.getContextModel().renderFlower(matrixStack, vertexConsumer, i, LivingEntityRenderer.getOverlay(livingEntity, 0.0F));
}
else if (livingEntity.isAmber()) {
else if (livingEntity.isAmber() || livingEntity.isChorus()) {
VertexConsumer vertexConsumer = vertexConsumerProvider.getBuffer(RenderLayer.getEntityCutout(this.getTexture(livingEntity)));
this.getContextModel().renderCrop(matrixStack, vertexConsumer, i, LivingEntityRenderer.getOverlay(livingEntity, 0.0F));
}