修复M870和M1895不播放动画的bug
This commit is contained in:
parent
bd647f2a4e
commit
9afbc97ab5
2 changed files with 88 additions and 0 deletions
|
@ -1,17 +1,61 @@
|
||||||
package net.mcreator.target.client.renderer.item;
|
package net.mcreator.target.client.renderer.item;
|
||||||
|
|
||||||
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
|
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||||
import net.mcreator.target.item.gun.M870Item;
|
import net.mcreator.target.item.gun.M870Item;
|
||||||
import net.mcreator.target.client.layer.M870Layer;
|
import net.mcreator.target.client.layer.M870Layer;
|
||||||
import net.mcreator.target.client.model.item.M870ItemModel;
|
import net.mcreator.target.client.model.item.M870ItemModel;
|
||||||
|
import net.minecraft.client.renderer.MultiBufferSource;
|
||||||
|
import net.minecraft.client.renderer.RenderType;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
import net.minecraft.world.item.ItemDisplayContext;
|
||||||
|
import net.minecraft.world.item.ItemStack;
|
||||||
|
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||||
import software.bernie.geckolib.renderer.GeoItemRenderer;
|
import software.bernie.geckolib.renderer.GeoItemRenderer;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
|
public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
|
||||||
public M870ItemRenderer() {
|
public M870ItemRenderer() {
|
||||||
super(new M870ItemModel());
|
super(new M870ItemModel());
|
||||||
this.addRenderLayer(new M870Layer(this));
|
this.addRenderLayer(new M870Layer(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public RenderType getRenderType(M870Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
|
||||||
|
return RenderType.entityTranslucent(getTextureLocation(animatable));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
|
||||||
|
protected boolean renderArms = false;
|
||||||
|
protected MultiBufferSource currentBuffer;
|
||||||
|
protected RenderType renderType;
|
||||||
|
public ItemDisplayContext transformType;
|
||||||
|
protected M870Item animatable;
|
||||||
|
private final Set<String> hiddenBones = new HashSet<>();
|
||||||
|
private final Set<String> suppressedBones = new HashSet<>();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
|
||||||
|
this.transformType = transformType;
|
||||||
|
if (this.animatable != null)
|
||||||
|
this.animatable.getTransformType(transformType);
|
||||||
|
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actuallyRender(PoseStack matrixStackIn, M870Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
|
||||||
|
int packedOverlayIn, float red, float green, float blue, float alpha) {
|
||||||
|
this.currentBuffer = renderTypeBuffer;
|
||||||
|
this.renderType = type;
|
||||||
|
this.animatable = animatable;
|
||||||
|
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
|
||||||
|
if (this.renderArms) {
|
||||||
|
this.renderArms = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ResourceLocation getTextureLocation(M870Item instance) {
|
public ResourceLocation getTextureLocation(M870Item instance) {
|
||||||
return super.getTextureLocation(instance);
|
return super.getTextureLocation(instance);
|
||||||
|
|
|
@ -1,17 +1,61 @@
|
||||||
package net.mcreator.target.client.renderer.item;
|
package net.mcreator.target.client.renderer.item;
|
||||||
|
|
||||||
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
|
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||||
import net.mcreator.target.item.gun.MarlinItem;
|
import net.mcreator.target.item.gun.MarlinItem;
|
||||||
import net.mcreator.target.client.layer.MarlinLayer;
|
import net.mcreator.target.client.layer.MarlinLayer;
|
||||||
import net.mcreator.target.client.model.item.MarlinItemModel;
|
import net.mcreator.target.client.model.item.MarlinItemModel;
|
||||||
|
import net.minecraft.client.renderer.MultiBufferSource;
|
||||||
|
import net.minecraft.client.renderer.RenderType;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
import net.minecraft.world.item.ItemDisplayContext;
|
||||||
|
import net.minecraft.world.item.ItemStack;
|
||||||
|
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||||
import software.bernie.geckolib.renderer.GeoItemRenderer;
|
import software.bernie.geckolib.renderer.GeoItemRenderer;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
public class MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
|
public class MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
|
||||||
public MarlinItemRenderer() {
|
public MarlinItemRenderer() {
|
||||||
super(new MarlinItemModel());
|
super(new MarlinItemModel());
|
||||||
this.addRenderLayer(new MarlinLayer(this));
|
this.addRenderLayer(new MarlinLayer(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public RenderType getRenderType(MarlinItem animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
|
||||||
|
return RenderType.entityTranslucent(getTextureLocation(animatable));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
|
||||||
|
protected boolean renderArms = false;
|
||||||
|
protected MultiBufferSource currentBuffer;
|
||||||
|
protected RenderType renderType;
|
||||||
|
public ItemDisplayContext transformType;
|
||||||
|
protected MarlinItem animatable;
|
||||||
|
private final Set<String> hiddenBones = new HashSet<>();
|
||||||
|
private final Set<String> suppressedBones = new HashSet<>();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
|
||||||
|
this.transformType = transformType;
|
||||||
|
if (this.animatable != null)
|
||||||
|
this.animatable.getTransformType(transformType);
|
||||||
|
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actuallyRender(PoseStack matrixStackIn, MarlinItem animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
|
||||||
|
int packedOverlayIn, float red, float green, float blue, float alpha) {
|
||||||
|
this.currentBuffer = renderTypeBuffer;
|
||||||
|
this.renderType = type;
|
||||||
|
this.animatable = animatable;
|
||||||
|
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
|
||||||
|
if (this.renderArms) {
|
||||||
|
this.renderArms = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ResourceLocation getTextureLocation(MarlinItem instance) {
|
public ResourceLocation getTextureLocation(MarlinItem instance) {
|
||||||
return super.getTextureLocation(instance);
|
return super.getTextureLocation(instance);
|
||||||
|
|
Loading…
Add table
Reference in a new issue