还是优化动画,优化低帧率情况下动画

This commit is contained in:
Atsuihsio 2024-11-02 22:08:30 +08:00
parent 69f55fc6c7
commit cb1756f6b1
32 changed files with 130 additions and 117 deletions

View file

@ -67,7 +67,7 @@ public class AK12ItemModel extends GeoModel<AK12Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ * 13 * times;;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;
@ -122,21 +122,21 @@ public class AK12ItemModel extends GeoModel<AK12Item> {
};
}
fireRotY = (float) Mth.lerp(0.5f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
fireRotZ = (float) Mth.lerp(0.7f * times, fireRotZ, (0.4f + 0.5 * fr) * ClientEventHandler.recoilHorizon);
fireRotY = (float) Mth.lerp(0.3f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
fireRotZ = (float) Mth.lerp(2f * times, fireRotZ, (0.4f + 0.5 * fpz) * ClientEventHandler.recoilHorizon);
shen.setPosX((float) (-1.65f * ClientEventHandler.recoilHorizon * fpz * fp));
shen.setPosX(-0.4f * (float) (ClientEventHandler.recoilHorizon * (0.5 + 0.4 * ClientEventHandler.fireSpread)));
shen.setPosY((float) (0.15f * fp + 0.18f * fr));
shen.setPosZ((float) (0.275 * fp + 0.34f * fr + 0.65 * fpz));
shen.setRotX((float) (0.01f * fp + 0.08f * fr + 0.01f * fpz));
shen.setRotY(fireRotY);
shen.setRotZ(fireRotZ);
shen.setPosX((float) (shen.getPosX() * (1 - 0.1 * zt)));
shen.setPosX((float) (shen.getPosX() * (1 - 0.4 * zt)));
shen.setPosY((float) (shen.getPosY() * (-1 + 0.8 * zt)));
shen.setPosZ((float) (shen.getPosZ() * (1 - 0.6 * zt)));
shen.setRotX((float) (shen.getRotX() * (1 - 0.9 * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - 0.75 * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - 0.85 * zt)));
shen.setRotZ((float) (shen.getRotZ() * (1 - 0.4 * zt)));
shuan.setPosZ(2.4f * (float) fp);

View file

@ -123,21 +123,21 @@ public class AK47ItemModel extends GeoModel<AK47Item> {
};
}
fireRotY = (float) Mth.lerp(0.5f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
fireRotZ = (float) Mth.lerp(0.7f * times, fireRotZ, (0.4f + 0.5 * fr) * ClientEventHandler.recoilHorizon);
fireRotY = (float) Mth.lerp(0.3f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
fireRotZ = (float) Mth.lerp(2f * times, fireRotZ, (0.4f + 0.5 * fpz) * ClientEventHandler.recoilHorizon);
shen.setPosX((float) (-1.65f * ClientEventHandler.recoilHorizon * fpz * fp));
shen.setPosX(-0.4f * (float) (ClientEventHandler.recoilHorizon * (0.5 + 0.4 * ClientEventHandler.fireSpread)));
shen.setPosY((float) (0.15f * fp + 0.18f * fr));
shen.setPosZ((float) (0.275 * fp + 0.34f * fr + 0.65 * fpz));
shen.setRotX((float) (0.01f * fp + 0.08f * fr + 0.01f * fpz));
shen.setRotY(fireRotY);
shen.setRotZ(fireRotZ);
shen.setPosX((float) (shen.getPosX() * (1 - 0.1 * zt)));
shen.setPosX((float) (shen.getPosX() * (1 - 0.4 * zt)));
shen.setPosY((float) (shen.getPosY() * (-1 + 0.8 * zt)));
shen.setPosZ((float) (shen.getPosZ() * (1 - 0.6 * zt)));
shen.setRotX((float) (shen.getRotX() * (1 - 0.9 * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - 0.75 * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - 0.85 * zt)));
shen.setRotZ((float) (shen.getRotZ() * (1 - 0.4 * zt)));
shuan.setPosZ(2.4f * (float) fp);

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.shotgun.Aa12Item;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -40,6 +40,7 @@ public class Aa12ItemModel extends GeoModel<Aa12Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -53,7 +54,7 @@ public class Aa12ItemModel extends GeoModel<Aa12Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -40,6 +40,7 @@ public class AbekiriItemModel extends GeoModel<AbekiriItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -53,7 +54,7 @@ public class AbekiriItemModel extends GeoModel<AbekiriItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -51,7 +51,8 @@ public class BocekItemModel extends GeoModel<BocekItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
double fpz = ClientEventHandler.firePosZ;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;
double pp = ClientEventHandler.pullPos;
@ -69,7 +70,6 @@ public class BocekItemModel extends GeoModel<BocekItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double zt = ClientEventHandler.zoomTime;
arrow.setPosZ(9f * (float) bp);
rh.setPosZ(9f * (float) hp);

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.machinegun.DevotionItem;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -45,6 +45,7 @@ public class DevotionItemModel extends GeoModel<DevotionItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -58,7 +59,7 @@ public class DevotionItemModel extends GeoModel<DevotionItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.handgun.Glock17Item;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -42,6 +42,7 @@ public class Glock17ItemModel extends GeoModel<Glock17Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -55,7 +56,7 @@ public class Glock17ItemModel extends GeoModel<Glock17Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.handgun.Glock18Item;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -50,6 +50,7 @@ public class Glock18ItemModel extends GeoModel<Glock18Item> {
switch_.setRotX(0);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -63,7 +64,7 @@ public class Glock18ItemModel extends GeoModel<Glock18Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -80,12 +80,15 @@ public class Hk416ItemModel extends GeoModel<Hk416Item> {
default -> 0f;
};
float scaleZ = switch (type) {
case 0 -> 0.2f;
case 1 -> 0.4f;
case 2 -> 0.8f;
case 3 -> 0.78f;
default -> 0f;
};
float posZ = switch (type) {
case 0, 1 -> 3.8f;
case 0 -> 3f;
case 1 -> 3.5f;
case 2 -> 7.4f;
case 3 -> 6.8f;
default -> 0f;
@ -116,9 +119,9 @@ public class Hk416ItemModel extends GeoModel<Hk416Item> {
}
fireRotY = (float) Mth.lerp(0.5f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
fireRotZ = (float) Mth.lerp(0.9f * times, fireRotZ, (0.2f + 0.3 * fr) * ClientEventHandler.recoilHorizon);
fireRotZ = (float) Mth.lerp(2f * times, fireRotZ, (0.2f + 0.3 * fpz) * ClientEventHandler.recoilHorizon);
shen.setPosX((float) (-3.45f * ClientEventHandler.recoilHorizon * fpz * fp));
shen.setPosX(-0.4f * (float) (ClientEventHandler.recoilHorizon * (0.5 + 0.4 * ClientEventHandler.fireSpread)));
shen.setPosY((float) (0.15f * fp + 0.18f * fr));
shen.setPosZ((float) (0.275 * fp + 0.34f * fr + 0.65 * fpz));
shen.setRotX((float) (0.01f * fp + 0.05f * fr + 0.01f * fpz));
@ -127,17 +130,15 @@ public class Hk416ItemModel extends GeoModel<Hk416Item> {
shen.setPosX((float) (shen.getPosX() * (1 - 0.1 * zt)));
shen.setPosY((float) (shen.getPosY() * (-1 + 0.8 * zt)));
shen.setPosZ((float) (shen.getPosZ() * (1 - 0.6 * zt)));
shen.setRotX((float) (shen.getRotX() * (1 - 0.9 * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - 0.75 * zt)));
shen.setPosZ((float) (shen.getPosZ() * (1 + 0.3 * zt)));
shen.setRotX((float) (shen.getRotX() * (1 - (type == 3 ? 0.96 : type == 1 ? 0.8 : 0.9) * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - (type == 3 ? 0.95 : 0.9) * zt)));
shen.setRotZ((float) (shen.getRotZ() * (1 - 0.4 * zt)));
cross1.setPosY(-0.75f * (float) fpz);
cross2.setPosY(-0.7f * (float) fpz);
cross3.setPosY(-0.2f * (float) fpz);
shen.setPosX(0.2f * (float) (ClientEventHandler.recoilHorizon * (0.5 + 0.4 * ClientEventHandler.fireSpread)));
CoreGeoBone l = getAnimationProcessor().getBone("l");
CoreGeoBone r = getAnimationProcessor().getBone("r");
rotXBipod = Mth.lerp(1.5f * times, rotXBipod, isProne(player) ? -90 : 0);

View file

@ -39,6 +39,7 @@ public class HuntingRifleItemModel extends GeoModel<HuntingRifleItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -52,7 +53,7 @@ public class HuntingRifleItemModel extends GeoModel<HuntingRifleItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -40,6 +40,7 @@ public class JavelinItemModel extends GeoModel<JavelinItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
double swayX = ClientEventHandler.swayX;
@ -52,7 +53,7 @@ public class JavelinItemModel extends GeoModel<JavelinItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -51,6 +51,7 @@ public class K98ItemModel extends GeoModel<K98Item> {
clip.setScaleZ(1);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -64,7 +65,7 @@ public class K98ItemModel extends GeoModel<K98Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.handgun.M1911Item;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -42,6 +42,7 @@ public class M1911ItemModel extends GeoModel<M1911Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -55,7 +56,7 @@ public class M1911ItemModel extends GeoModel<M1911Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -138,9 +138,9 @@ public class M4ItemModel extends GeoModel<M4Item> {
}
fireRotY = (float) Mth.lerp(0.5f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
fireRotZ = (float) Mth.lerp(0.9f * times, fireRotZ, (0.2f + 0.3 * fr) * ClientEventHandler.recoilHorizon);
fireRotZ = (float) Mth.lerp(2f * times, fireRotZ, (0.2f + 0.3 * fpz) * ClientEventHandler.recoilHorizon);
shen.setPosX((float) (-3.45f * ClientEventHandler.recoilHorizon * fpz * fp));
shen.setPosX(-0.4f * (float) (ClientEventHandler.recoilHorizon * (0.5 + 0.4 * ClientEventHandler.fireSpread)));
shen.setPosY((float) (0.15f * fp + 0.18f * fr));
shen.setPosZ((float) (0.275 * fp + 0.34f * fr + 0.65 * fpz));
shen.setRotX((float) (0.01f * fp + 0.05f * fr + 0.01f * fpz));
@ -154,13 +154,11 @@ public class M4ItemModel extends GeoModel<M4Item> {
shen.setPosX((float) (shen.getPosX() * (1 - 0.1 * zt)));
shen.setPosY((float) (shen.getPosY() * (-1 + 0.8 * zt)));
shen.setPosZ((float) (shen.getPosZ() * (1 - 0.6 * zt)));
shen.setPosZ((float) (shen.getPosZ() * (1 + 0.3 * zt)));
shen.setRotX((float) (shen.getRotX() * (1 - (type == 3 ? 0.96 : type == 1 ? 0.8 : 0.9) * zt)));
shen.setRotY((float) (shen.getRotY() * (1 - (type == 3 ? 0.95 : 0.9) * zt)));
shen.setRotZ((float) (shen.getRotZ() * (1 - 0.4 * zt)));
shen.setPosX(0.2f * (float) (ClientEventHandler.recoilHorizon * (0.5 + 0.4 * ClientEventHandler.fireSpread)));
CoreGeoBone l = getAnimationProcessor().getBone("l");
CoreGeoBone r = getAnimationProcessor().getBone("r");
rotXBipod = Mth.lerp(1.5f * times, rotXBipod, isProne(player) ? -90 : 0);

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.machinegun.M60Item;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -85,6 +85,7 @@ public class M60ItemModel extends GeoModel<M60Item> {
b1.setScaleZ(0);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -98,7 +99,7 @@ public class M60ItemModel extends GeoModel<M60Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -39,6 +39,7 @@ public class M79ItemModel extends GeoModel<M79Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -52,7 +53,7 @@ public class M79ItemModel extends GeoModel<M79Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -39,6 +39,7 @@ public class M870ItemModel extends GeoModel<M870Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -52,7 +53,7 @@ public class M870ItemModel extends GeoModel<M870Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -42,6 +42,7 @@ public class M98bItemModel extends GeoModel<M98bItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -55,7 +56,7 @@ public class M98bItemModel extends GeoModel<M98bItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -40,6 +40,7 @@ public class MarlinItemModel extends GeoModel<MarlinItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -53,7 +54,7 @@ public class MarlinItemModel extends GeoModel<MarlinItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -40,11 +40,7 @@ public class MinigunItemModel extends GeoModel<MinigunItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float fps = Minecraft.getInstance().getFps();
if (fps <= 0) {
fps = 1f;
}
float times = 250f / fps;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double swayX = ClientEventHandler.swayX;
double swayY = ClientEventHandler.swayY;
@ -56,7 +52,7 @@ public class MinigunItemModel extends GeoModel<MinigunItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.rifle.Mk14Item;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -52,6 +52,7 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
r.setRotX(-1.5f);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -65,7 +66,7 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -45,6 +45,7 @@ public class MosinNagantItemModel extends GeoModel<MosinNagantItem> {
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -58,7 +59,7 @@ public class MosinNagantItemModel extends GeoModel<MosinNagantItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -44,6 +44,7 @@ public class Ntw20Model extends GeoModel<Ntw20Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -57,7 +58,7 @@ public class Ntw20Model extends GeoModel<Ntw20Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -40,6 +40,7 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -53,7 +54,7 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -44,6 +44,7 @@ public class RpgItemModel extends GeoModel<RpgItem> {
hammer.setRotX(-90 * Mth.DEG_TO_RAD);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -57,7 +58,7 @@ public class RpgItemModel extends GeoModel<RpgItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.machinegun.RpkItem;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -35,7 +35,6 @@ public class RpkItemModel extends GeoModel<RpkItem> {
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone scope = getAnimationProcessor().getBone("pka");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
CoreGeoBone button = getAnimationProcessor().getBone("button");
CoreGeoBone shuan = getAnimationProcessor().getBone("shuan");
@ -44,6 +43,7 @@ public class RpkItemModel extends GeoModel<RpkItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -57,7 +57,7 @@ public class RpkItemModel extends GeoModel<RpkItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -42,6 +42,7 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -55,7 +56,7 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;
@ -71,12 +72,6 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
scope.setScaleZ(1f - (0.8f * (float) zp));
float fps = Minecraft.getInstance().getFps();
if (fps <= 0) {
fps = 1f;
}
float times = 250f / fps;
cb.setRotZ(cb.getRotZ() + times * 0.03f * (float) (stack.getOrCreateTag().getDouble("chamber_rot")));
CoreGeoBone holo = getAnimationProcessor().getBone("holo");

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.sniper.SvdItem;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -51,6 +51,7 @@ public class SvdItemModel extends GeoModel<SvdItem> {
bolt.setPosZ(3.25f);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -64,7 +65,7 @@ public class SvdItemModel extends GeoModel<SvdItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -48,6 +48,7 @@ public class TaserItemModel extends GeoModel<TaserItem> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -61,7 +62,7 @@ public class TaserItemModel extends GeoModel<TaserItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -39,6 +39,7 @@ public class TracheliumItemModel extends GeoModel<Trachelium> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -52,7 +53,7 @@ public class TracheliumItemModel extends GeoModel<Trachelium> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -1,10 +1,10 @@
package net.mcreator.superbwarfare.client.model.item;
import net.mcreator.superbwarfare.ModUtils;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.mcreator.superbwarfare.event.ClientEventHandler;
import net.mcreator.superbwarfare.init.ModTags;
import net.mcreator.superbwarfare.item.gun.smg.VectorItem;
import net.mcreator.superbwarfare.client.AnimationHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth;
@ -52,6 +52,7 @@ public class VectorItemModel extends GeoModel<VectorItem> {
kmj.setRotX(0);
}
float times = 0.6f * (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
double zt = ClientEventHandler.zoomTime;
double zp = ClientEventHandler.zoomPos;
double zpz = ClientEventHandler.zoomPosZ;
@ -65,7 +66,7 @@ public class VectorItemModel extends GeoModel<VectorItem> {
double turnRotX = ClientEventHandler.turnRot[0];
double turnRotY = ClientEventHandler.turnRot[1];
double turnRotZ = ClientEventHandler.turnRot[2];
double fpz = ClientEventHandler.firePosZ;
double fpz = ClientEventHandler.firePosZ * 13 * times;
double fp = ClientEventHandler.firePos;
double fr = ClientEventHandler.fireRot;

View file

@ -6,7 +6,7 @@
"identifier": "geometry.hk416",
"texture_width": 256,
"texture_height": 256,
"visible_bounds_width": 60,
"visible_bounds_width": 62,
"visible_bounds_height": 12,
"visible_bounds_offset": [0, -3, 0]
},
@ -9015,190 +9015,190 @@
{
"name": "Cross1",
"parent": "0",
"pivot": [0, 4.81172, -327.5],
"pivot": [0, 4.81172, -497.5],
"cubes": [
{
"origin": [-1, 9.33906, -327.5],
"origin": [-1, 9.33906, -497.5],
"size": [2, 0.5, 0],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-2.4319, 8.74595, -327.5],
"origin": [-2.4319, 8.74595, -497.5],
"size": [2, 0.5, 0],
"pivot": [-2.20684, 8.1145, -327.5],
"pivot": [-2.20684, 8.1145, -497.5],
"rotation": [0, 0, -22.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-3.98178, 8.74595, -327.5],
"origin": [-3.98178, 8.74595, -497.5],
"size": [2, 0.5, 0],
"pivot": [-2.20684, 8.1145, -327.5],
"pivot": [-2.20684, 8.1145, -497.5],
"rotation": [0, 0, -45],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-5.41369, 9.33906, -327.5],
"origin": [-5.41369, 9.33906, -497.5],
"size": [2, 0.5, 0],
"pivot": [-2.20684, 8.1145, -327.5],
"pivot": [-2.20684, 8.1145, -497.5],
"rotation": [0, 0, -67.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-5.07771, 3.23633, -327.5],
"origin": [-5.07771, 3.23633, -497.5],
"size": [2, 0.5, 0],
"pivot": [-3.30277, 2.60488, -327.5],
"pivot": [-3.30277, 2.60488, -497.5],
"rotation": [0, 0, -135],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-6.50962, 3.82945, -327.5],
"origin": [-6.50962, 3.82945, -497.5],
"size": [2, 0.5, 0],
"pivot": [-3.30277, 2.60488, -327.5],
"pivot": [-3.30277, 2.60488, -497.5],
"rotation": [0, 0, -157.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-3.52783, 3.23633, -327.5],
"origin": [-3.52783, 3.23633, -497.5],
"size": [2, 0.5, 0],
"pivot": [-3.30277, 2.60488, -327.5],
"pivot": [-3.30277, 2.60488, -497.5],
"rotation": [0, 0, -112.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-5.77734, 4.56172, -327.5],
"origin": [-5.77734, 4.56172, -497.5],
"size": [2, 0.5, 0],
"pivot": [-4.77734, 4.81172, -327.5],
"pivot": [-4.77734, 4.81172, -497.5],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-0.25, 9.83906, -327.5],
"origin": [-0.25, 9.83906, -497.5],
"size": [0.5, 2, 0],
"pivot": [0, 4.81172, -327.5],
"pivot": [0, 4.81172, -497.5],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-0.25, 9.83906, -327.5],
"origin": [-0.25, 9.83906, -497.5],
"size": [0.5, 2, 0],
"pivot": [0, 4.81172, -327.5],
"pivot": [0, 4.81172, -497.5],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [78.25, 56], "uv_size": [-0.25, 0.25]}
}
},
{
"origin": [-0.25, 9.83906, -327.5],
"origin": [-0.25, 9.83906, -497.5],
"size": [0.5, 2, 0],
"pivot": [0, 4.81172, -327.5],
"pivot": [0, 4.81172, -497.5],
"rotation": [0, 0, 0],
"uv": {
"south": {"uv": [78.25, 56], "uv_size": [-0.25, 0.25]}
}
},
{
"origin": [-0.25, 9.83906, -327.5],
"origin": [-0.25, 9.83906, -497.5],
"size": [0.5, 2, 0],
"pivot": [0, 4.81172, -327.5],
"pivot": [0, 4.81172, -497.5],
"rotation": [0, 0, -180],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-0.5, 4.31172, -327.5],
"origin": [-0.5, 4.31172, -497.5],
"size": [1, 1, 0],
"pivot": [0, 4.81172, -327.5],
"pivot": [0, 4.81172, -497.5],
"rotation": [0, 0, -135],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [3.52593, 8.07515, -327.5],
"origin": [3.52593, 8.07515, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 157.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [2.13479, 6.88081, -327.5],
"origin": [2.13479, 6.88081, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 112.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [2.94914, 7.33962, -327.5],
"origin": [2.94914, 7.33962, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 135],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [1.20684, 6.76857, -327.5],
"origin": [1.20684, 6.76857, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [0.30658, 7.01997, -327.5],
"origin": [0.30658, 7.01997, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 67.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-0.88776, 8.41112, -327.5],
"origin": [-0.88776, 8.41112, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 22.5],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [-0.42895, 7.59676, -327.5],
"origin": [-0.42895, 7.59676, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, 45],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}
}
},
{
"origin": [3.77734, 8.97541, -327.5],
"origin": [3.77734, 8.97541, -497.5],
"size": [2, 0.5, 0],
"pivot": [2.38867, 4.6299, -327.5],
"pivot": [2.38867, 4.6299, -497.5],
"rotation": [0, 0, -180],
"uv": {
"south": {"uv": [78, 56], "uv_size": [0.25, 0.25]}