From e2fb8b12a9a98c384feefe8069df9b735e3b2ca6 Mon Sep 17 00:00:00 2001 From: Flanks255 <32142731+Flanks255@users.noreply.github.com> Date: Sun, 15 Jan 2023 17:47:13 -0600 Subject: [PATCH] fixed the worm. --- .../mod/ActuallyAdditionsClient.java | 5 ++++- .../mod/entity/EntityWorm.java | 4 +++- .../mod/entity/RenderWorm.java | 21 +++---------------- .../textures/item/worm.png.mcmeta | 6 +++--- 4 files changed, 13 insertions(+), 23 deletions(-) diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/ActuallyAdditionsClient.java b/src/main/java/de/ellpeck/actuallyadditions/mod/ActuallyAdditionsClient.java index ea78eee2a..3a5f7681d 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/ActuallyAdditionsClient.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/ActuallyAdditionsClient.java @@ -12,6 +12,7 @@ package de.ellpeck.actuallyadditions.mod; import de.ellpeck.actuallyadditions.mod.blocks.ActuallyBlocks; import de.ellpeck.actuallyadditions.mod.blocks.render.*; +import de.ellpeck.actuallyadditions.mod.entity.EntityWorm; import de.ellpeck.actuallyadditions.mod.entity.InitEntities; import de.ellpeck.actuallyadditions.mod.entity.RenderWorm; import de.ellpeck.actuallyadditions.mod.event.ClientEvents; @@ -29,6 +30,7 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockRayTraceResult; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.client.registry.ClientRegistry; +import net.minecraftforge.fml.client.registry.RenderingRegistry; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; public class ActuallyAdditionsClient { @@ -60,7 +62,6 @@ public class ActuallyAdditionsClient { ScreenManager.register(ActuallyContainers.RANGED_COLLECTOR_CONTAINER.get(), GuiRangedCollector::new); ScreenManager.register(ActuallyContainers.XPSOLIDIFIER_CONTAINER.get(), GuiXPSolidifier::new); // From old proxy - InitEntities.initClient(); MinecraftForge.EVENT_BUS.register(new ClientEvents()); MinecraftForge.EVENT_BUS.register(new ClientRegistryHandler()); MinecraftForge.EVENT_BUS.register(new SpecialRenderInit()); @@ -99,6 +100,8 @@ public class ActuallyAdditionsClient { ClientRegistry.bindTileEntityRenderer(ActuallyBlocks.LASER_RELAY_ITEM.getTileEntityType(), RenderLaserRelay::new); ClientRegistry.bindTileEntityRenderer(ActuallyBlocks.LASER_RELAY_ITEM_ADVANCED.getTileEntityType(), RenderLaserRelay::new); ClientRegistry.bindTileEntityRenderer(ActuallyBlocks.LASER_RELAY_FLUIDS.getTileEntityType(), RenderLaserRelay::new); + + RenderingRegistry.registerEntityRenderingHandler(ActuallyAdditions.ENTITY_WORM.get(), RenderWorm::new); } // TODO: [port] validate that this works diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/entity/EntityWorm.java b/src/main/java/de/ellpeck/actuallyadditions/mod/entity/EntityWorm.java index 2ab90f862..b716a3559 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/entity/EntityWorm.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/entity/EntityWorm.java @@ -17,11 +17,13 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.EntityType; import net.minecraft.nbt.CompoundNBT; import net.minecraft.network.IPacket; +import net.minecraft.network.play.server.SSpawnObjectPacket; import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import net.minecraft.world.server.ServerWorld; import net.minecraftforge.common.IPlantable; +import net.minecraftforge.fml.network.NetworkHooks; public class EntityWorm extends Entity { @@ -128,6 +130,6 @@ public class EntityWorm extends Entity { @Override public IPacket getAddEntityPacket() { - return null; + return NetworkHooks.getEntitySpawningPacket(this); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/entity/RenderWorm.java b/src/main/java/de/ellpeck/actuallyadditions/mod/entity/RenderWorm.java index d32cc6e2d..a1837ee38 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/entity/RenderWorm.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/entity/RenderWorm.java @@ -23,6 +23,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import net.minecraft.util.Util; import net.minecraft.util.math.vector.Quaternion; +import net.minecraft.util.math.vector.Vector3f; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; @@ -46,9 +47,8 @@ public class RenderWorm extends EntityRenderer { matrix.translate(0, 0.7F, 0); double boop = Util.getMillis() / 70D; - matrix.mulPose(new Quaternion(-(float) (boop % 360), 0, 1, 0)); - -// stack.getDisplayName() + matrix.mulPose(Vector3f.YP.rotationDegrees(-(float) (boop % 360))); + matrix.translate(0,0,0.4); Minecraft.getInstance().getItemRenderer().renderStatic( stack, ItemCameraTransforms.TransformType.FIXED, light, OverlayTexture.NO_OVERLAY, matrix, buffer ); @@ -56,21 +56,6 @@ public class RenderWorm extends EntityRenderer { matrix.popPose(); } -// @Override -// public void doRender(EntityWorm entity, double x, double y, double z, float entityYaw, float partialTicks) { -// GlStateManager.pushMatrix(); -// this.bindEntityTexture(entity); -// GlStateManager.translate(x, y + 0.7F, z); -// double boop = Minecraft.getSystemTime() / 70D; -// GlStateManager.rotate(-(float) (boop % 360), 0, 1, 0); -// GlStateManager.translate(0, 0, 0.4); -// -// stack.setStackDisplayName(entity.getName()); -// AssetUtil.renderItemInWorld(stack, combinedLightIn, combinedOverlayIn, matrices, buffer); -// -// GlStateManager.popMatrix(); -// } - @Override public ResourceLocation getTextureLocation(EntityWorm pEntity) { return PlayerContainer.BLOCK_ATLAS; diff --git a/src/main/resources/assets/actuallyadditions/textures/item/worm.png.mcmeta b/src/main/resources/assets/actuallyadditions/textures/item/worm.png.mcmeta index 84934a9d9..7153460ef 100644 --- a/src/main/resources/assets/actuallyadditions/textures/item/worm.png.mcmeta +++ b/src/main/resources/assets/actuallyadditions/textures/item/worm.png.mcmeta @@ -1,6 +1,6 @@ { - "animation": - { + "animation": + { "frametime": 3 - } + } }