diff --git a/common/src/main/java/org/dimdev/dimdoors/client/MonolithModel.java b/common/src/main/java/org/dimdev/dimdoors/client/MonolithModel.java index 730ac0f5..0d9bfd99 100644 --- a/common/src/main/java/org/dimdev/dimdoors/client/MonolithModel.java +++ b/common/src/main/java/org/dimdev/dimdoors/client/MonolithModel.java @@ -4,6 +4,7 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; +import net.minecraft.client.Minecraft; import net.minecraft.client.model.EntityModel; import net.minecraft.client.model.geom.ModelPart; import net.minecraft.client.model.geom.PartPose; @@ -17,6 +18,8 @@ import org.dimdev.dimdoors.entity.MonolithEntity; @Environment(EnvType.CLIENT) public class MonolithModel extends EntityModel { private final ModelPart body; + private int aggro; + private int id; public MonolithModel(EntityRendererProvider.Context context) { super(MyRenderLayer::getMonolith); @@ -26,54 +29,38 @@ public class MonolithModel extends EntityModel { public static LayerDefinition getTexturedModelData() { MeshDefinition modelData = new MeshDefinition(); PartDefinition modelPartData = modelData.getRoot(); - modelPartData.addOrReplaceChild("body", CubeListBuilder.create().texOffs(0, 0).addBox(-23.5F, -23.5F, 0, 49.0F, 49.0F, 1.0F, false), PartPose.ZERO); - return LayerDefinition.create(modelData, 102, 51); + modelPartData.addOrReplaceChild("body", CubeListBuilder.create().texOffs(1, 0).addBox(-23.5F, -54, -6, 47, 108, 12, false), PartPose.ZERO); + return LayerDefinition.create(modelData, 128, 128); } @Override public void renderToBuffer(PoseStack matrixStack, VertexConsumer consumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { - matrixStack.pushPose(); - matrixStack.scale(3.0625f, 3.0625f, 3.0625f); - PoseStack.Pose entry = matrixStack.last(); + final float minScaling = 0; + final float maxScaling = 0.001f; - consumer.vertex(entry.pose(), -1, -0.5f, 0) - .color(red, green, blue, alpha) - .uv(0,0) - .overlayCoords(packedOverlay) - .uv2(packedLight) - .normal(entry.normal(), 0, 0, 1) - .endVertex(); - consumer.vertex(entry.pose(), -1, 0.5f, 0) - .color(red, green, blue, alpha) - .uv(0, 1) - .overlayCoords(packedOverlay) - .uv2(packedLight) - .normal(entry.normal(), 0, 0, 1) - .endVertex(); - consumer.vertex(entry.pose(), 1, 0.5f, 0) - .color(red, green, blue, alpha) - .uv(1,1) - .overlayCoords(packedOverlay) - .uv2(packedLight) - .normal(entry.normal(), 0, 0, 1) - .endVertex(); - consumer.vertex(entry.pose(), 1, -0.5f, 0) - .color(red, green, blue, alpha) - .uv(1, 0) - .overlayCoords(packedOverlay) - .uv2(packedLight) - .normal(entry.normal(), 0, 0, 1) - .endVertex(); + // Use linear interpolation to scale how much jitter we want for our given aggro level + float aggroScaling = minScaling + (maxScaling - minScaling) * aggro; - matrixStack.popPose(); + // Calculate jitter - include entity ID to give Monoliths individual jitters + float time = ((Minecraft.getInstance().getFrameTimeNs() + 0xF1234568 * id) % 200000) / 50.0F; + // We use random constants here on purpose just to get different wave forms + var jitterX = (float) (aggroScaling * Math.sin(1.1f * time) * Math.sin(0.8f * time)); + var jitterY = (float) (aggroScaling * Math.sin(1.2f * time) * Math.sin(0.9f * time)); + var jitterZ = (float) (aggroScaling * Math.sin(1.3f * time) * Math.sin(0.7f * time)); -// this.body.render(matrixStack, consumer, packedLight, packedOverlay); + matrixStack.pushPose(); + matrixStack.translate(jitterX, jitterY, jitterZ); + this.body.render(matrixStack, consumer, packedLight, packedOverlay); + matrixStack.popPose(); } - @Override - public void setupAnim(MonolithEntity entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { + @Override + public void setupAnim(MonolithEntity monolith, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { this.body.yRot = netHeadYaw * 0.017453292F; this.body.xRot = headPitch * 0.017453292F; + + this.aggro = monolith.getAggro(); + this.id = monolith.getId(); } } diff --git a/common/src/main/java/org/dimdev/dimdoors/client/MonolithRenderer.java b/common/src/main/java/org/dimdev/dimdoors/client/MonolithRenderer.java index b0847aab..8d0987ae 100644 --- a/common/src/main/java/org/dimdev/dimdoors/client/MonolithRenderer.java +++ b/common/src/main/java/org/dimdev/dimdoors/client/MonolithRenderer.java @@ -3,6 +3,7 @@ package org.dimdev.dimdoors.client; import com.mojang.blaze3d.vertex.PoseStack; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; +import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.entity.MobRenderer; import net.minecraft.resources.ResourceLocation; @@ -15,28 +16,52 @@ import java.util.stream.Stream; @Environment(EnvType.CLIENT) public class MonolithRenderer extends MobRenderer { - public static final List MONOLITH_TEXTURES = Stream.of( - DimensionalDoors.id("textures/mob/monolith/monolith0.png"), - DimensionalDoors.id("textures/mob/monolith/monolith1.png"), - DimensionalDoors.id("textures/mob/monolith/monolith2.png"), - DimensionalDoors.id("textures/mob/monolith/monolith3.png"), - DimensionalDoors.id("textures/mob/monolith/monolith4.png"), - DimensionalDoors.id("textures/mob/monolith/monolith5.png"), - DimensionalDoors.id("textures/mob/monolith/monolith6.png"), - DimensionalDoors.id("textures/mob/monolith/monolith7.png"), - DimensionalDoors.id("textures/mob/monolith/monolith8.png"), - DimensionalDoors.id("textures/mob/monolith/monolith9.png"), - DimensionalDoors.id("textures/mob/monolith/monolith10.png"), - DimensionalDoors.id("textures/mob/monolith/monolith11.png"), - DimensionalDoors.id("textures/mob/monolith/monolith12.png"), - DimensionalDoors.id("textures/mob/monolith/monolith13.png"), - DimensionalDoors.id("textures/mob/monolith/monolith14.png"), - DimensionalDoors.id("textures/mob/monolith/monolith15.png"), - DimensionalDoors.id("textures/mob/monolith/monolith16.png"), - DimensionalDoors.id("textures/mob/monolith/monolith17.png"), - DimensionalDoors.id("textures/mob/monolith/monolith18.png") + public static final List TRANSPARENT = Stream.of( + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_0.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_1.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_2.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_3.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_4.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_5.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_6.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_7.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_8.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_9.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_10.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_11.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_12.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_13.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_14.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_15.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_16.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_17.png"), + DimensionalDoors.id("textures/mob/monolith/transparent/monolith_18.png") ).collect(Collectors.toList()); + public static final List SOLID = Stream.of( + DimensionalDoors.id("textures/mob/monolith/solid/monolith_0.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_1.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_2.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_3.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_4.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_5.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_6.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_7.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_8.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_9.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_10.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_11.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_12.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_13.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_14.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_15.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_16.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_17.png"), + DimensionalDoors.id("textures/mob/monolith/solid/monolith_18.png") + ).collect(Collectors.toList()); + + + private static MonolithModel INSTANCE; public MonolithRenderer(EntityRendererProvider.Context ctx) { @@ -52,13 +77,25 @@ public class MonolithRenderer extends MobRenderer matrices.scale(entity.getScale(), entity.getScale(), entity.getScale()); } - @Override + @Override + public void render(MonolithEntity entity, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource buffer, int packedLight) { + if(entity.getSolid()) { + poseStack.pushPose(); + + super.render(entity, entityYaw, partialTicks, poseStack, buffer, packedLight); + + poseStack.popPose(); + + } + } + + @Override protected boolean shouldShowName(MonolithEntity mobEntity) { return false; } @Override public ResourceLocation getTextureLocation(MonolithEntity entity) { - return MonolithRenderer.MONOLITH_TEXTURES.get(entity.getTextureState()); + return SOLID.get(entity.getTextureState()); } } diff --git a/common/src/main/java/org/dimdev/dimdoors/client/MyRenderLayer.java b/common/src/main/java/org/dimdev/dimdoors/client/MyRenderLayer.java index f7760f04..ec3a5962 100644 --- a/common/src/main/java/org/dimdev/dimdoors/client/MyRenderLayer.java +++ b/common/src/main/java/org/dimdev/dimdoors/client/MyRenderLayer.java @@ -1,6 +1,7 @@ package org.dimdev.dimdoors.client; import com.flowpowered.math.vector.VectorNi; +import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.DefaultVertexFormat; import com.mojang.blaze3d.vertex.VertexFormat; @@ -71,11 +72,10 @@ public class MyRenderLayer extends RenderType { public static RenderType getMonolith(ResourceLocation texture) { RenderType.CompositeState multiPhaseParameters = RenderType.CompositeState.builder().setTextureState(new TextureStateShard(texture, false, false)) - .setShaderState(new ShaderStateShard(GameRenderer::getRendertypeEntityTranslucentShader)) - .setTransparencyState(RenderStateShard.TRANSLUCENT_TRANSPARENCY) - .setCullState(RenderStateShard.NO_CULL) + .setShaderState(new ShaderStateShard(GameRenderer::getRendertypeEntitySolidShader)) + .setTransparencyState(RenderStateShard.NO_TRANSPARENCY) +// .setCullState(RenderStateShard.NO_CULL) .setLightmapState(RenderStateShard.LIGHTMAP) - .setDepthTestState(RenderStateShard.NO_DEPTH_TEST) .setOverlayState(RenderStateShard.OVERLAY).createCompositeState(false); return RenderType.create("monolith", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.QUADS, 256, true, true, multiPhaseParameters); } diff --git a/common/src/main/java/org/dimdev/dimdoors/entity/MonolithEntity.java b/common/src/main/java/org/dimdev/dimdoors/entity/MonolithEntity.java index d738120e..7ea8690d 100644 --- a/common/src/main/java/org/dimdev/dimdoors/entity/MonolithEntity.java +++ b/common/src/main/java/org/dimdev/dimdoors/entity/MonolithEntity.java @@ -39,6 +39,8 @@ public class MonolithEntity extends Mob { private static final EntityDataAccessor AGGRO = SynchedEntityData.defineId(MonolithEntity.class, EntityDataSerializers.INT); private static final EntityDataAccessor SCALE = SynchedEntityData.defineId(MonolithEntity.class, EntityDataSerializers.FLOAT); private static final EntityDataAccessor PITCH = SynchedEntityData.defineId(MonolithEntity.class, EntityDataSerializers.FLOAT); + private static final EntityDataAccessor SOLID = SynchedEntityData.defineId(MonolithEntity.class, EntityDataSerializers.BOOLEAN); + private static final float EYE_HEIGHT_PERCENTAGE = 0.55f; private int soundTime = 0; @@ -113,6 +115,7 @@ public class MonolithEntity extends Mob { this.entityData.define(AGGRO, 0); this.entityData.define(SCALE, 1f); this.entityData.define(PITCH, 1f); + this.entityData.define(SOLID, true); this.refreshDimensions(); } @@ -261,9 +264,21 @@ public class MonolithEntity extends Mob { if (nbt.contains("pitch", Tag.TAG_FLOAT)) { setPitch(nbt.getFloat("pitch")); } + + if (nbt.contains("solid", Tag.TAG_BYTE)) { + setSolid(nbt.getBoolean("solid")); + } } - public int getAggro() { + private void setSolid(boolean solid) { + this.entityData.set(SOLID, solid); + } + + public boolean getSolid() { + return this.entityData.get(SOLID); + } + + public int getAggro() { return this.entityData.get(AGGRO); } diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith0.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith0.png deleted file mode 100644 index cadb1e65..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith0.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith1.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith1.png deleted file mode 100644 index 613a29e0..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith1.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith10.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith10.png deleted file mode 100644 index 0f8eaf94..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith10.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith11.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith11.png deleted file mode 100644 index 81c16944..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith11.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith12.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith12.png deleted file mode 100644 index 342247ad..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith12.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith13.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith13.png deleted file mode 100644 index 5c67c371..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith13.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith14.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith14.png deleted file mode 100644 index fb89f88f..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith14.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith15.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith15.png deleted file mode 100644 index 7e582f4f..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith15.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith16.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith16.png deleted file mode 100644 index ab50d78d..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith16.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith17.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith17.png deleted file mode 100644 index 0bc12cba..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith17.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith18.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith18.png deleted file mode 100644 index 02ea0273..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith18.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith2.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith2.png deleted file mode 100644 index 8e9daba4..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith2.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith3.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith3.png deleted file mode 100644 index 00d294ae..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith3.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith4.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith4.png deleted file mode 100644 index 94f284a7..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith4.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith5.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith5.png deleted file mode 100644 index 65f2a897..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith5.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith6.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith6.png deleted file mode 100644 index f4683c7a..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith6.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith7.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith7.png deleted file mode 100644 index 00710df2..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith7.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith8.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith8.png deleted file mode 100644 index 0e7a888a..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith8.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith9.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith9.png deleted file mode 100644 index 4b76f079..00000000 Binary files a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/monolith9.png and /dev/null differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_0.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_0.png new file mode 100644 index 00000000..d5d13567 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_0.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_1.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_1.png new file mode 100644 index 00000000..54464bd8 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_1.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_10.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_10.png new file mode 100644 index 00000000..5b421e06 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_10.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_11.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_11.png new file mode 100644 index 00000000..aaa6c0d5 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_11.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_12.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_12.png new file mode 100644 index 00000000..48c46724 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_12.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_13.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_13.png new file mode 100644 index 00000000..3ddca0f4 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_13.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_14.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_14.png new file mode 100644 index 00000000..2056a48f Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_14.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_15.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_15.png new file mode 100644 index 00000000..e788978d Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_15.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_16.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_16.png new file mode 100644 index 00000000..6eee0d32 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_16.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_17.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_17.png new file mode 100644 index 00000000..97c87056 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_17.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_18.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_18.png new file mode 100644 index 00000000..a82c19bb Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_18.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_2.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_2.png new file mode 100644 index 00000000..d70a9844 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_2.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_3.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_3.png new file mode 100644 index 00000000..be9d89bf Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_3.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_4.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_4.png new file mode 100644 index 00000000..8a56d8fb Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_4.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_5.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_5.png new file mode 100644 index 00000000..7af927b2 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_5.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_6.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_6.png new file mode 100644 index 00000000..e13fe5f3 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_6.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_7.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_7.png new file mode 100644 index 00000000..7453b493 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_7.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_8.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_8.png new file mode 100644 index 00000000..bd46437e Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_8.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_9.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_9.png new file mode 100644 index 00000000..69f2255e Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/solid/monolith_9.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_0.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_0.png new file mode 100644 index 00000000..a505392e Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_0.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_1.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_1.png new file mode 100644 index 00000000..11e1fd79 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_1.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_10.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_10.png new file mode 100644 index 00000000..05a9de28 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_10.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_11.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_11.png new file mode 100644 index 00000000..932bd278 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_11.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_12.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_12.png new file mode 100644 index 00000000..d74c712f Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_12.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_13.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_13.png new file mode 100644 index 00000000..a902c372 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_13.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_14.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_14.png new file mode 100644 index 00000000..a9184ab4 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_14.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_15.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_15.png new file mode 100644 index 00000000..a8854b90 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_15.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_16.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_16.png new file mode 100644 index 00000000..50486d97 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_16.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_17.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_17.png new file mode 100644 index 00000000..aac0f89d Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_17.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_18.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_18.png new file mode 100644 index 00000000..ef7ec2a0 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_18.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_2.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_2.png new file mode 100644 index 00000000..46f02beb Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_2.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_3.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_3.png new file mode 100644 index 00000000..b3f93660 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_3.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_4.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_4.png new file mode 100644 index 00000000..b561ee14 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_4.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_5.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_5.png new file mode 100644 index 00000000..3dcadc20 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_5.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_6.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_6.png new file mode 100644 index 00000000..549d1829 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_6.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_7.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_7.png new file mode 100644 index 00000000..b3cb1ada Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_7.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_8.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_8.png new file mode 100644 index 00000000..4c53ceaa Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_8.png differ diff --git a/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_9.png b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_9.png new file mode 100644 index 00000000..4bb84bb8 Binary files /dev/null and b/common/src/main/resources/assets/dimdoors/textures/mob/monolith/transparent/monolith_9.png differ