将所有java模型的弹射物全部替换为geo模型
This commit is contained in:
parent
63dda01876
commit
7d6d2b6409
48 changed files with 1843 additions and 458 deletions
|
@ -1,43 +0,0 @@
|
|||
package com.atsuishio.superbwarfare.client.model.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.minecraft.client.model.EntityModel;
|
||||
import net.minecraft.client.model.geom.ModelLayerLocation;
|
||||
import net.minecraft.client.model.geom.ModelPart;
|
||||
import net.minecraft.client.model.geom.PartPose;
|
||||
import net.minecraft.client.model.geom.builders.*;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
|
||||
// Made with Blockbench 4.9.2
|
||||
// Exported for Minecraft version 1.17 or later with Mojang mappings
|
||||
// Paste this class into your mod and generate all required imports
|
||||
public class ModelGrenade<T extends Entity> extends EntityModel<T> {
|
||||
// This layer location should be baked with EntityRendererProvider.Context in
|
||||
// the entity renderer and passed into this model's constructor
|
||||
public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation(ModUtils.MODID, "model_grenade"), "main");
|
||||
public final ModelPart bone;
|
||||
|
||||
public ModelGrenade(ModelPart root) {
|
||||
this.bone = root.getChild("bone");
|
||||
}
|
||||
|
||||
public static LayerDefinition createBodyLayer() {
|
||||
MeshDefinition meshdefinition = new MeshDefinition();
|
||||
PartDefinition partdefinition = meshdefinition.getRoot();
|
||||
PartDefinition bone = partdefinition.addOrReplaceChild("bone", CubeListBuilder.create(), PartPose.offsetAndRotation(0.0F, 24.0F, 0.0F, 0.0F, 0.0F, 1.5708F));
|
||||
PartDefinition cube_r1 = bone.addOrReplaceChild("cube_r1", CubeListBuilder.create().texOffs(2, 2).addBox(-0.5F, -0.5F, -23.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, 0.0F, 1.5708F, 0.0F));
|
||||
return LayerDefinition.create(meshdefinition, 16, 16);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) {
|
||||
bone.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
}
|
|
@ -1,66 +0,0 @@
|
|||
package com.atsuishio.superbwarfare.client.model.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.minecraft.client.model.EntityModel;
|
||||
import net.minecraft.client.model.geom.ModelLayerLocation;
|
||||
import net.minecraft.client.model.geom.ModelPart;
|
||||
import net.minecraft.client.model.geom.PartPose;
|
||||
import net.minecraft.client.model.geom.builders.*;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public class ModelHandGrenade<T extends Entity> extends EntityModel<T> {
|
||||
// This layer location should be baked with EntityRendererProvider.Context in the entity renderer and passed into this model's constructor
|
||||
public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation(ModUtils.MODID, "model_hand_grenade"), "main");
|
||||
public final ModelPart group;
|
||||
|
||||
public ModelHandGrenade(ModelPart root) {
|
||||
this.group = root.getChild("group");
|
||||
}
|
||||
|
||||
public static LayerDefinition createBodyLayer() {
|
||||
MeshDefinition meshdefinition = new MeshDefinition();
|
||||
PartDefinition partdefinition = meshdefinition.getRoot();
|
||||
|
||||
PartDefinition group = partdefinition.addOrReplaceChild("group", CubeListBuilder.create().texOffs(6, 8).addBox(-0.4375F, 0.424F, -1.0258F, 0.875F, 0.3F, 1.075F, new CubeDeformation(0.0F))
|
||||
.texOffs(11, 13).addBox(-0.45F, -0.4283F, -1.0883F, 0.9F, 0.85F, 1.35F, new CubeDeformation(0.0F))
|
||||
.texOffs(13, 14).addBox(-0.45F, -0.4283F, 0.2617F, 0.9F, 0.85F, 0.3F, new CubeDeformation(0.0F))
|
||||
.texOffs(12, 15).addBox(-0.45F, 0.0717F, 0.5617F, 0.9F, 0.35F, 0.3F, new CubeDeformation(0.0F))
|
||||
.texOffs(11, 14).addBox(-0.45F, -0.2283F, 0.5617F, 0.9F, 0.3F, 0.2F, new CubeDeformation(0.0F))
|
||||
.texOffs(9, 13).addBox(-0.5F, -0.6283F, -1.5883F, 1.0F, 0.2F, 2.2F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -0.0217F, 0.4883F));
|
||||
|
||||
PartDefinition cube_r1 = group.addOrReplaceChild("cube_r1", CubeListBuilder.create().texOffs(11, 14).addBox(-1.5F, -0.2F, 1.5F, 1.0F, 1.0F, 0.2F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(1.0F, 0.207F, -0.8823F, 0.3927F, 0.0F, 0.0F));
|
||||
|
||||
PartDefinition cube_r2 = group.addOrReplaceChild("cube_r2", CubeListBuilder.create().texOffs(12, 14).addBox(-1.45F, -1.3391F, 0.4F, 0.9F, 0.9391F, 0.3508F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(1.0F, 0.9443F, -1.3048F, 0.3927F, 0.0F, 0.0F));
|
||||
|
||||
PartDefinition bone2 = group.addOrReplaceChild("bone2", CubeListBuilder.create(), PartPose.offset(0.0F, 2.0295F, -26.2164F));
|
||||
|
||||
PartDefinition bone178_r1 = bone2.addOrReplaceChild("bone178_r1", CubeListBuilder.create().texOffs(0, 8).addBox(-1.2976F, -0.5375F, -0.5375F, 2.5953F, 1.075F, 1.075F, new CubeDeformation(0.0F))
|
||||
.texOffs(10, 0).addBox(-0.5375F, -1.2976F, -0.5375F, 1.075F, 2.5953F, 1.075F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -0.0078F, 25.7281F, 0.0F, 0.0F, 0.7854F));
|
||||
|
||||
PartDefinition bone3 = group.addOrReplaceChild("bone3", CubeListBuilder.create().texOffs(0, 10).addBox(-0.5375F, -1.3054F, 25.1906F, 1.075F, 2.5953F, 1.075F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 2.0295F, -26.2164F));
|
||||
|
||||
PartDefinition bone179_r1 = bone3.addOrReplaceChild("bone179_r1", CubeListBuilder.create().texOffs(5, 1).addBox(-0.5375F, -0.5375F, -1.2976F, 1.075F, 1.075F, 2.5953F, new CubeDeformation(0.0F))
|
||||
.texOffs(7, 9).addBox(-0.5375F, -1.2976F, -0.5375F, 1.075F, 2.5953F, 1.075F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -0.0078F, 25.7281F, 0.7854F, 0.0F, 0.0F));
|
||||
|
||||
PartDefinition bone175 = group.addOrReplaceChild("bone175", CubeListBuilder.create().texOffs(7, 7).addBox(-1.2976F, -0.5453F, 25.1906F, 2.5953F, 1.075F, 1.075F, new CubeDeformation(0.0F))
|
||||
.texOffs(0, 4).addBox(-0.5375F, -0.5453F, 24.4305F, 1.075F, 1.075F, 2.5953F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 2.0295F, -26.2164F));
|
||||
|
||||
PartDefinition bone180_r1 = bone175.addOrReplaceChild("bone180_r1", CubeListBuilder.create().texOffs(0, 0).addBox(-0.5375F, -0.5375F, -1.2976F, 1.075F, 1.075F, 2.5953F, new CubeDeformation(0.0F))
|
||||
.texOffs(5, 5).addBox(-1.2976F, -0.5375F, -0.5375F, 2.5953F, 1.075F, 1.075F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -0.0078F, 25.7281F, 0.0F, 0.7854F, 0.0F));
|
||||
|
||||
return LayerDefinition.create(meshdefinition, 16, 16);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) {
|
||||
group.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
}
|
|
@ -1,81 +0,0 @@
|
|||
package com.atsuishio.superbwarfare.client.model.entity;
|
||||
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import net.minecraft.client.model.EntityModel;
|
||||
import net.minecraft.client.model.geom.ModelLayerLocation;
|
||||
import net.minecraft.client.model.geom.ModelPart;
|
||||
import net.minecraft.client.model.geom.PartPose;
|
||||
import net.minecraft.client.model.geom.builders.*;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
|
||||
// Made with Blockbench 4.9.4
|
||||
// Exported for Minecraft version 1.17 or later with Mojang mappings
|
||||
// Paste this class into your mod and generate all required imports
|
||||
public class ModelMortarShell<T extends Entity> extends EntityModel<T> {
|
||||
// This layer location should be baked with EntityRendererProvider.Context in
|
||||
// the entity renderer and passed into this model's constructor
|
||||
public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation(ModUtils.MODID, "modelmortar_shell_converted"), "main");
|
||||
public final ModelPart Rockets;
|
||||
|
||||
public ModelMortarShell(ModelPart root) {
|
||||
this.Rockets = root.getChild("Rockets");
|
||||
}
|
||||
|
||||
public static LayerDefinition createBodyLayer() {
|
||||
MeshDefinition meshdefinition = new MeshDefinition();
|
||||
PartDefinition partdefinition = meshdefinition.getRoot();
|
||||
PartDefinition Rockets = partdefinition.addOrReplaceChild("Rockets", CubeListBuilder.create(), PartPose.offsetAndRotation(0.0F, -24.7579F, 0.4535F, -1.5708F, 0.0F, 0.0F));
|
||||
PartDefinition octagon_r1 = Rockets.addOrReplaceChild("octagon_r1", CubeListBuilder.create().texOffs(6, 3).addBox(-1.3735F, -0.2401F, -1.5325F, 0.7465F, 0.4803F, 1.7605F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(1.8097F, 0.0033F, 5.8407F, 0.0F, 0.3927F, 0.0F));
|
||||
PartDefinition octagon_r2 = Rockets.addOrReplaceChild("octagon_r2", CubeListBuilder.create().texOffs(7, 0).addBox(0.627F, -0.2401F, -1.5325F, 0.7465F, 0.4803F, 1.7605F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(-1.8097F, 0.0033F, 5.8407F, 0.0F, -0.3927F, 0.0F));
|
||||
PartDefinition octagon_r3 = Rockets.addOrReplaceChild("octagon_r3", CubeListBuilder.create().texOffs(0, 8).addBox(-0.2401F, 0.627F, -1.4075F, 0.4803F, 0.684F, 1.6355F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, -0.0003F, 6.5823F, -0.3927F, 0.0F, 0.0F));
|
||||
PartDefinition octagon_r4 = Rockets.addOrReplaceChild("octagon_r4", CubeListBuilder.create().texOffs(4, 8).addBox(-0.2401F, -1.311F, -1.4075F, 0.4803F, 0.684F, 1.6355F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, -0.0003F, 6.5823F, 0.3927F, 0.0F, 0.0F));
|
||||
PartDefinition octagon_r5 = Rockets.addOrReplaceChild("octagon_r5",
|
||||
CubeListBuilder.create().texOffs(2, 0).addBox(-0.57F, -0.2361F, -4.1689F, 1.14F, 0.4722F, 2.85F, new CubeDeformation(0.0F)).texOffs(0, 3).addBox(-0.2361F, -0.57F, -4.1689F, 0.4722F, 1.14F, 2.85F, new CubeDeformation(0.0F))
|
||||
.texOffs(0, 15).addBox(-0.741F, -0.3069F, -3.4849F, 1.482F, 0.6139F, 1.824F, new CubeDeformation(0.0F)).texOffs(19, 0).addBox(-0.3069F, -0.741F, -3.4849F, 0.6139F, 1.482F, 1.824F, new CubeDeformation(0.0F)).texOffs(13, 13)
|
||||
.addBox(-0.912F, -0.3778F, -2.3449F, 1.824F, 0.7555F, 7.0265F, new CubeDeformation(0.0F)).texOffs(19, 0).addBox(-0.3778F, -0.912F, -2.3449F, 0.7555F, 1.824F, 7.0265F, new CubeDeformation(0.0F)).texOffs(29, 23)
|
||||
.addBox(-0.4486F, -1.083F, -1.3189F, 0.8972F, 2.166F, 5.066F, new CubeDeformation(0.0F)).texOffs(28, 0).addBox(-1.083F, -0.4486F, -1.3189F, 2.166F, 0.8972F, 5.066F, new CubeDeformation(0.0F)).texOffs(29, 30)
|
||||
.addBox(-1.254F, -0.5194F, -0.2929F, 2.508F, 1.0388F, 3.128F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-0.5194F, -1.254F, -0.2929F, 1.0388F, 2.508F, 3.128F, new CubeDeformation(0.0F)).texOffs(0, 8)
|
||||
.addBox(-1.425F, -0.5902F, 0.7331F, 2.85F, 1.1805F, 1.19F, new CubeDeformation(0.0F)).texOffs(7, 5).addBox(-0.5902F, -1.425F, 0.7331F, 1.1805F, 2.85F, 1.19F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, -0.0003F, -0.8848F, 0.0F, 0.0F, -0.3927F));
|
||||
PartDefinition octagon_r6 = Rockets.addOrReplaceChild("octagon_r6",
|
||||
CubeListBuilder.create().texOffs(4, 0).addBox(-0.57F, -0.2361F, -4.1689F, 1.14F, 0.4722F, 2.85F, new CubeDeformation(0.0F)).texOffs(0, 4).addBox(-0.2361F, -0.57F, -4.1689F, 0.4722F, 1.14F, 2.85F, new CubeDeformation(0.0F))
|
||||
.texOffs(11, 17).addBox(-0.741F, -0.3069F, -3.4849F, 1.482F, 0.6139F, 1.824F, new CubeDeformation(0.0F)).texOffs(19, 3).addBox(-0.3069F, -0.741F, -3.4849F, 0.6139F, 1.482F, 1.824F, new CubeDeformation(0.0F)).texOffs(0, 15)
|
||||
.addBox(-0.912F, -0.3778F, -2.3449F, 1.824F, 0.7555F, 7.0265F, new CubeDeformation(0.0F)).texOffs(11, 21).addBox(-0.3778F, -0.912F, -2.3449F, 0.7555F, 1.824F, 7.0265F, new CubeDeformation(0.0F)).texOffs(24, 9)
|
||||
.addBox(-1.083F, -0.4486F, -1.3189F, 2.166F, 0.8972F, 5.066F, new CubeDeformation(0.0F)).texOffs(9, 30).addBox(-0.4486F, -1.083F, -1.3189F, 0.8972F, 2.166F, 5.066F, new CubeDeformation(0.0F)).texOffs(0, 31)
|
||||
.addBox(-1.254F, -0.5194F, -0.2929F, 2.508F, 1.0388F, 3.128F, new CubeDeformation(0.0F)).texOffs(33, 6).addBox(-0.5194F, -1.254F, -0.2929F, 1.0388F, 2.508F, 3.128F, new CubeDeformation(0.0F)).texOffs(11, 15)
|
||||
.addBox(-1.425F, -0.5902F, 0.7331F, 2.85F, 1.1805F, 1.19F, new CubeDeformation(0.0F)).texOffs(0, 18).addBox(-0.5902F, -1.425F, 0.7331F, 1.1805F, 2.85F, 1.19F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, -0.0003F, -0.8848F, 0.0F, 0.0F, 0.3927F));
|
||||
PartDefinition group2 = Rockets.addOrReplaceChild("group2", CubeListBuilder.create(), PartPose.offset(0.0F, -6.0003F, 12.3571F));
|
||||
PartDefinition group3 = Rockets.addOrReplaceChild("group3", CubeListBuilder.create(), PartPose.offset(0.0F, -9.7972F, 8.7641F));
|
||||
PartDefinition octagon_r7 = group3.addOrReplaceChild("octagon_r7", CubeListBuilder.create().texOffs(20, 21).addBox(-0.7434F, -0.308F, 1.7936F, 1.4868F, 0.6158F, 5.7403F, new CubeDeformation(0.0F)).texOffs(28, 15).addBox(-0.3079F, -0.7435F,
|
||||
1.7936F, 0.6159F, 1.4868F, 5.7403F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 9.797F, -9.6489F, 0.0F, 0.0F, -0.3927F));
|
||||
PartDefinition octagon_r8 = group3.addOrReplaceChild("octagon_r8",
|
||||
CubeListBuilder.create().texOffs(0, 24).addBox(-0.7434F, -0.308F, 1.7936F, 1.4868F, 0.6158F, 5.7403F, new CubeDeformation(0.0F)).texOffs(21, 28).addBox(-0.308F, -0.7435F, 1.7936F, 0.6159F, 1.4868F, 5.7403F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, 9.797F, -9.6489F, 0.0F, 0.0F, 0.3927F));
|
||||
PartDefinition group4 = Rockets.addOrReplaceChild("group4", CubeListBuilder.create(), PartPose.offset(0.0F, -9.7972F, 8.7641F));
|
||||
PartDefinition group = Rockets.addOrReplaceChild("group", CubeListBuilder.create(), PartPose.offset(0.0F, 0.2029F, -5.0537F));
|
||||
PartDefinition octagon_r9 = group.addOrReplaceChild("octagon_r9",
|
||||
CubeListBuilder.create().texOffs(0, 1).addBox(-0.1549F, -0.3739F, -4.905F, 0.3098F, 0.7478F, 1.1522F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-0.3739F, -0.1549F, -4.905F, 0.7478F, 0.3098F, 1.1522F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, -0.2031F, 4.1689F, 0.0F, 0.0F, -0.3927F));
|
||||
PartDefinition octagon_r10 = group.addOrReplaceChild("octagon_r10",
|
||||
CubeListBuilder.create().texOffs(8, 8).addBox(-0.1549F, -0.3739F, -4.905F, 0.3098F, 0.7478F, 1.1522F, new CubeDeformation(0.0F)).texOffs(0, 1).addBox(-0.3739F, -0.1549F, -4.905F, 0.7478F, 0.3098F, 1.1522F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, -0.2031F, 4.1689F, 0.0F, 0.0F, 0.3927F));
|
||||
return LayerDefinition.create(meshdefinition, 16, 16);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) {
|
||||
Rockets.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
}
|
|
@ -1,46 +0,0 @@
|
|||
package com.atsuishio.superbwarfare.client.model.entity;
|
||||
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import net.minecraft.client.model.EntityModel;
|
||||
import net.minecraft.client.model.geom.ModelLayerLocation;
|
||||
import net.minecraft.client.model.geom.ModelPart;
|
||||
import net.minecraft.client.model.geom.PartPose;
|
||||
import net.minecraft.client.model.geom.builders.*;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
|
||||
// Made with Blockbench 4.9.3
|
||||
// Exported for Minecraft version 1.17 or later with Mojang mappings
|
||||
// Paste this class into your mod and generate all required imports
|
||||
public class ModelTaserRod<T extends Entity> extends EntityModel<T> {
|
||||
// This layer location should be baked with EntityRendererProvider.Context in
|
||||
// the entity renderer and passed into this model's constructor
|
||||
public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation(ModUtils.MODID, "modeltaser_rod"), "main");
|
||||
public final ModelPart bone;
|
||||
|
||||
public ModelTaserRod(ModelPart root) {
|
||||
this.bone = root.getChild("bone");
|
||||
}
|
||||
|
||||
public static LayerDefinition createBodyLayer() {
|
||||
MeshDefinition meshdefinition = new MeshDefinition();
|
||||
PartDefinition partdefinition = meshdefinition.getRoot();
|
||||
PartDefinition bone = partdefinition.addOrReplaceChild("bone", CubeListBuilder.create(), PartPose.offset(0.0F, 24.0F, 0.0F));
|
||||
PartDefinition cube_r1 = bone.addOrReplaceChild("cube_r1",
|
||||
CubeListBuilder.create().texOffs(0, 4).addBox(-0.5F, -27.0F, -2.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-1.0F, -23.0F, -7.0F, 2.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 0)
|
||||
.addBox(-1.0F, -23.0F, -3.0F, 2.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 4).addBox(-0.5F, -27.0F, -6.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)),
|
||||
PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, 0.0F, -1.5708F, 0.0F));
|
||||
return LayerDefinition.create(meshdefinition, 16, 16);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setupAnim(T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) {
|
||||
bone.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
}
|
|
@ -1,41 +1,51 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.layer.GunGrenadeLayer;
|
||||
import com.atsuishio.superbwarfare.entity.model.GunGrenadeModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelGrenade;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderer;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.Mth;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
||||
|
||||
public class GunGrenadeRenderer extends EntityRenderer<GunGrenadeEntity> {
|
||||
private static final ResourceLocation TEXTURE = new ResourceLocation(ModUtils.MODID, "textures/entity/grenade.png");
|
||||
private final ModelGrenade<GunGrenadeEntity> model;
|
||||
public class GunGrenadeRenderer extends GeoEntityRenderer<GunGrenadeEntity> {
|
||||
public GunGrenadeRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new GunGrenadeModel());
|
||||
this.addRenderLayer(new GunGrenadeLayer(this));
|
||||
this.shadowRadius = 0f;
|
||||
}
|
||||
|
||||
public GunGrenadeRenderer(EntityRendererProvider.Context context) {
|
||||
super(context);
|
||||
model = new ModelGrenade<>(context.bakeLayer(ModelGrenade.LAYER_LOCATION));
|
||||
@Override
|
||||
public RenderType getRenderType(GunGrenadeEntity animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
|
||||
return RenderType.entityTranslucent(getTextureLocation(animatable));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void preRender(PoseStack poseStack, GunGrenadeEntity entity, BakedGeoModel model, MultiBufferSource bufferSource, VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, float red, float green,
|
||||
float blue, float alpha) {
|
||||
float scale = 1f;
|
||||
this.scaleHeight = scale;
|
||||
this.scaleWidth = scale;
|
||||
super.preRender(poseStack, entity, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(GunGrenadeEntity entityIn, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource bufferIn, int packedLightIn) {
|
||||
VertexConsumer vb = bufferIn.getBuffer(RenderType.entityCutout(this.getTextureLocation(entityIn)));
|
||||
poseStack.pushPose();
|
||||
poseStack.mulPose(Axis.YP.rotationDegrees(Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()) - 90));
|
||||
poseStack.mulPose(Axis.ZP.rotationDegrees(90 + Mth.lerp(partialTicks, entityIn.xRotO, entityIn.getXRot())));
|
||||
model.renderToBuffer(poseStack, vb, packedLightIn, OverlayTexture.NO_OVERLAY, 1, 1, 1, 0.0625f);
|
||||
poseStack.popPose();
|
||||
super.render(entityIn, entityYaw, partialTicks, poseStack, bufferIn, packedLightIn);
|
||||
poseStack.popPose();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureLocation(GunGrenadeEntity entity) {
|
||||
return TEXTURE;
|
||||
protected float getDeathMaxRotation(GunGrenadeEntity entityLivingBaseIn) {
|
||||
return 0.0F;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelHandGrenade;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.HandGrenadeEntity;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderer;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.Mth;
|
||||
|
||||
public class HandGrenadeEntityRenderer extends EntityRenderer<HandGrenadeEntity> {
|
||||
private static final ResourceLocation TEXTURE = new ResourceLocation(ModUtils.MODID, "textures/entity/hand_grenade.png");
|
||||
private final ModelHandGrenade<HandGrenadeEntity> model;
|
||||
|
||||
public HandGrenadeEntityRenderer(EntityRendererProvider.Context context) {
|
||||
super(context);
|
||||
model = new ModelHandGrenade<>(context.bakeLayer(ModelHandGrenade.LAYER_LOCATION));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(HandGrenadeEntity entityIn, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource bufferIn, int packedLightIn) {
|
||||
VertexConsumer vb = bufferIn.getBuffer(RenderType.entityCutout(this.getTextureLocation(entityIn)));
|
||||
poseStack.pushPose();
|
||||
poseStack.mulPose(Axis.YP.rotationDegrees(Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()) - 90));
|
||||
poseStack.mulPose(Axis.ZP.rotationDegrees(90 + Mth.lerp(partialTicks, entityIn.xRotO, entityIn.getXRot())));
|
||||
model.renderToBuffer(poseStack, vb, packedLightIn, OverlayTexture.NO_OVERLAY, 1, 1, 1, 0.0625f);
|
||||
poseStack.popPose();
|
||||
super.render(entityIn, entityYaw, partialTicks, poseStack, bufferIn, packedLightIn);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureLocation(HandGrenadeEntity entity) {
|
||||
return TEXTURE;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.model.HandGrenadeEntityModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.HandGrenadeEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.Mth;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
||||
|
||||
public class HandGrenadeRenderer extends GeoEntityRenderer<HandGrenadeEntity> {
|
||||
public HandGrenadeRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new HandGrenadeEntityModel());
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(HandGrenadeEntity animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
|
||||
return RenderType.entityTranslucent(getTextureLocation(animatable));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void preRender(PoseStack poseStack, HandGrenadeEntity entity, BakedGeoModel model, MultiBufferSource bufferSource, VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, float red, float green,
|
||||
float blue, float alpha) {
|
||||
float scale = 1f;
|
||||
this.scaleHeight = scale;
|
||||
this.scaleWidth = scale;
|
||||
super.preRender(poseStack, entity, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(HandGrenadeEntity entityIn, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource bufferIn, int packedLightIn) {
|
||||
poseStack.pushPose();
|
||||
poseStack.mulPose(Axis.YP.rotationDegrees(Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()) - 90));
|
||||
poseStack.mulPose(Axis.ZP.rotationDegrees(90 + Mth.lerp(partialTicks, entityIn.xRotO, entityIn.getXRot())));
|
||||
super.render(entityIn, entityYaw, partialTicks, poseStack, bufferIn, packedLightIn);
|
||||
poseStack.popPose();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected float getDeathMaxRotation(HandGrenadeEntity entityLivingBaseIn) {
|
||||
return 0.0F;
|
||||
}
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.layer.JavelinMissleLayer;
|
||||
import com.atsuishio.superbwarfare.entity.model.JavelinMissileModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.JavelinMissileEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
|
@ -16,7 +17,7 @@ import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
|||
public class JavelinMissileRenderer extends GeoEntityRenderer<JavelinMissileEntity> {
|
||||
public JavelinMissileRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new JavelinMissileModel());
|
||||
this.shadowRadius = 0.1f;
|
||||
this.addRenderLayer(new JavelinMissleLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,41 +1,48 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.model.MortarShellEntityModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.MortarShellEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelMortarShell;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.MortarShellEntity;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderer;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.Mth;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
||||
|
||||
public class MortarShellRenderer extends EntityRenderer<MortarShellEntity> {
|
||||
private static final ResourceLocation TEXTURE = new ResourceLocation(ModUtils.MODID, "textures/entity/mortar_shell.png");
|
||||
private final ModelMortarShell<MortarShellEntity> model;
|
||||
public class MortarShellRenderer extends GeoEntityRenderer<MortarShellEntity> {
|
||||
public MortarShellRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new MortarShellEntityModel());
|
||||
}
|
||||
|
||||
public MortarShellRenderer(EntityRendererProvider.Context context) {
|
||||
super(context);
|
||||
model = new ModelMortarShell<>(context.bakeLayer(ModelMortarShell.LAYER_LOCATION));
|
||||
@Override
|
||||
public RenderType getRenderType(MortarShellEntity animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
|
||||
return RenderType.entityTranslucent(getTextureLocation(animatable));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void preRender(PoseStack poseStack, MortarShellEntity entity, BakedGeoModel model, MultiBufferSource bufferSource, VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, float red, float green,
|
||||
float blue, float alpha) {
|
||||
float scale = 1f;
|
||||
this.scaleHeight = scale;
|
||||
this.scaleWidth = scale;
|
||||
super.preRender(poseStack, entity, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(MortarShellEntity entityIn, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource bufferIn, int packedLightIn) {
|
||||
VertexConsumer vb = bufferIn.getBuffer(RenderType.entityCutout(this.getTextureLocation(entityIn)));
|
||||
poseStack.pushPose();
|
||||
poseStack.mulPose(Axis.YP.rotationDegrees(Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()) - 90));
|
||||
poseStack.mulPose(Axis.ZP.rotationDegrees(90 + Mth.lerp(partialTicks, entityIn.xRotO, entityIn.getXRot())));
|
||||
model.renderToBuffer(poseStack, vb, packedLightIn, OverlayTexture.NO_OVERLAY, 1, 1, 1, 0.0625f);
|
||||
poseStack.popPose();
|
||||
super.render(entityIn, entityYaw, partialTicks, poseStack, bufferIn, packedLightIn);
|
||||
poseStack.popPose();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureLocation(MortarShellEntity entity) {
|
||||
return TEXTURE;
|
||||
protected float getDeathMaxRotation(MortarShellEntity entityLivingBaseIn) {
|
||||
return 0.0F;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.model.RgoGrenadeEntityModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.RgoGrenadeEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.RgoGrenadeEntity;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
|
@ -16,7 +16,6 @@ import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
|||
public class RgoGrenadeRenderer extends GeoEntityRenderer<RgoGrenadeEntity> {
|
||||
public RgoGrenadeRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new RgoGrenadeEntityModel());
|
||||
this.shadowRadius = 0.1f;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.layer.RpgRocketLayer;
|
||||
import com.atsuishio.superbwarfare.entity.model.RpgRocketModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.RpgRocketEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.RpgRocketEntity;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
|
@ -16,7 +17,7 @@ import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
|||
public class RpgRocketRenderer extends GeoEntityRenderer<RpgRocketEntity> {
|
||||
public RpgRocketRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new RpgRocketModel());
|
||||
this.shadowRadius = 0.1f;
|
||||
this.addRenderLayer(new RpgRocketLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,41 +1,48 @@
|
|||
package com.atsuishio.superbwarfare.client.renderer.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.entity.model.TaserBulletProjectileModel;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.TaserBulletProjectileEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import com.mojang.math.Axis;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelTaserRod;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.TaserBulletProjectileEntity;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderer;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.Mth;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoEntityRenderer;
|
||||
|
||||
public class TaserBulletProjectileRenderer extends EntityRenderer<TaserBulletProjectileEntity> {
|
||||
private static final ResourceLocation TEXTURE = new ResourceLocation(ModUtils.MODID, "textures/entity/taser_rod.png");
|
||||
private final ModelTaserRod<TaserBulletProjectileEntity> model;
|
||||
public class TaserBulletProjectileRenderer extends GeoEntityRenderer<TaserBulletProjectileEntity> {
|
||||
public TaserBulletProjectileRenderer(EntityRendererProvider.Context renderManager) {
|
||||
super(renderManager, new TaserBulletProjectileModel());
|
||||
}
|
||||
|
||||
public TaserBulletProjectileRenderer(EntityRendererProvider.Context context) {
|
||||
super(context);
|
||||
model = new ModelTaserRod<>(context.bakeLayer(ModelTaserRod.LAYER_LOCATION));
|
||||
@Override
|
||||
public RenderType getRenderType(TaserBulletProjectileEntity animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
|
||||
return RenderType.entityTranslucent(getTextureLocation(animatable));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void preRender(PoseStack poseStack, TaserBulletProjectileEntity entity, BakedGeoModel model, MultiBufferSource bufferSource, VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, float red, float green,
|
||||
float blue, float alpha) {
|
||||
float scale = 1f;
|
||||
this.scaleHeight = scale;
|
||||
this.scaleWidth = scale;
|
||||
super.preRender(poseStack, entity, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(TaserBulletProjectileEntity entityIn, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource bufferIn, int packedLightIn) {
|
||||
VertexConsumer vb = bufferIn.getBuffer(RenderType.entityCutout(this.getTextureLocation(entityIn)));
|
||||
poseStack.pushPose();
|
||||
poseStack.mulPose(Axis.YP.rotationDegrees(Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()) - 90));
|
||||
poseStack.mulPose(Axis.ZP.rotationDegrees(90 + Mth.lerp(partialTicks, entityIn.xRotO, entityIn.getXRot())));
|
||||
model.renderToBuffer(poseStack, vb, packedLightIn, OverlayTexture.NO_OVERLAY, 1, 1, 1, 0.0625f);
|
||||
poseStack.popPose();
|
||||
super.render(entityIn, entityYaw, partialTicks, poseStack, bufferIn, packedLightIn);
|
||||
poseStack.popPose();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureLocation(TaserBulletProjectileEntity entity) {
|
||||
return TEXTURE;
|
||||
protected float getDeathMaxRotation(TaserBulletProjectileEntity entityLivingBaseIn) {
|
||||
return 0.0F;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -47,6 +47,7 @@ public class ClaymoreEntity extends Entity implements GeoEntity, AnimatedEntity,
|
|||
|
||||
public ClaymoreEntity(EntityType<ClaymoreEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public ClaymoreEntity(LivingEntity owner, Level level) {
|
||||
|
|
|
@ -81,6 +81,7 @@ public class DroneEntity extends LivingEntity implements GeoEntity {
|
|||
|
||||
public DroneEntity(EntityType<DroneEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public DroneEntity(EntityType<? extends DroneEntity> type, Level world, float moveX, float moveY, float moveZ) {
|
||||
|
|
|
@ -67,6 +67,7 @@ public class Mk42Entity extends Entity implements GeoEntity, ICannonEntity {
|
|||
|
||||
public Mk42Entity(EntityType<Mk42Entity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -69,6 +69,7 @@ public class Mle1934Entity extends Entity implements GeoEntity, ICannonEntity {
|
|||
|
||||
public Mle1934Entity(EntityType<Mle1934Entity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -60,6 +60,7 @@ public class MortarEntity extends Entity implements GeoEntity, AnimatedEntity {
|
|||
|
||||
public MortarEntity(PlayMessages.SpawnEntity packet, Level world) {
|
||||
this(ModEntities.MORTAR.get(), world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public MortarEntity(EntityType<MortarEntity> type, Level world) {
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
package com.atsuishio.superbwarfare.entity;
|
||||
|
||||
import com.atsuishio.superbwarfare.init.ModEntities;
|
||||
import com.atsuishio.superbwarfare.network.ModVariables;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.network.ModVariables;
|
||||
import com.atsuishio.superbwarfare.tools.SoundTool;
|
||||
import net.minecraft.commands.arguments.EntityAnchorArgument;
|
||||
import net.minecraft.core.BlockPos;
|
||||
|
@ -50,6 +50,7 @@ public class TargetEntity extends LivingEntity implements GeoEntity, AnimatedEnt
|
|||
|
||||
public TargetEntity(EntityType<TargetEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
package com.atsuishio.superbwarfare.entity.layer;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoRenderer;
|
||||
import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
|
||||
|
||||
public class GunGrenadeLayer extends GeoRenderLayer<GunGrenadeEntity> {
|
||||
private static final ResourceLocation LAYER = new ResourceLocation(ModUtils.MODID, "textures/entity/cannon_shell_e.png");
|
||||
|
||||
public GunGrenadeLayer(GeoRenderer<GunGrenadeEntity> entityRenderer) {
|
||||
super(entityRenderer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(PoseStack poseStack, GunGrenadeEntity 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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package com.atsuishio.superbwarfare.entity.layer;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.JavelinMissileEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoRenderer;
|
||||
import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
|
||||
|
||||
public class JavelinMissleLayer extends GeoRenderLayer<JavelinMissileEntity> {
|
||||
private static final ResourceLocation LAYER = new ResourceLocation(ModUtils.MODID, "textures/entity/rpg_rocket_e.png");
|
||||
|
||||
public JavelinMissleLayer(GeoRenderer<JavelinMissileEntity> entityRenderer) {
|
||||
super(entityRenderer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(PoseStack poseStack, JavelinMissileEntity 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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package com.atsuishio.superbwarfare.entity.layer;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.RpgRocketEntity;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.cache.object.BakedGeoModel;
|
||||
import software.bernie.geckolib.renderer.GeoRenderer;
|
||||
import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
|
||||
|
||||
public class RpgRocketLayer extends GeoRenderLayer<RpgRocketEntity> {
|
||||
private static final ResourceLocation LAYER = new ResourceLocation(ModUtils.MODID, "textures/entity/rpg_rocket_e.png");
|
||||
|
||||
public RpgRocketLayer(GeoRenderer<RpgRocketEntity> entityRenderer) {
|
||||
super(entityRenderer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(PoseStack poseStack, RpgRocketEntity 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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package com.atsuishio.superbwarfare.entity.model;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.core.animatable.model.CoreGeoBone;
|
||||
import software.bernie.geckolib.core.animation.AnimationState;
|
||||
import software.bernie.geckolib.model.GeoModel;
|
||||
|
||||
public class GunGrenadeModel extends GeoModel<GunGrenadeEntity> {
|
||||
@Override
|
||||
public ResourceLocation getAnimationResource(GunGrenadeEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "animations/cannon_shell.animation.json");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getModelResource(GunGrenadeEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "geo/cannon_shell.geo.json");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureResource(GunGrenadeEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "textures/entity/cannon_shell.png");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCustomAnimations(GunGrenadeEntity animatable, long instanceId, AnimationState animationState) {
|
||||
CoreGeoBone bone = getAnimationProcessor().getBone("bone");
|
||||
bone.setScaleX(0.15f);
|
||||
bone.setScaleY(0.15f);
|
||||
bone.setScaleZ(0.15f);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
package com.atsuishio.superbwarfare.entity.model;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.HandGrenadeEntity;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.model.GeoModel;
|
||||
|
||||
public class HandGrenadeEntityModel extends GeoModel<HandGrenadeEntity> {
|
||||
@Override
|
||||
public ResourceLocation getAnimationResource(HandGrenadeEntity entity) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getModelResource(HandGrenadeEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "geo/hand_grenade.geo.json");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureResource(HandGrenadeEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "textures/entity/hand_grenade.png");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
package com.atsuishio.superbwarfare.entity.model;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.MortarShellEntity;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.model.GeoModel;
|
||||
|
||||
public class MortarShellEntityModel extends GeoModel<MortarShellEntity> {
|
||||
@Override
|
||||
public ResourceLocation getAnimationResource(MortarShellEntity entity) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getModelResource(MortarShellEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "geo/mortar_shell.geo.json");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureResource(MortarShellEntity entity) {
|
||||
return ModUtils.loc("textures/entity/mortar.png");
|
||||
}
|
||||
|
||||
}
|
|
@ -8,7 +8,7 @@ import software.bernie.geckolib.model.GeoModel;
|
|||
public class RgoGrenadeEntityModel extends GeoModel<RgoGrenadeEntity> {
|
||||
@Override
|
||||
public ResourceLocation getAnimationResource(RgoGrenadeEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "animations/rgo_grenade.animation.json");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
package com.atsuishio.superbwarfare.entity.model;
|
||||
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.TaserBulletProjectileEntity;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import software.bernie.geckolib.model.GeoModel;
|
||||
|
||||
public class TaserBulletProjectileModel extends GeoModel<TaserBulletProjectileEntity> {
|
||||
@Override
|
||||
public ResourceLocation getAnimationResource(TaserBulletProjectileEntity entity) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getModelResource(TaserBulletProjectileEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "geo/taser_rod.geo.json");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureResource(TaserBulletProjectileEntity entity) {
|
||||
return new ResourceLocation(ModUtils.MODID, "textures/entity/taser_rod.png");
|
||||
}
|
||||
}
|
|
@ -58,6 +58,7 @@ public class CannonShellEntity extends ThrowableItemProjectile implements GeoEnt
|
|||
|
||||
public CannonShellEntity(EntityType<? extends CannonShellEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public CannonShellEntity(EntityType<? extends CannonShellEntity> type, LivingEntity entity, Level world, float damage, float explosionRadius, float explosionDamage, float fireProbability, int fireTime) {
|
||||
|
|
|
@ -29,15 +29,21 @@ import net.minecraft.world.phys.EntityHitResult;
|
|||
import net.minecraftforge.network.NetworkHooks;
|
||||
import net.minecraftforge.network.PacketDistributor;
|
||||
import net.minecraftforge.network.PlayMessages;
|
||||
import software.bernie.geckolib.animatable.GeoEntity;
|
||||
import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache;
|
||||
import software.bernie.geckolib.core.animation.AnimatableManager;
|
||||
import software.bernie.geckolib.util.GeckoLibUtil;
|
||||
|
||||
public class GunGrenadeEntity extends ThrowableItemProjectile {
|
||||
public class GunGrenadeEntity extends ThrowableItemProjectile implements GeoEntity {
|
||||
private float monsterMultiplier = 0.0f;
|
||||
private float damage = 40.0f;
|
||||
private float explosion_damage = 80f;
|
||||
private float explosion_radius = 5f;
|
||||
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
|
||||
|
||||
public GunGrenadeEntity(EntityType<? extends GunGrenadeEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public GunGrenadeEntity(LivingEntity entity, Level level, float damage, float explosion_damage, float explosion_radius) {
|
||||
|
@ -141,4 +147,14 @@ public class GunGrenadeEntity extends ThrowableItemProjectile {
|
|||
this.discard();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerControllers(AnimatableManager.ControllerRegistrar data) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnimatableInstanceCache getAnimatableInstanceCache() {
|
||||
return this.cache;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -31,12 +31,18 @@ import net.minecraft.world.phys.HitResult;
|
|||
import net.minecraftforge.network.NetworkHooks;
|
||||
import net.minecraftforge.network.PacketDistributor;
|
||||
import net.minecraftforge.network.PlayMessages;
|
||||
import software.bernie.geckolib.animatable.GeoEntity;
|
||||
import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache;
|
||||
import software.bernie.geckolib.core.animation.AnimatableManager;
|
||||
import software.bernie.geckolib.util.GeckoLibUtil;
|
||||
|
||||
public class HandGrenadeEntity extends ThrowableItemProjectile {
|
||||
public class HandGrenadeEntity extends ThrowableItemProjectile implements GeoEntity {
|
||||
private int fuse = 100;
|
||||
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
|
||||
|
||||
public HandGrenadeEntity(EntityType<? extends HandGrenadeEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public HandGrenadeEntity(LivingEntity entity, Level level, int fuse) {
|
||||
|
@ -139,6 +145,15 @@ public class HandGrenadeEntity extends ThrowableItemProjectile {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerControllers(AnimatableManager.ControllerRegistrar data) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnimatableInstanceCache getAnimatableInstanceCache() {
|
||||
return this.cache;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected float getGravity() {
|
||||
return 0.07F;
|
||||
|
|
|
@ -61,6 +61,7 @@ public class JavelinMissileEntity extends ThrowableItemProjectile implements Geo
|
|||
|
||||
public JavelinMissileEntity(EntityType<? extends JavelinMissileEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public JavelinMissileEntity(LivingEntity entity, Level level, float damage, float explosion_damage, float explosion_radius) {
|
||||
|
|
|
@ -24,15 +24,21 @@ import net.minecraft.world.phys.BlockHitResult;
|
|||
import net.minecraft.world.phys.EntityHitResult;
|
||||
import net.minecraftforge.network.NetworkHooks;
|
||||
import net.minecraftforge.network.PlayMessages;
|
||||
import software.bernie.geckolib.animatable.GeoEntity;
|
||||
import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache;
|
||||
import software.bernie.geckolib.core.animation.AnimatableManager;
|
||||
import software.bernie.geckolib.util.GeckoLibUtil;
|
||||
|
||||
public class MortarShellEntity extends ThrowableItemProjectile {
|
||||
public class MortarShellEntity extends ThrowableItemProjectile implements GeoEntity {
|
||||
|
||||
private float damage = ExplosionConfig.MORTAR_SHELL_EXPLOSION_DAMAGE.get();
|
||||
private int life = 600;
|
||||
private float radius = ExplosionConfig.MORTAR_SHELL_EXPLOSION_RADIUS.get();
|
||||
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
|
||||
|
||||
public MortarShellEntity(EntityType<? extends MortarShellEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public MortarShellEntity(EntityType<? extends MortarShellEntity> type, LivingEntity entity, Level world) {
|
||||
|
@ -134,6 +140,16 @@ public class MortarShellEntity extends ThrowableItemProjectile {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerControllers(AnimatableManager.ControllerRegistrar data) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnimatableInstanceCache getAnimatableInstanceCache() {
|
||||
return this.cache;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected float getGravity() {
|
||||
return 0.05F;
|
||||
|
|
|
@ -103,6 +103,7 @@ public class ProjectileEntity extends Entity implements IEntityAdditionalSpawnDa
|
|||
|
||||
public ProjectileEntity(EntityType<? extends ProjectileEntity> p_i50159_1_, Level p_i50159_2_) {
|
||||
super(p_i50159_1_, p_i50159_2_);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public ProjectileEntity(Level level) {
|
||||
|
|
|
@ -50,6 +50,7 @@ public class RgoGrenadeEntity extends ThrowableItemProjectile implements GeoEnti
|
|||
|
||||
public RgoGrenadeEntity(EntityType<? extends RgoGrenadeEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public RgoGrenadeEntity(LivingEntity entity, Level level, int fuse) {
|
||||
|
|
|
@ -60,6 +60,7 @@ public class RpgRocketEntity extends ThrowableItemProjectile implements GeoEntit
|
|||
|
||||
public RpgRocketEntity(EntityType<? extends RpgRocketEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
public RpgRocketEntity(LivingEntity entity, Level level, float damage, float explosion_damage, float explosion_radius) {
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
package com.atsuishio.superbwarfare.entity.projectile;
|
||||
|
||||
import com.atsuishio.superbwarfare.init.*;
|
||||
import com.atsuishio.superbwarfare.network.message.ClientIndicatorMessage;
|
||||
import com.atsuishio.superbwarfare.ModUtils;
|
||||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModEntities;
|
||||
import com.atsuishio.superbwarfare.init.ModMobEffects;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.network.message.ClientIndicatorMessage;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.network.protocol.Packet;
|
||||
import net.minecraft.network.protocol.game.ClientGamePacketListener;
|
||||
|
@ -19,6 +22,7 @@ import net.minecraft.world.entity.player.Player;
|
|||
import net.minecraft.world.entity.projectile.AbstractArrow;
|
||||
import net.minecraft.world.entity.projectile.ItemSupplier;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.Level;
|
||||
import net.minecraft.world.level.block.BellBlock;
|
||||
import net.minecraft.world.level.block.state.BlockState;
|
||||
|
@ -30,18 +34,24 @@ import net.minecraftforge.api.distmarker.OnlyIn;
|
|||
import net.minecraftforge.network.NetworkHooks;
|
||||
import net.minecraftforge.network.PacketDistributor;
|
||||
import net.minecraftforge.network.PlayMessages;
|
||||
import software.bernie.geckolib.animatable.GeoEntity;
|
||||
import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache;
|
||||
import software.bernie.geckolib.core.animation.AnimatableManager;
|
||||
import software.bernie.geckolib.util.GeckoLibUtil;
|
||||
|
||||
@OnlyIn(value = Dist.CLIENT, _interface = ItemSupplier.class)
|
||||
public class TaserBulletProjectileEntity extends AbstractArrow implements ItemSupplier {
|
||||
public class TaserBulletProjectileEntity extends AbstractArrow implements GeoEntity {
|
||||
|
||||
private float damage = 1f;
|
||||
private int volt = 0;
|
||||
private int wireLength = 0;
|
||||
private boolean stop = false;
|
||||
public static final ItemStack PROJECTILE_ITEM = new ItemStack(ModItems.TASER_ELECTRODE.get());
|
||||
public static final ItemStack PROJECTILE_ITEM = new ItemStack(Items.AIR);
|
||||
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
|
||||
|
||||
public TaserBulletProjectileEntity(PlayMessages.SpawnEntity packet, Level world) {
|
||||
super(ModEntities.TASER_BULLET_PROJECTILE.get(), world);
|
||||
this.pickup = AbstractArrow.Pickup.DISALLOWED;
|
||||
}
|
||||
|
||||
public TaserBulletProjectileEntity(LivingEntity entity, Level level, float damage, int volt, int wireLength) {
|
||||
|
@ -53,6 +63,7 @@ public class TaserBulletProjectileEntity extends AbstractArrow implements ItemSu
|
|||
|
||||
public TaserBulletProjectileEntity(EntityType<? extends TaserBulletProjectileEntity> type, Level world) {
|
||||
super(type, world);
|
||||
this.noCulling = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -60,23 +71,11 @@ public class TaserBulletProjectileEntity extends AbstractArrow implements ItemSu
|
|||
return NetworkHooks.getEntitySpawningPacket(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
public ItemStack getItem() {
|
||||
return PROJECTILE_ITEM;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ItemStack getPickupItem() {
|
||||
return PROJECTILE_ITEM;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doPostHurtEffects(LivingEntity entity) {
|
||||
super.doPostHurtEffects(entity);
|
||||
entity.setArrowCount(entity.getArrowCount() - 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onHitEntity(EntityHitResult result) {
|
||||
Entity entity = result.getEntity();
|
||||
|
@ -127,5 +126,14 @@ public class TaserBulletProjectileEntity extends AbstractArrow implements ItemSu
|
|||
this.discard();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerControllers(AnimatableManager.ControllerRegistrar data) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnimatableInstanceCache getAnimatableInstanceCache() {
|
||||
return this.cache;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ public class ModEntityRenderers {
|
|||
event.registerEntityRenderer(ModEntities.PROJECTILE.get(), ProjectileEntityRenderer::new);
|
||||
event.registerEntityRenderer(ModEntities.MK_42.get(), Mk42Renderer::new);
|
||||
event.registerEntityRenderer(ModEntities.DRONE.get(), DroneRenderer::new);
|
||||
event.registerEntityRenderer(ModEntities.HAND_GRENADE_ENTITY.get(), HandGrenadeEntityRenderer::new);
|
||||
event.registerEntityRenderer(ModEntities.HAND_GRENADE_ENTITY.get(), HandGrenadeRenderer::new);
|
||||
event.registerEntityRenderer(ModEntities.RGO_GRENADE.get(), RgoGrenadeRenderer::new);
|
||||
event.registerEntityRenderer(ModEntities.MLE_1934.get(), Mle1934Renderer::new);
|
||||
event.registerEntityRenderer(ModEntities.JAVELIN_MISSILE.get(), JavelinMissileRenderer::new);
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
package com.atsuishio.superbwarfare.init;
|
||||
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelGrenade;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelHandGrenade;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelMortarShell;
|
||||
import com.atsuishio.superbwarfare.client.model.entity.ModelTaserRod;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.EntityRenderersEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD, value = {Dist.CLIENT})
|
||||
public class ModModels {
|
||||
@SubscribeEvent
|
||||
public static void registerLayerDefinitions(EntityRenderersEvent.RegisterLayerDefinitions event) {
|
||||
event.registerLayerDefinition(ModelMortarShell.LAYER_LOCATION, ModelMortarShell::createBodyLayer);
|
||||
event.registerLayerDefinition(ModelTaserRod.LAYER_LOCATION, ModelTaserRod::createBodyLayer);
|
||||
event.registerLayerDefinition(ModelGrenade.LAYER_LOCATION, ModelGrenade::createBodyLayer);
|
||||
event.registerLayerDefinition(ModelHandGrenade.LAYER_LOCATION, ModelHandGrenade::createBodyLayer);
|
||||
}
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
"animations": {
|
||||
"animation.jvm.idle": {
|
||||
"loop": "hold_on_last_frame",
|
||||
"animation_length": 10,
|
||||
"animation_length": 10.1,
|
||||
"bones": {
|
||||
"wing1": {
|
||||
"rotation": {
|
||||
|
@ -82,6 +82,122 @@
|
|||
"0.2667": [0, 0, 0],
|
||||
"0.3167": [0, 105, 0]
|
||||
}
|
||||
},
|
||||
"flare": {
|
||||
"scale": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.3333": [0, 0, 0],
|
||||
"0.3833": [1.5, 1.5, 1.5],
|
||||
"0.4": [1, 1, 1],
|
||||
"0.5333": [1.07048, 1.07048, 1.07048],
|
||||
"0.6167": [1.1, 1.1, 1.1],
|
||||
"0.8": [0.99564, 0.99564, 0.99564],
|
||||
"0.8833": [0.95632, 0.95632, 0.95632],
|
||||
"0.9": [0.955, 0.955, 0.955],
|
||||
"1.1167": [1.01085, 1.01085, 1.01085],
|
||||
"1.2833": [1.05, 1.05, 1.05],
|
||||
"1.5": [1.0079, 1.0079, 1.0079],
|
||||
"1.7": [0.97, 0.97, 0.97],
|
||||
"1.9167": [1.005, 1.005, 1.005],
|
||||
"2.1333": [1.04, 1.04, 1.04],
|
||||
"2.2833": [0.97737, 0.97737, 0.97737],
|
||||
"2.3667": [0.955, 0.955, 0.955],
|
||||
"2.5833": [1.01085, 1.01085, 1.01085],
|
||||
"2.75": [1.05, 1.05, 1.05],
|
||||
"2.9667": [1.0079, 1.0079, 1.0079],
|
||||
"3.1667": [0.97, 0.97, 0.97],
|
||||
"3.3833": [1.005, 1.005, 1.005],
|
||||
"3.6": [1.04, 1.04, 1.04],
|
||||
"3.6833": [1.00185, 1.00185, 1.00185],
|
||||
"3.7333": [0.95134, 0.95134, 0.95134],
|
||||
"3.75": [0.94107, 0.94107, 0.94107],
|
||||
"3.7667": [0.94129, 0.94129, 0.94129],
|
||||
"3.7833": [0.955, 0.955, 0.955],
|
||||
"3.8": [0.96853, 0.96853, 0.96853],
|
||||
"4.0167": [1.00672, 1.00672, 1.00672],
|
||||
"4.1333": [1.02876, 1.02876, 1.02876],
|
||||
"4.15": [1.03647, 1.03647, 1.03647],
|
||||
"4.1667": [1.05, 1.05, 1.05],
|
||||
"4.1833": [1.06006, 1.06006, 1.06006],
|
||||
"4.4": [1.00033, 1.00033, 1.00033],
|
||||
"4.5333": [0.9592, 0.9592, 0.9592],
|
||||
"4.5667": [0.95994, 0.95994, 0.95994],
|
||||
"4.5833": [0.97, 0.97, 0.97],
|
||||
"4.6": [0.98259, 0.98259, 0.98259],
|
||||
"4.8167": [1.00534, 1.00534, 1.00534],
|
||||
"4.9833": [1.02089, 1.02089, 1.02089],
|
||||
"5.0": [1.02741, 1.02741, 1.02741],
|
||||
"5.0167": [1.04, 1.04, 1.04],
|
||||
"5.0333": [1.05377, 1.05377, 1.05377],
|
||||
"5.25": [1.05274, 1.05274, 1.05274],
|
||||
"5.3667": [1.04, 1.04, 1.04],
|
||||
"5.45": [1.00185, 1.00185, 1.00185],
|
||||
"5.5": [0.95134, 0.95134, 0.95134],
|
||||
"5.5167": [0.94107, 0.94107, 0.94107],
|
||||
"5.5333": [0.94129, 0.94129, 0.94129],
|
||||
"5.55": [0.955, 0.955, 0.955],
|
||||
"5.5667": [0.96853, 0.96853, 0.96853],
|
||||
"5.7833": [1.00672, 1.00672, 1.00672],
|
||||
"5.9": [1.02876, 1.02876, 1.02876],
|
||||
"5.9167": [1.03647, 1.03647, 1.03647],
|
||||
"5.9333": [1.05, 1.05, 1.05],
|
||||
"5.95": [1.06006, 1.06006, 1.06006],
|
||||
"6.1667": [1.00033, 1.00033, 1.00033],
|
||||
"6.3": [0.9592, 0.9592, 0.9592],
|
||||
"6.3333": [0.95994, 0.95994, 0.95994],
|
||||
"6.35": [0.97, 0.97, 0.97],
|
||||
"6.3667": [0.98259, 0.98259, 0.98259],
|
||||
"6.5833": [1.00534, 1.00534, 1.00534],
|
||||
"6.75": [1.02089, 1.02089, 1.02089],
|
||||
"6.7667": [1.02741, 1.02741, 1.02741],
|
||||
"6.7833": [1.04, 1.04, 1.04],
|
||||
"6.8": [1.05562, 1.05562, 1.05562],
|
||||
"7.0": [1.04056, 1.04056, 1.04056],
|
||||
"7.0167": [1.04, 1.04, 1.04],
|
||||
"7.1": [1.00185, 1.00185, 1.00185],
|
||||
"7.15": [0.95134, 0.95134, 0.95134],
|
||||
"7.1667": [0.94107, 0.94107, 0.94107],
|
||||
"7.1833": [0.94129, 0.94129, 0.94129],
|
||||
"7.2": [0.955, 0.955, 0.955],
|
||||
"7.2167": [0.96853, 0.96853, 0.96853],
|
||||
"7.4333": [1.00672, 1.00672, 1.00672],
|
||||
"7.55": [1.02876, 1.02876, 1.02876],
|
||||
"7.5667": [1.03647, 1.03647, 1.03647],
|
||||
"7.5833": [1.05, 1.05, 1.05],
|
||||
"7.6": [1.06006, 1.06006, 1.06006],
|
||||
"7.8167": [1.00033, 1.00033, 1.00033],
|
||||
"7.95": [0.9592, 0.9592, 0.9592],
|
||||
"7.9833": [0.95994, 0.95994, 0.95994],
|
||||
"8.0": [0.97, 0.97, 0.97],
|
||||
"8.0167": [0.98259, 0.98259, 0.98259],
|
||||
"8.2333": [1.00534, 1.00534, 1.00534],
|
||||
"8.4": [1.02089, 1.02089, 1.02089],
|
||||
"8.4167": [1.02741, 1.02741, 1.02741],
|
||||
"8.4333": [1.04, 1.04, 1.04],
|
||||
"8.45": [1.05529, 1.05529, 1.05529],
|
||||
"8.6667": [1.04055, 1.04055, 1.04055],
|
||||
"8.6833": [1.04, 1.04, 1.04],
|
||||
"8.7667": [1.00185, 1.00185, 1.00185],
|
||||
"8.8167": [0.95134, 0.95134, 0.95134],
|
||||
"8.8333": [0.94107, 0.94107, 0.94107],
|
||||
"8.85": [0.94129, 0.94129, 0.94129],
|
||||
"8.8667": [0.955, 0.955, 0.955],
|
||||
"8.8833": [0.96853, 0.96853, 0.96853],
|
||||
"9.1": [1.00672, 1.00672, 1.00672],
|
||||
"9.2167": [1.02876, 1.02876, 1.02876],
|
||||
"9.2333": [1.03647, 1.03647, 1.03647],
|
||||
"9.25": [1.05, 1.05, 1.05],
|
||||
"9.2667": [1.06006, 1.06006, 1.06006],
|
||||
"9.4833": [1.00033, 1.00033, 1.00033],
|
||||
"9.6167": [0.9592, 0.9592, 0.9592],
|
||||
"9.65": [0.95994, 0.95994, 0.95994],
|
||||
"9.6667": [0.97, 0.97, 0.97],
|
||||
"9.6833": [0.98259, 0.98259, 0.98259],
|
||||
"9.9": [1.00534, 1.00534, 1.00534],
|
||||
"10.0667": [1.02089, 1.02089, 1.02089],
|
||||
"10.0833": [1.02741, 1.02741, 1.02741],
|
||||
"10.1": [1.04, 1.04, 1.04]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"animation.rgo_grenade.idle": {
|
||||
"loop": true
|
||||
}
|
||||
},
|
||||
"geckolib_format_version": 2
|
||||
}
|
|
@ -7,101 +7,114 @@
|
|||
"bones": {
|
||||
"wing1": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing2": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing3": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing4": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing5": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing6": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing7": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"wing8": {
|
||||
"rotation": {
|
||||
"0.2417": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 67.5, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
"0.2417": [0, 0, 0],
|
||||
"0.6": [0, 67.5, 0]
|
||||
}
|
||||
},
|
||||
"body": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"6.0": {
|
||||
"vector": [0, 10800, 0],
|
||||
"easing": "easeInSine"
|
||||
}
|
||||
"0.0": [0, 0, 0],
|
||||
"6.0": [0, 10800, 0]
|
||||
}
|
||||
},
|
||||
"flare": {
|
||||
"scale": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.5": [0, 0, 0],
|
||||
"0.5417": [1.5, 1.5, 1.5],
|
||||
"0.5667": [1, 1, 1],
|
||||
"0.675": [1.05, 1.05, 1.05],
|
||||
"0.7833": [1.1, 1.1, 1.1],
|
||||
"0.8917": [1.05121, 1.05121, 1.05121],
|
||||
"1.0": [0.97056, 0.97056, 0.97056],
|
||||
"1.0583": [0.955, 0.955, 0.955],
|
||||
"1.1667": [0.97562, 0.97562, 0.97562],
|
||||
"1.275": [1.01085, 1.01085, 1.01085],
|
||||
"1.3833": [1.04249, 1.04249, 1.04249],
|
||||
"1.4417": [1.05, 1.05, 1.05],
|
||||
"1.55": [1.03425, 1.03425, 1.03425],
|
||||
"1.6583": [1.0079, 1.0079, 1.0079],
|
||||
"1.7667": [0.98218, 0.98218, 0.98218],
|
||||
"1.8583": [0.97, 0.97, 0.97],
|
||||
"1.9667": [0.98318, 0.98318, 0.98318],
|
||||
"2.075": [1.005, 1.005, 1.005],
|
||||
"2.1833": [1.02682, 1.02682, 1.02682],
|
||||
"2.2917": [1.04, 1.04, 1.04],
|
||||
"2.4": [1.00495, 1.00495, 1.00495],
|
||||
"2.5083": [0.95684, 0.95684, 0.95684],
|
||||
"2.5333": [0.955, 0.955, 0.955],
|
||||
"2.6417": [0.97562, 0.97562, 0.97562],
|
||||
"2.75": [1.01085, 1.01085, 1.01085],
|
||||
"2.8583": [1.04249, 1.04249, 1.04249],
|
||||
"2.9167": [1.05, 1.05, 1.05],
|
||||
"3.025": [1.03425, 1.03425, 1.03425],
|
||||
"3.1333": [1.0079, 1.0079, 1.0079],
|
||||
"3.2417": [0.98218, 0.98218, 0.98218],
|
||||
"3.3333": [0.97, 0.97, 0.97],
|
||||
"3.4417": [0.98318, 0.98318, 0.98318],
|
||||
"3.55": [1.005, 1.005, 1.005],
|
||||
"3.6583": [1.02682, 1.02682, 1.02682],
|
||||
"3.7667": [1.04, 1.04, 1.04],
|
||||
"3.875": [0.97636, 0.97636, 0.97636],
|
||||
"3.9167": [0.94107, 0.94107, 0.94107],
|
||||
"3.95": [0.955, 0.955, 0.955],
|
||||
"4.0583": [0.99318, 0.99318, 0.99318],
|
||||
"4.1667": [1.00498, 1.00498, 1.00498],
|
||||
"4.275": [1.02112, 1.02112, 1.02112],
|
||||
"4.325": [1.04197, 1.04197, 1.04197],
|
||||
"4.3333": [1.05, 1.05, 1.05],
|
||||
"4.4417": [1.04664, 1.04664, 1.04664],
|
||||
"4.55": [1.00677, 1.00677, 1.00677],
|
||||
"4.6583": [0.96833, 0.96833, 0.96833],
|
||||
"4.7333": [0.95994, 0.95994, 0.95994],
|
||||
"4.75": [0.97, 0.97, 0.97],
|
||||
"4.8583": [1.00099, 1.00099, 1.00099],
|
||||
"4.9667": [1.005, 1.005, 1.005],
|
||||
"5.075": [1.00901, 1.00901, 1.00901],
|
||||
"5.1667": [1.02741, 1.02741, 1.02741],
|
||||
"5.1833": [1.04, 1.04, 1.04]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,270 @@
|
|||
{
|
||||
"format_version": "1.12.0",
|
||||
"minecraft:geometry": [
|
||||
{
|
||||
"description": {
|
||||
"identifier": "geometry.hand_grenade - Converted",
|
||||
"texture_width": 16,
|
||||
"texture_height": 16,
|
||||
"visible_bounds_width": 2,
|
||||
"visible_bounds_height": 1.5,
|
||||
"visible_bounds_offset": [0, 0.25, 0]
|
||||
},
|
||||
"bones": [
|
||||
{
|
||||
"name": "bone",
|
||||
"pivot": [0, 24.02167, 0.48829]
|
||||
},
|
||||
{
|
||||
"name": "body",
|
||||
"parent": "bone",
|
||||
"pivot": [0, 1.62167, -1.16171],
|
||||
"rotation": [90, 0, 0],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-0.4375, 0.89764, -2.1875],
|
||||
"size": [0.875, 0.3, 1.075],
|
||||
"uv": {
|
||||
"north": {"uv": [7, 9], "uv_size": [0, 0]},
|
||||
"east": {"uv": [6, 9], "uv_size": [1, 0]},
|
||||
"south": {"uv": [8, 9], "uv_size": [0, 0]},
|
||||
"west": {"uv": [7, 9], "uv_size": [1, 0]},
|
||||
"up": {"uv": [7, 8], "uv_size": [0, 1]},
|
||||
"down": {"uv": [7, 9], "uv_size": [0, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.45, 1.2, -2.25],
|
||||
"size": [0.9, 0.85, 1.35],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 14], "uv_size": [0, 0]},
|
||||
"east": {"uv": [11, 14], "uv_size": [1, 0]},
|
||||
"south": {"uv": [13, 14], "uv_size": [0, 0]},
|
||||
"west": {"uv": [12, 14], "uv_size": [1, 0]},
|
||||
"up": {"uv": [12, 13], "uv_size": [0, 1]},
|
||||
"down": {"uv": [12, 14], "uv_size": [0, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.45, 1.2, -0.9],
|
||||
"size": [0.9, 0.85, 0.3],
|
||||
"uv": {
|
||||
"north": {"uv": [13, 14], "uv_size": [0, 0]},
|
||||
"east": {"uv": [13, 14], "uv_size": [0, 0]},
|
||||
"south": {"uv": [13, 14], "uv_size": [0, 0]},
|
||||
"west": {"uv": [13, 14], "uv_size": [0, 0]},
|
||||
"up": {"uv": [13, 14], "uv_size": [0, 0]},
|
||||
"down": {"uv": [13, 14], "uv_size": [0, 0]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.45, 1.2, -0.6],
|
||||
"size": [0.9, 0.35, 0.3],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 15], "uv_size": [0, 0]},
|
||||
"east": {"uv": [12, 15], "uv_size": [0, 0]},
|
||||
"south": {"uv": [12, 15], "uv_size": [0, 0]},
|
||||
"west": {"uv": [12, 15], "uv_size": [0, 0]},
|
||||
"up": {"uv": [12, 15], "uv_size": [0, 0]},
|
||||
"down": {"uv": [12, 15], "uv_size": [0, 0]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.45, 1.55, -0.6],
|
||||
"size": [0.9, 0.3, 0.2],
|
||||
"uv": {
|
||||
"north": {"uv": [11, 13], "uv_size": [1, 1]},
|
||||
"east": {"uv": [11, 13], "uv_size": [1, 1]},
|
||||
"south": {"uv": [11, 13], "uv_size": [1, 1]},
|
||||
"west": {"uv": [11, 13], "uv_size": [1, 1]},
|
||||
"up": {"uv": [12, 14], "uv_size": [-1, -1]},
|
||||
"down": {"uv": [12, 14], "uv_size": [-1, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.45, 1.07737, -2.06648],
|
||||
"size": [0.9, 0.93906, 0.35078],
|
||||
"pivot": [1, 0.67737, -2.46648],
|
||||
"rotation": [22.5, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 14], "uv_size": [0, 0]},
|
||||
"east": {"uv": [12, 14], "uv_size": [0, 0]},
|
||||
"south": {"uv": [12, 14], "uv_size": [0, 0]},
|
||||
"west": {"uv": [12, 14], "uv_size": [0, 0]},
|
||||
"up": {"uv": [12, 14], "uv_size": [0, 0]},
|
||||
"down": {"uv": [12, 14], "uv_size": [0, 0]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5, 2.05, -2.75],
|
||||
"size": [1, 0.2, 2.2],
|
||||
"uv": {
|
||||
"north": {"uv": [11, 15], "uv_size": [1, 0]},
|
||||
"east": {"uv": [9, 15], "uv_size": [2, 1]},
|
||||
"south": {"uv": [14, 15], "uv_size": [1, 0]},
|
||||
"west": {"uv": [12, 15], "uv_size": [2, 0]},
|
||||
"up": {"uv": [11, 13], "uv_size": [1, 2]},
|
||||
"down": {"uv": [12, 15], "uv_size": [1, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5, 0.61466, -0.54406],
|
||||
"size": [1, 1, 0.2],
|
||||
"pivot": [1, 1.41466, -2.04406],
|
||||
"rotation": [22.5, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 13], "uv_size": [1, 1]},
|
||||
"east": {"uv": [9, 15], "uv_size": [1, 1]},
|
||||
"south": {"uv": [12, 14], "uv_size": [1, 1]},
|
||||
"west": {"uv": [12, 14], "uv_size": [0, 1]},
|
||||
"up": {"uv": [10, 16], "uv_size": [1, -1]},
|
||||
"down": {"uv": [12, 14], "uv_size": [1, 0]}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "bone2",
|
||||
"parent": "body",
|
||||
"pivot": [0, -0.40781, -27.37809],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-0.5375, -1.69764, -2.1875],
|
||||
"size": [1.075, 2.59528, 1.075],
|
||||
"pivot": [0, -0.4, -1.65],
|
||||
"rotation": [0, 0, 45],
|
||||
"uv": {
|
||||
"north": {"uv": [11, 1], "uv_size": [1, 2]},
|
||||
"east": {"uv": [10, 1], "uv_size": [1, 2]},
|
||||
"south": {"uv": [13, 1], "uv_size": [1, 2]},
|
||||
"west": {"uv": [12, 1], "uv_size": [1, 2]},
|
||||
"up": {"uv": [11, 0], "uv_size": [1, 1]},
|
||||
"down": {"uv": [12, 1], "uv_size": [1, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.29764, -0.9375, -2.1875],
|
||||
"size": [2.59528, 1.075, 1.075],
|
||||
"pivot": [0, -0.4, -1.65],
|
||||
"rotation": [0, 0, 45],
|
||||
"uv": {
|
||||
"north": {"uv": [1, 9], "uv_size": [2, 1]},
|
||||
"east": {"uv": [0, 9], "uv_size": [1, 1]},
|
||||
"south": {"uv": [4, 9], "uv_size": [2, 1]},
|
||||
"west": {"uv": [3, 9], "uv_size": [1, 1]},
|
||||
"up": {"uv": [1, 8], "uv_size": [2, 1]},
|
||||
"down": {"uv": [3, 9], "uv_size": [2, -1]}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "bone3",
|
||||
"parent": "body",
|
||||
"pivot": [0, -0.40781, -27.37809],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-0.5375, -1.69764, -2.1875],
|
||||
"size": [1.075, 2.59528, 1.075],
|
||||
"uv": {
|
||||
"north": {"uv": [1, 11], "uv_size": [1, 2]},
|
||||
"east": {"uv": [0, 11], "uv_size": [1, 2]},
|
||||
"south": {"uv": [3, 11], "uv_size": [1, 2]},
|
||||
"west": {"uv": [2, 11], "uv_size": [1, 2]},
|
||||
"up": {"uv": [1, 10], "uv_size": [1, 1]},
|
||||
"down": {"uv": [2, 11], "uv_size": [1, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5375, -1.69764, -2.1875],
|
||||
"size": [1.075, 2.59528, 1.075],
|
||||
"pivot": [0, -0.4, -1.65],
|
||||
"rotation": [45, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [8, 10], "uv_size": [1, 2]},
|
||||
"east": {"uv": [7, 10], "uv_size": [1, 2]},
|
||||
"south": {"uv": [10, 10], "uv_size": [1, 2]},
|
||||
"west": {"uv": [9, 10], "uv_size": [1, 2]},
|
||||
"up": {"uv": [8, 9], "uv_size": [1, 1]},
|
||||
"down": {"uv": [9, 10], "uv_size": [1, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5375, -0.9375, -2.94764],
|
||||
"size": [1.075, 1.075, 2.59528],
|
||||
"pivot": [0, -0.4, -1.65],
|
||||
"rotation": [45, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [7, 3], "uv_size": [1, 1]},
|
||||
"east": {"uv": [5, 3], "uv_size": [2, 1]},
|
||||
"south": {"uv": [10, 3], "uv_size": [1, 1]},
|
||||
"west": {"uv": [8, 3], "uv_size": [2, 1]},
|
||||
"up": {"uv": [7, 1], "uv_size": [1, 2]},
|
||||
"down": {"uv": [8, 3], "uv_size": [1, -2]}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "bone175",
|
||||
"parent": "body",
|
||||
"pivot": [0, -0.40781, -27.37809],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-1.29764, -0.9375, -2.1875],
|
||||
"size": [2.59528, 1.075, 1.075],
|
||||
"uv": {
|
||||
"north": {"uv": [8, 8], "uv_size": [2, 1]},
|
||||
"east": {"uv": [7, 8], "uv_size": [1, 1]},
|
||||
"south": {"uv": [11, 8], "uv_size": [2, 1]},
|
||||
"west": {"uv": [10, 8], "uv_size": [1, 1]},
|
||||
"up": {"uv": [8, 7], "uv_size": [2, 1]},
|
||||
"down": {"uv": [10, 8], "uv_size": [2, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.29764, -0.9375, -2.1875],
|
||||
"size": [2.59528, 1.075, 1.075],
|
||||
"pivot": [0, -0.4, -1.65],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [6, 6], "uv_size": [2, 1]},
|
||||
"east": {"uv": [5, 6], "uv_size": [1, 1]},
|
||||
"south": {"uv": [9, 6], "uv_size": [2, 1]},
|
||||
"west": {"uv": [8, 6], "uv_size": [1, 1]},
|
||||
"up": {"uv": [6, 5], "uv_size": [2, 1]},
|
||||
"down": {"uv": [8, 6], "uv_size": [2, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5375, -0.9375, -2.94764],
|
||||
"size": [1.075, 1.075, 2.59528],
|
||||
"uv": {
|
||||
"north": {"uv": [2, 6], "uv_size": [1, 1]},
|
||||
"east": {"uv": [0, 6], "uv_size": [2, 1]},
|
||||
"south": {"uv": [5, 6], "uv_size": [1, 1]},
|
||||
"west": {"uv": [3, 6], "uv_size": [2, 1]},
|
||||
"up": {"uv": [2, 4], "uv_size": [1, 2]},
|
||||
"down": {"uv": [3, 6], "uv_size": [1, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5375, -0.9375, -2.94764],
|
||||
"size": [1.075, 1.075, 2.59528],
|
||||
"pivot": [0, -0.4, -1.65],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [2, 2], "uv_size": [1, 1]},
|
||||
"east": {"uv": [0, 2], "uv_size": [2, 1]},
|
||||
"south": {"uv": [5, 2], "uv_size": [1, 1]},
|
||||
"west": {"uv": [3, 2], "uv_size": [2, 1]},
|
||||
"up": {"uv": [2, 0], "uv_size": [1, 2]},
|
||||
"down": {"uv": [3, 2], "uv_size": [1, -2]}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -15,6 +15,113 @@
|
|||
"name": "bone",
|
||||
"pivot": [0, 0, -0.11791]
|
||||
},
|
||||
{
|
||||
"name": "flare",
|
||||
"parent": "bone",
|
||||
"pivot": [0, -0.67, 0],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-23.45, -0.63, -1.05],
|
||||
"size": [22.4, 0, 2.1],
|
||||
"uv": {
|
||||
"up": {"uv": [40, 64], "uv_size": [-36, -4]},
|
||||
"down": {"uv": [40, 64], "uv_size": [-36, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-34.65, -0.63, -1.05],
|
||||
"size": [33.6, 0, 2.1],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"up": {"uv": [40, 64], "uv_size": [-36, -4]},
|
||||
"down": {"uv": [40, 64], "uv_size": [-36, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-23.45, -0.63, -1.05],
|
||||
"size": [22.4, 0, 2.1],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, 180, 0],
|
||||
"uv": {
|
||||
"up": {"uv": [40, 64], "uv_size": [-36, -4]},
|
||||
"down": {"uv": [40, 64], "uv_size": [-36, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-22.4, 20.3, -1.4],
|
||||
"size": [44.8, 0, 2.8],
|
||||
"pivot": [0, 20.3, 0],
|
||||
"rotation": [135, 0, 90],
|
||||
"uv": {
|
||||
"up": {"uv": [40, 64], "uv_size": [-36, -4]},
|
||||
"down": {"uv": [40, 64], "uv_size": [-36, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-22.4, 20.3, -1.4],
|
||||
"size": [44.8, 0, 2.8],
|
||||
"pivot": [0, 20.3, 0],
|
||||
"rotation": [-135, 0, 90],
|
||||
"uv": {
|
||||
"up": {"uv": [40, 64], "uv_size": [-36, -4]},
|
||||
"down": {"uv": [40, 64], "uv_size": [-36, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-34.65, -0.63, -1.05],
|
||||
"size": [33.6, 0, 2.1],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"up": {"uv": [40, 64], "uv_size": [-36, -4]},
|
||||
"down": {"uv": [40, 64], "uv_size": [-36, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-3.85, -0.63, -3.85],
|
||||
"size": [7.7, 0, 7.7],
|
||||
"pivot": [0, -0.63, 0],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"east": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"south": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"west": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"up": {"uv": [8, 64], "uv_size": [-4, -4]},
|
||||
"down": {"uv": [8, 64], "uv_size": [-4, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-3.5, 1.82, -3.5],
|
||||
"size": [7, 0, 7],
|
||||
"pivot": [0, 1.82, 0],
|
||||
"rotation": [90, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"east": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"south": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"west": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"up": {"uv": [8, 64], "uv_size": [-4, -4]},
|
||||
"down": {"uv": [8, 64], "uv_size": [-4, -4]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-3.5, 1.82, -3.5],
|
||||
"size": [7, 0, 7],
|
||||
"pivot": [0, 1.82, 0],
|
||||
"rotation": [90, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"east": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"south": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"west": {"uv": [4, 60], "uv_size": [4, 4]},
|
||||
"up": {"uv": [8, 64], "uv_size": [-4, -4]},
|
||||
"down": {"uv": [8, 64], "uv_size": [-4, -4]}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "body",
|
||||
"parent": "bone",
|
||||
|
|
|
@ -0,0 +1,689 @@
|
|||
{
|
||||
"format_version": "1.12.0",
|
||||
"minecraft:geometry": [
|
||||
{
|
||||
"description": {
|
||||
"identifier": "geometry.unknown",
|
||||
"texture_width": 64,
|
||||
"texture_height": 64,
|
||||
"visible_bounds_width": 103,
|
||||
"visible_bounds_height": 102,
|
||||
"visible_bounds_offset": [0, 1, 0]
|
||||
},
|
||||
"bones": [
|
||||
{
|
||||
"name": "bone",
|
||||
"pivot": [0, 3, 0]
|
||||
},
|
||||
{
|
||||
"name": "shell",
|
||||
"parent": "bone",
|
||||
"pivot": [0, 4.49255, -0.00105],
|
||||
"rotation": [-180, 0, 0],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-0.40377, 4.34411, -0.19124],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"uv": {
|
||||
"north": {"uv": [46, 24], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [46, 21], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [22, 45], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [46, 27], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [3, 51], "uv_size": [1, -1]},
|
||||
"down": {"uv": [4, 50], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.69683, 4.34411, -0.23246],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [0.60006, 2.66391, 1.30687],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [46, 15], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [46, 12], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [46, 9], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [46, 18], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [50, 2], "uv_size": [1, -1]},
|
||||
"down": {"uv": [2, 50], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [1.15271, 4.34411, -0.33197],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [0.84861, 2.66391, 0.70682],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [46, 3], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [46, 0], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [45, 44], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [46, 6], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [50, 1], "uv_size": [1, -1]},
|
||||
"down": {"uv": [1, 50], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.69683, 4.34411, -0.43149],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [0.60006, 2.66391, 0.10676],
|
||||
"rotation": [0, 135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [45, 41], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [45, 38], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [37, 44], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [44, 44], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [49, 50], "uv_size": [1, -1]},
|
||||
"down": {"uv": [0, 50], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.40377, 4.34411, -0.47271],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [0, 2.66391, -0.14179],
|
||||
"rotation": [0, -180, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [35, 44], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [34, 44], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [33, 44], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [36, 44], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [49, 48], "uv_size": [1, -1]},
|
||||
"down": {"uv": [49, 48], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.50436, 4.34411, -0.43149],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [-0.60006, 2.66391, 0.10676],
|
||||
"rotation": [0, -135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [28, 44], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [27, 44], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [26, 44], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [29, 44], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [49, 47], "uv_size": [1, -1]},
|
||||
"down": {"uv": [47, 49], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.96025, 4.34411, -0.33197],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [-0.84861, 2.66391, 0.70682],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [24, 44], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [21, 44], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [20, 44], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [25, 44], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [49, 45], "uv_size": [1, -1]},
|
||||
"down": {"uv": [49, 45], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.50436, 4.34411, -0.23246],
|
||||
"size": [0.80754, 3.14693, 1.16497],
|
||||
"pivot": [-0.60006, 2.66391, 1.30687],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [10, 44], "uv_size": [-1, 3]},
|
||||
"east": {"uv": [44, 41], "uv_size": [-1, 3]},
|
||||
"south": {"uv": [44, 38], "uv_size": [-1, 3]},
|
||||
"west": {"uv": [19, 44], "uv_size": [-1, 3]},
|
||||
"up": {"uv": [43, 50], "uv_size": [1, -1]},
|
||||
"down": {"uv": [44, 49], "uv_size": [1, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.3432, 3.33013, -0.16271],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"uv": {
|
||||
"north": {"uv": [27.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [8, 35], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [26.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [9, 35], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 38], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 38], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.5923, 3.33013, -0.19774],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [0.51005, 3.15196, 1.11068],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [25.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [6, 35], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [47.5, 24], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [7, 35], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 36], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 36], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.9798, 3.33013, -0.28233],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [0.72132, 3.15196, 0.60064],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [24.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [35, 18], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [23.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [35, 30], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 34], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 34], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.5923, 3.33013, -0.36692],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [0.51005, 3.15196, 0.09059],
|
||||
"rotation": [0, 135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [20.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [35, 8], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [47.5, 19], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [35, 13], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 32], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 32], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.3432, 3.33013, -0.40196],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [0, 3.15196, -0.12068],
|
||||
"rotation": [0, -180, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [19.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [34, 18], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [18.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [34, 30], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 30], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 30], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.27871, 3.33013, -0.36692],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [-0.51005, 3.15196, 0.09059],
|
||||
"rotation": [0, -135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [17.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [34, 8], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [16.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [34, 13], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 28], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 28], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.66621, 3.33013, -0.28233],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [-0.72132, 3.15196, 0.60064],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [15.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [33, 30], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [47.5, 14], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [32, 32], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 26], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 26], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.27871, 3.33013, -0.19774],
|
||||
"size": [0.68641, 4.67489, 0.99022],
|
||||
"pivot": [-0.51005, 3.15196, 1.11068],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [14.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"east": {"uv": [30, 32], "uv_size": [-1, 4.5]},
|
||||
"south": {"uv": [13.5, 47], "uv_size": [-0.5, 4.5]},
|
||||
"west": {"uv": [31, 32], "uv_size": [-1, 4.5]},
|
||||
"up": {"uv": [51, 24], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 24], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.29172, 2.43075, -0.13846],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"uv": {
|
||||
"north": {"uv": [47.5, 0], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [33, 14], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [46.5, 42], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [33, 20], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [51, 51], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 51], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.50346, 2.43075, -0.16824],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [0.43354, 3.5293, 0.94392],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [46.5, 36], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [32, 26], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [31.5, 46], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [33, 8], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [51, 50], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [50, 51], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.83283, 2.43075, -0.24014],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [0.61312, 3.5293, 0.51038],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [46.5, 30], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [32, 14], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [30.5, 46], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [32, 20], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [51, 48], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 48], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.50346, 2.43075, -0.31204],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [0.43354, 3.5293, 0.07684],
|
||||
"rotation": [0, 135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [29.5, 46], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [31, 26], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [46.5, 24], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [32, 8], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [51, 46], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 46], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.29172, 2.43075, -0.34182],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [0, 3.5293, -0.10273],
|
||||
"rotation": [0, -180, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [22.5, 46], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [31, 20], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [46.5, 18], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [22, 30], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [51, 44], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 44], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.0869, 2.43075, -0.31204],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [-0.43354, 3.5293, 0.07684],
|
||||
"rotation": [0, -135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [46.5, 12], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [31, 8], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [46.5, 6], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [31, 14], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [42, 52], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 42], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.41628, 2.43075, -0.24014],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [-0.61312, 3.5293, 0.51038],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [46.5, 0], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [30, 20], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [45.5, 44], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [30, 26], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [51, 41], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 41], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.0869, 2.43075, -0.16824],
|
||||
"size": [0.58345, 5.87366, 0.84169],
|
||||
"pivot": [-0.43354, 3.5293, 0.94392],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [42.5, 45], "uv_size": [-0.5, 6]},
|
||||
"east": {"uv": [30, 8], "uv_size": [-1, 6]},
|
||||
"south": {"uv": [45.5, 38], "uv_size": [-0.5, 6]},
|
||||
"west": {"uv": [30, 14], "uv_size": [-1, 6]},
|
||||
"up": {"uv": [39, 52], "uv_size": [0.5, -1]},
|
||||
"down": {"uv": [51, 39], "uv_size": [0.5, 1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.23046, 1.29748, -0.1096],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"uv": {
|
||||
"north": {"uv": [42.5, 8], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [4.5, 42], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [3.5, 42], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [42.5, 16], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [18, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 18], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.39773, 1.29748, -0.13313],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [0.3425, 3.91534, 0.74548],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [1.5, 42], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [42.5, 0], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [0.5, 42], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [2.5, 42], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [17, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 17], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.65794, 1.29748, -0.18993],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [0.48436, 3.91534, 0.40298],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [39.5, 41], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [38.5, 41], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [41.5, 32], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [41.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [16, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 16], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.39773, 1.29748, -0.24673],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [0.3425, 3.91534, 0.06049],
|
||||
"rotation": [0, 135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [41.5, 16], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [41.5, 8], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [41.5, 0], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [41.5, 24], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [15, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 15], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.23046, 1.29748, -0.27026],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [0, 3.91534, -0.08138],
|
||||
"rotation": [0, -180, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [37.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [40.5, 32], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [40.5, 24], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [40.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [14, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 14], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.85865, 1.29748, -0.24673],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [-0.3425, 3.91534, 0.06049],
|
||||
"rotation": [0, -135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [40.5, 8], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [8.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [7.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [40.5, 16], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [13, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 13], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-1.11886, 1.29748, -0.18993],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [-0.48436, 3.91534, 0.40298],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [5.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [40.5, 0], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [39.5, 33], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [6.5, 40], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [12, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 12], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.85865, 1.29748, -0.13313],
|
||||
"size": [0.46092, 7.39019, 0.66493],
|
||||
"pivot": [-0.3425, 3.91534, 0.74548],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [39.5, 8], "uv_size": [-0.5, 7.5]},
|
||||
"east": {"uv": [39.5, 0], "uv_size": [-0.5, 7.5]},
|
||||
"south": {"uv": [38.5, 33], "uv_size": [-0.5, 7.5]},
|
||||
"west": {"uv": [39.5, 16], "uv_size": [-0.5, 7.5]},
|
||||
"up": {"uv": [11, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 11], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.16568, 0.64242, -0.07909],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"uv": {
|
||||
"north": {"uv": [17.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [16.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [15.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [38.5, 22], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [26, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 26], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.28593, 0.64242, -0.096],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [0.24622, 4.2744, 0.53563],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [38.5, 13], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [13.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [12.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [14.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [25, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 25], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.47299, 0.64242, -0.13684],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [0.34821, 4.2744, 0.28941],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [10.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [38.5, 4], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [37.5, 31], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [11.5, 38], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [24, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 24], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.28593, 0.64242, -0.17767],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [0.24622, 4.2744, 0.04319],
|
||||
"rotation": [0, 135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [30.5, 37], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [29.5, 37], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [37.5, 22], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [31.5, 37], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [23, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 23], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.16568, 0.64242, -0.19459],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [0, 4.2744, -0.0588],
|
||||
"rotation": [0, -180, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [37.5, 13], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [37.5, 4], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [36.5, 35], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [22.5, 37], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [22, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 22], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.61729, 0.64242, -0.17767],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [-0.24622, 4.2744, 0.04319],
|
||||
"rotation": [0, -135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [21.5, 36], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [36.5, 17], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [36.5, 8], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [36.5, 26], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [21, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 21], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.80435, 0.64242, -0.13684],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [-0.34821, 4.2744, 0.28941],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [34.5, 35], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [33.5, 35], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [32.5, 35], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [35.5, 35], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [20, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 20], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.61729, 0.64242, -0.096],
|
||||
"size": [0.33136, 8.45031, 0.47802],
|
||||
"pivot": [-0.24622, 4.2744, 0.53563],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [35.5, 17], "uv_size": [-0.5, 8.5]},
|
||||
"east": {"uv": [9.5, 35], "uv_size": [-0.5, 8.5]},
|
||||
"south": {"uv": [35.5, 8], "uv_size": [-0.5, 8.5]},
|
||||
"west": {"uv": [35.5, 26], "uv_size": [-0.5, 8.5]},
|
||||
"up": {"uv": [19, 52.5], "uv_size": [0.5, -0.5]},
|
||||
"down": {"uv": [52, 19], "uv_size": [0.5, 0.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.61729, -0.35758, -1.096],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [-0.24622, 4.2744, 0.53563],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 7], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 33], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [7.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [35.5, 49], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [50, 49.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [49, 50], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.80435, -0.35758, -1.13684],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [-0.34821, 4.2744, 0.28941],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 6], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [33.5, 49], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [6.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 32], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [47, 51.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [48, 50], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.61729, -0.35758, -1.17767],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [-0.24622, 4.2744, 0.04319],
|
||||
"rotation": [0, -135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 5], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 30], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [5.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 31], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [46, 51.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [50, 46], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.16568, -0.35758, -1.19459],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [0, 4.2744, -0.0588],
|
||||
"rotation": [0, -180, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 4], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 28], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [4.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 29], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [50, 45.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [45, 50], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.28593, -0.35758, -1.17767],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [0.24622, 4.2744, 0.04319],
|
||||
"rotation": [0, 135, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 3], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 26], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [3.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 27], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [43, 51.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [44, 50], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.47299, -0.35758, -1.13684],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [0.34821, 4.2744, 0.28941],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 2], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 24], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [2.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 25], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [41, 51.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [50, 42], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [0.28593, -0.35758, -1.096],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"pivot": [0.24622, 4.2744, 0.53563],
|
||||
"rotation": [0, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 1], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 22], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [1.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 23], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [40, 51.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [50, 40], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.16568, -0.35758, -1.07909],
|
||||
"size": [0.33136, 1, 1.47802],
|
||||
"uv": {
|
||||
"north": {"uv": [52.5, 0], "uv_size": [-0.5, 1]},
|
||||
"east": {"uv": [50.5, 20], "uv_size": [-1.5, 1]},
|
||||
"south": {"uv": [0.5, 52], "uv_size": [-0.5, 1]},
|
||||
"west": {"uv": [50.5, 21], "uv_size": [-1.5, 1]},
|
||||
"up": {"uv": [38, 51.5], "uv_size": [0.5, -1.5]},
|
||||
"down": {"uv": [50, 38], "uv_size": [0.5, 1.5]}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -15,6 +15,113 @@
|
|||
"name": "bone",
|
||||
"pivot": [0, 19.5, 0]
|
||||
},
|
||||
{
|
||||
"name": "flare",
|
||||
"parent": "bone",
|
||||
"pivot": [0, -0.47857, 0],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-16.75, -0.45, -0.75],
|
||||
"size": [16, 0, 1.5],
|
||||
"uv": {
|
||||
"up": {"uv": [20, 32], "uv_size": [-16, -2]},
|
||||
"down": {"uv": [20, 32], "uv_size": [-16, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-24.75, -0.45, -0.75],
|
||||
"size": [24, 0, 1.5],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, 90, 0],
|
||||
"uv": {
|
||||
"up": {"uv": [20, 32], "uv_size": [-16, -2]},
|
||||
"down": {"uv": [20, 32], "uv_size": [-16, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-16.75, -0.45, -0.75],
|
||||
"size": [16, 0, 1.5],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, 180, 0],
|
||||
"uv": {
|
||||
"up": {"uv": [20, 32], "uv_size": [-16, -2]},
|
||||
"down": {"uv": [20, 32], "uv_size": [-16, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-16, 14.5, -1],
|
||||
"size": [32, 0, 2],
|
||||
"pivot": [0, 14.5, 0],
|
||||
"rotation": [135, 0, 90],
|
||||
"uv": {
|
||||
"up": {"uv": [20, 32], "uv_size": [-16, -2]},
|
||||
"down": {"uv": [20, 32], "uv_size": [-16, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-16, 14.5, -1],
|
||||
"size": [32, 0, 2],
|
||||
"pivot": [0, 14.5, 0],
|
||||
"rotation": [-135, 0, 90],
|
||||
"uv": {
|
||||
"up": {"uv": [20, 32], "uv_size": [-16, -2]},
|
||||
"down": {"uv": [20, 32], "uv_size": [-16, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-24.75, -0.45, -0.75],
|
||||
"size": [24, 0, 1.5],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"up": {"uv": [20, 32], "uv_size": [-16, -2]},
|
||||
"down": {"uv": [20, 32], "uv_size": [-16, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-2.75, -0.45, -2.75],
|
||||
"size": [5.5, 0, 5.5],
|
||||
"pivot": [0, -0.45, 0],
|
||||
"rotation": [0, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"east": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"south": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"west": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"up": {"uv": [4, 32], "uv_size": [-2, -2]},
|
||||
"down": {"uv": [4, 32], "uv_size": [-2, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-2.5, 1.3, -2.5],
|
||||
"size": [5, 0, 5],
|
||||
"pivot": [0, 1.3, 0],
|
||||
"rotation": [90, -45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"east": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"south": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"west": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"up": {"uv": [4, 32], "uv_size": [-2, -2]},
|
||||
"down": {"uv": [4, 32], "uv_size": [-2, -2]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-2.5, 1.3, -2.5],
|
||||
"size": [5, 0, 5],
|
||||
"pivot": [0, 1.3, 0],
|
||||
"rotation": [90, 45, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"east": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"south": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"west": {"uv": [2, 30], "uv_size": [2, 2]},
|
||||
"up": {"uv": [4, 32], "uv_size": [-2, -2]},
|
||||
"down": {"uv": [4, 32], "uv_size": [-2, -2]}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "body",
|
||||
"parent": "bone",
|
||||
|
@ -243,8 +350,6 @@
|
|||
{
|
||||
"origin": [-0.24018, -19.185, -16.12402],
|
||||
"size": [0.53362, 1.28869, 25.62752],
|
||||
"pivot": [0.02663, -18.54066, 9.18974],
|
||||
"rotation": [0, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [13, 29], "uv_size": [1, 1]},
|
||||
"south": {"uv": [29, 13], "uv_size": [1, 1]},
|
||||
|
@ -298,8 +403,6 @@
|
|||
{
|
||||
"origin": [-0.60307, -20.15708, -11.65478],
|
||||
"size": [1.34712, 3.25329, 8.54567],
|
||||
"pivot": [0.0705, -18.53043, 4.5988],
|
||||
"rotation": [0, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [16, 25], "uv_size": [1, 3]},
|
||||
"south": {"uv": [17, 25], "uv_size": [1, 3]},
|
||||
|
@ -353,8 +456,6 @@
|
|||
{
|
||||
"origin": [-0.33442, -19.43744, -21.21069],
|
||||
"size": [0.74488, 1.79888, 5.72526],
|
||||
"pivot": [0.03802, -18.538, -11.22341],
|
||||
"rotation": [0, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [2, 26], "uv_size": [1, 2]},
|
||||
"south": {"uv": [26, 2], "uv_size": [1, 2]},
|
||||
|
@ -408,8 +509,6 @@
|
|||
{
|
||||
"origin": [-0.24018, -19.185, 17.37598],
|
||||
"size": [0.53362, 1.28869, 0.62752],
|
||||
"pivot": [0.02663, -18.54066, 27.68974],
|
||||
"rotation": [0, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [29, 27], "uv_size": [1, 1]},
|
||||
"south": {"uv": [28, 29], "uv_size": [1, 1]},
|
||||
|
@ -463,8 +562,6 @@
|
|||
{
|
||||
"origin": [-0.29088, -19.30743, 1.69012],
|
||||
"size": [0.63501, 1.53354, 1.23175],
|
||||
"pivot": [0.02663, -18.54066, 10.48849],
|
||||
"rotation": [0, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [21, 25], "uv_size": [1, 2]},
|
||||
"south": {"uv": [25, 21], "uv_size": [1, 2]},
|
||||
|
@ -518,8 +615,6 @@
|
|||
{
|
||||
"origin": [-0.07743, -18.79195, 9.47598],
|
||||
"size": [0.20811, 0.50259, 8],
|
||||
"pivot": [0.02663, -18.54066, 17.59835],
|
||||
"rotation": [0, 0, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [29, 21], "uv_size": [1, 1]},
|
||||
"south": {"uv": [22, 29], "uv_size": [1, 1]},
|
||||
|
|
|
@ -0,0 +1,79 @@
|
|||
{
|
||||
"format_version": "1.12.0",
|
||||
"minecraft:geometry": [
|
||||
{
|
||||
"description": {
|
||||
"identifier": "geometry.unknown",
|
||||
"texture_width": 16,
|
||||
"texture_height": 16,
|
||||
"visible_bounds_width": 2,
|
||||
"visible_bounds_height": 1.5,
|
||||
"visible_bounds_offset": [0, 0.25, 0]
|
||||
},
|
||||
"bones": [
|
||||
{
|
||||
"name": "bone",
|
||||
"pivot": [0, 0, 0],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-0.5, 1.25, -1.25],
|
||||
"size": [1, 1, 1],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"east": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"south": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"west": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"up": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"down": {"uv": [1, 1], "uv_size": [1, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.25, -1, -1],
|
||||
"size": [0.5, 2.25, 0.5],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"east": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"south": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"west": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"up": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"down": {"uv": [0, 3], "uv_size": [1, -3]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.5, 1.25, 0.25],
|
||||
"size": [1, 1, 1],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"east": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"south": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"west": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"up": {"uv": [1, 0], "uv_size": [1, 1]},
|
||||
"down": {"uv": [1, 1], "uv_size": [1, -1]}
|
||||
}
|
||||
},
|
||||
{
|
||||
"origin": [-0.25, -1, 0.5],
|
||||
"size": [0.5, 2.25, 0.5],
|
||||
"pivot": [0, 0, 0],
|
||||
"rotation": [0, -90, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"east": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"south": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"west": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"up": {"uv": [0, 0], "uv_size": [1, 3]},
|
||||
"down": {"uv": [0, 3], "uv_size": [1, -3]}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 276 B After Width: | Height: | Size: 173 B |
Binary file not shown.
After Width: | Height: | Size: 193 B |
Binary file not shown.
Before Width: | Height: | Size: 129 B After Width: | Height: | Size: 109 B |
Loading…
Add table
Reference in a new issue