diff --git a/src/main/java/net/mcreator/superbwarfare/entity/ProjectileEntity.java b/src/main/java/net/mcreator/superbwarfare/entity/ProjectileEntity.java index 4ecd6a7e5..8dee89a10 100644 --- a/src/main/java/net/mcreator/superbwarfare/entity/ProjectileEntity.java +++ b/src/main/java/net/mcreator/superbwarfare/entity/ProjectileEntity.java @@ -85,6 +85,8 @@ public class ProjectileEntity extends Entity implements IEntityAdditionalSpawnDa private float bypassArmorRate = 0.0f; private float undeadMultiple = 1.0f; + public float[] rgb = {1, 222 / 255f, 39 / 255f}; + public ProjectileEntity(EntityType p_i50159_1_, Level p_i50159_2_) { super(p_i50159_1_, p_i50159_2_); } @@ -679,4 +681,9 @@ public class ProjectileEntity extends Entity implements IEntityAdditionalSpawnDa this.undeadMultiple = undeadMultiple; return this; } + + public ProjectileEntity rgb(float[] rgb) { + this.rgb = rgb; + return this; + } } diff --git a/src/main/java/net/mcreator/superbwarfare/entity/layer/ProjectileEntityLayer.java b/src/main/java/net/mcreator/superbwarfare/entity/layer/ProjectileEntityLayer.java index 26aa1fa71..41c768e45 100644 --- a/src/main/java/net/mcreator/superbwarfare/entity/layer/ProjectileEntityLayer.java +++ b/src/main/java/net/mcreator/superbwarfare/entity/layer/ProjectileEntityLayer.java @@ -13,15 +13,18 @@ import software.bernie.geckolib.renderer.GeoRenderer; import software.bernie.geckolib.renderer.layer.GeoRenderLayer; public class ProjectileEntityLayer extends GeoRenderLayer { - private static final ResourceLocation LAYER = new ResourceLocation(ModUtils.MODID, "textures/entity/projectile_entity.png"); + private static final ResourceLocation LAYER = new ResourceLocation(ModUtils.MODID, "textures/entity/projectile_entity.png"); - public ProjectileEntityLayer(GeoRenderer entityRenderer) { - super(entityRenderer); - } + public ProjectileEntityLayer(GeoRenderer entityRenderer) { + super(entityRenderer); + } - @Override - public void render(PoseStack poseStack, ProjectileEntity animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) { - RenderType glowRenderType = RenderType.eyes(LAYER); - getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 1, 1, 1, 1); - } + // TODO 实现更合理的layer渲染 + @Override + public void render(PoseStack poseStack, ProjectileEntity animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) { + RenderType glowRenderType = RenderType.eyes(LAYER); + getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), + partialTick, packedLight, OverlayTexture.NO_OVERLAY, + animatable.rgb[0], animatable.rgb[1], animatable.rgb[2], 0.8f); + } } diff --git a/src/main/java/net/mcreator/superbwarfare/perk/AmmoPerk.java b/src/main/java/net/mcreator/superbwarfare/perk/AmmoPerk.java index ade32de43..a6d3fb3a3 100644 --- a/src/main/java/net/mcreator/superbwarfare/perk/AmmoPerk.java +++ b/src/main/java/net/mcreator/superbwarfare/perk/AmmoPerk.java @@ -4,6 +4,7 @@ import net.minecraft.util.Mth; public class AmmoPerk extends Perk { public float bypassArmorRate = 0.0f; + public float[] rgb = {1, 222 / 255f, 39 / 255f}; public AmmoPerk(String descriptionId, Type type) { super(descriptionId, type); @@ -13,4 +14,9 @@ public class AmmoPerk extends Perk { super(descriptionId, type); this.bypassArmorRate = Mth.clamp(bypassArmorRate, -1, 1); } + + public AmmoPerk rgb(float[] rgb) { + this.rgb = rgb; + return this; + } }