添加大部分武器的手臂

This commit is contained in:
Atsuihsio 2024-08-16 20:55:33 +08:00
parent 3f114d69eb
commit bb4ac8606a
70 changed files with 4821 additions and 3090 deletions

View file

@ -53,10 +53,8 @@ public class AK47ItemModel extends GeoModel<AK47Item> {
scope.setScaleZ(1f - (0.4f * (float) p)); scope.setScaleZ(1f - (0.4f * (float) p));
CoreGeoBone holo = getAnimationProcessor().getBone("holo"); stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
holo.setHidden(!(gun.getPosX() > 1.8));
double fp = player.getPersistentData().getDouble("fire_pos"); double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot"); double fr = player.getPersistentData().getDouble("fire_rot");
@ -77,20 +75,6 @@ public class AK47ItemModel extends GeoModel<AK47Item> {
shuan.setPosZ(2.4f * (float) fp); shuan.setPosZ(2.4f * (float) fp);
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.7 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.7 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming) {
flare.setPosY(-0.75f);
} else {
flare.setPosY(0);
}
} else {
flare.setHidden(true);
}
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
float PosX = (float) player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float) player.getPersistentData().getDouble("gun_move_posX");

View file

@ -42,8 +42,8 @@ public class Aa12ItemModel extends GeoModel<Aa12Item> {
double p = player.getPersistentData().getDouble("zoom_pos"); double p = player.getPersistentData().getDouble("zoom_pos");
double zp = player.getPersistentData().getDouble("zoom_pos_z"); double zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(3.48f * (float) p); gun.setPosX(2.105f * (float) p);
gun.setPosY(-0.92f * (float) p - (float) (0.2f * zp)); gun.setPosY(0.17f * (float) p - (float) (0.2f * zp));
gun.setPosZ(0.1f * (float) p + (float) (0.3f * zp)); gun.setPosZ(0.1f * (float) p + (float) (0.3f * zp));
gun.setRotZ((float) (0.02f * zp)); gun.setRotZ((float) (0.02f * zp));
@ -65,17 +65,6 @@ public class Aa12ItemModel extends GeoModel<Aa12Item> {
} }
shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp)); shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
float PosX = (float) player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float) player.getPersistentData().getDouble("gun_move_posX");

View file

@ -63,17 +63,6 @@ public class AbekiriItemModel extends GeoModel<Abekiri> {
shen.setRotZ(-0.1f * (float) (fp + 1.3 * fr)); shen.setRotZ(-0.1f * (float) (fp + 1.3 * fr));
shen.setRotY(-0.15f * (float) fr); shen.setRotY(-0.15f * (float) fr);
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");

View file

@ -44,7 +44,7 @@ public class BocekItemModel extends GeoModel<BocekItem> {
CoreGeoBone deng = getAnimationProcessor().getBone("deng"); CoreGeoBone deng = getAnimationProcessor().getBone("deng");
CoreGeoBone deng2 = getAnimationProcessor().getBone("deng2"); CoreGeoBone deng2 = getAnimationProcessor().getBone("deng2");
CoreGeoBone deng3 = getAnimationProcessor().getBone("deng3"); CoreGeoBone deng3 = getAnimationProcessor().getBone("deng3");
CoreGeoBone holo = getAnimationProcessor().getBone("holo"); CoreGeoBone lh = getAnimationProcessor().getBone("lh");
CoreGeoBone r = getAnimationProcessor().getBone("r"); CoreGeoBone r = getAnimationProcessor().getBone("r");
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
@ -52,9 +52,6 @@ public class BocekItemModel extends GeoModel<BocekItem> {
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return; if (!stack.is(ModTags.Items.GUN)) return;
arrow.setHidden(stack.getOrCreateTag().getInt("arrow_empty") > 0);
jian.setHidden(stack.getOrCreateTag().getInt("max_ammo") == 0);
double pp = player.getPersistentData().getDouble("pullpos"); double pp = player.getPersistentData().getDouble("pullpos");
double bp = player.getPersistentData().getDouble("bowpos"); double bp = player.getPersistentData().getDouble("bowpos");
double hp = player.getPersistentData().getDouble("handpos"); double hp = player.getPersistentData().getDouble("handpos");
@ -80,19 +77,20 @@ public class BocekItemModel extends GeoModel<BocekItem> {
deng2.setPosZ(0.05f * (float) bp); deng2.setPosZ(0.05f * (float) bp);
deng3.setRotX(-1.6f * (float) bp); deng3.setRotX(-1.6f * (float) bp);
deng3.setPosZ(0.05f * (float) bp); deng3.setPosZ(0.05f * (float) bp);
deng.setScaleZ(1f + (0.07f * (float) bp));
deng.setHidden(!(arrow.getPosZ() > 8.5));
double p = player.getPersistentData().getDouble("zoom_pos"); double p = player.getPersistentData().getDouble("zoom_pos");
double zp = player.getPersistentData().getDouble("zoom_pos_z"); double zp = player.getPersistentData().getDouble("zoom_pos_z");
lh.setRotX(0.2f * (float) p);
shen_pos.setPosX(-3.4f * (float) p); shen_pos.setPosX(-3.4f * (float) p);
shen_pos.setPosY(6.76f * (float) p - (float) (0.2f * zp)); shen_pos.setPosY(6.76f * (float) p - (float) (0.2f * zp));
shen_pos.setPosZ(6.4f * (float) p + (float) (0.3f * zp)); shen_pos.setPosZ(6.4f * (float) p + (float) (0.3f * zp));
r.setScaleZ(1f - (0.31f * (float) p)); r.setScaleZ(1f - (0.31f * (float) p));
shen.setRotZ(60 * Mth.DEG_TO_RAD * (float) p + (float) (0.05f * zp) - 0.2f); shen.setRotZ(60 * Mth.DEG_TO_RAD * (float) p + (float) (0.05f * zp) - 0.2f);
holo.setHidden(!(shen_pos.getPosX() < -0.7 && gun.getPosZ() < -2.5)); stack.getOrCreateTag().putBoolean("HoloHidden", !((shen_pos.getPosX() < -0.7 && gun.getPosZ() < -2.5)));
double fp = player.getPersistentData().getDouble("fire_pos"); double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot"); double fr = player.getPersistentData().getDouble("fire_rot");

View file

@ -42,13 +42,11 @@ public class DevotionItemModel extends GeoModel<Devotion> {
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return; if (!stack.is(ModTags.Items.GUN)) return;
double p = 0; double p = player.getPersistentData().getDouble("zoom_pos");
p = player.getPersistentData().getDouble("zoom_pos");
double zp = 0; double zp = player.getPersistentData().getDouble("zoom_pos_z");
zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(2.19f * (float) p); gun.setPosX(2.17f * (float) p);
gun.setPosY(0.17f * (float) p - (float) (0.5f * zp)); gun.setPosY(0.17f * (float) p - (float) (0.5f * zp));
@ -67,15 +65,16 @@ public class DevotionItemModel extends GeoModel<Devotion> {
bolt.setPosZ(-2f * (float) bp); bolt.setPosZ(-2f * (float) bp);
CoreGeoBone holo = getAnimationProcessor().getBone("holo"); CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (gun.getPosX() > 1.2) { if (gun.getPosX() > 1.2) {
holo.setHidden(false); number.setScaleX(1);
number.setHidden(false); number.setScaleY(1);
} else { } else {
holo.setHidden(true); number.setScaleX(0);
number.setHidden(true); number.setScaleY(0);
} }
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
double fp = player.getPersistentData().getDouble("fire_pos"); double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot"); double fr = player.getPersistentData().getDouble("fire_rot");
@ -92,14 +91,6 @@ public class DevotionItemModel extends GeoModel<Devotion> {
} }
shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp)); shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
CoreGeoBone n0 = getAnimationProcessor().getBone("00"); CoreGeoBone n0 = getAnimationProcessor().getBone("00");

View file

@ -75,9 +75,13 @@ public class Glock17ItemModel extends GeoModel<Glock17Item> {
if (stack.getOrCreateTag().getBoolean("HoldOpen")) { if (stack.getOrCreateTag().getBoolean("HoldOpen")) {
slide.setPosZ(1.5f); slide.setPosZ(1.5f);
bullet.setHidden(true); bullet.setScaleX(0);
bullet.setScaleY(0);
bullet.setScaleZ(0);
} else { } else {
bullet.setHidden(false); bullet.setScaleX(1);
bullet.setScaleY(1);
bullet.setScaleZ(1);
} }
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
@ -88,17 +92,6 @@ public class Glock17ItemModel extends GeoModel<Glock17Item> {
double y = player.getPersistentData().getDouble("y"); double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x"); double x = player.getPersistentData().getDouble("x");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
root.setPosX(PosX); root.setPosX(PosX);
root.setPosY((float) y + PosY); root.setPosY((float) y + PosY);

View file

@ -83,9 +83,13 @@ public class Glock18ItemModel extends GeoModel<Glock18Item> {
if (stack.getOrCreateTag().getBoolean("HoldOpen")) { if (stack.getOrCreateTag().getBoolean("HoldOpen")) {
slide.setPosZ(1.5f); slide.setPosZ(1.5f);
bullet.setHidden(true); bullet.setScaleX(0);
bullet.setScaleY(0);
bullet.setScaleZ(0);
} else { } else {
bullet.setHidden(false); bullet.setScaleX(1);
bullet.setScaleY(1);
bullet.setScaleZ(1);
} }
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
@ -96,17 +100,6 @@ public class Glock18ItemModel extends GeoModel<Glock18Item> {
double y = player.getPersistentData().getDouble("y"); double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x"); double x = player.getPersistentData().getDouble("x");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
root.setPosX(PosX); root.setPosX(PosX);
root.setPosY((float) y + PosY); root.setPosY((float) y + PosY);

View file

@ -33,42 +33,31 @@ public class Hk416ItemModel extends GeoModel<Hk416Item> {
public void setCustomAnimations(Hk416Item animatable, long instanceId, AnimationState animationState) { public void setCustomAnimations(Hk416Item animatable, long instanceId, AnimationState animationState) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone"); CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen"); CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone scope = getAnimationProcessor().getBone("eotech"); CoreGeoBone scope = getAnimationProcessor().getBone("eotech");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
if (player == null) return; if (player == null) return;
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return; if (!stack.is(ModTags.Items.GUN)) return;
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
double p = player.getPersistentData().getDouble("zoom_pos"); double p = player.getPersistentData().getDouble("zoom_pos");
double zp = player.getPersistentData().getDouble("zoom_pos_z"); double zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(3.28f * (float) p); gun.setPosX(3.34f * (float) p);
gun.setPosY(1.04f * (float) p - (float) (0.2f * zp)); gun.setPosY(0.54f * (float) p - (float) (0.2f * zp));
gun.setPosZ(6f * (float) p + (float) (0.3f * zp)); gun.setPosZ(2.5f * (float) p + (float) (0.3f * zp));
gun.setRotZ((float) (0.05f * zp)); gun.setRotZ((float) (0.05f * zp));
scope.setScaleZ(1f - (0.5f * (float) p)); scope.setScaleZ(1f - (0.7f * (float) p));
holo.setHidden(!(gun.getPosX() > 3.1)); stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 3.1));
double fp = player.getPersistentData().getDouble("fire_pos"); double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot"); double fr = player.getPersistentData().getDouble("fire_rot");
if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming) { if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming) {
shen.setPosY(-0.01f * (float) (fp + 2 * fr)); shen.setPosY(-0.01f * (float) (fp + 2 * fr));
shen.setPosZ(0.2f * (float) (fp + 0.54f * fr)); shen.setPosZ(1.2f * (float) (fp + 0.54f * fr));
shen.setRotX(0.003f * (float) (fp + fr)); shen.setRotX(0.003f * (float) (fp + fr));
shen.setRotZ(0f); shen.setRotZ(0f);
} else { } else {

View file

@ -33,7 +33,6 @@ public class K98ItemModel extends GeoModel<K98Item> {
public void setCustomAnimations(K98Item animatable, long instanceId, AnimationState animationState) { public void setCustomAnimations(K98Item animatable, long instanceId, AnimationState animationState) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone"); CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen"); CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
CoreGeoBone clip = getAnimationProcessor().getBone("mag"); CoreGeoBone clip = getAnimationProcessor().getBone("mag");
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
@ -42,19 +41,14 @@ public class K98ItemModel extends GeoModel<K98Item> {
if (!stack.is(ModTags.Items.GUN)) return; if (!stack.is(ModTags.Items.GUN)) return;
if (stack.getOrCreateTag().getDouble("prepare") > 13 && stack.getOrCreateTag().getInt("ammo") == 1) { if (stack.getOrCreateTag().getDouble("prepare") > 11 && stack.getOrCreateTag().getInt("ammo") == 1) {
clip.setHidden(true); clip.setScaleX(0);
clip.setScaleY(0);
clip.setScaleZ(0);
} else { } else {
clip.setHidden(false); clip.setScaleX(1);
} clip.setScaleY(1);
clip.setScaleZ(1);
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
} }
double p = player.getPersistentData().getDouble("zoom_pos"); double p = player.getPersistentData().getDouble("zoom_pos");

View file

@ -72,10 +72,14 @@ public class M1911ItemModel extends GeoModel<M1911Item> {
slide.setPosZ(2.75f * (float) fp); slide.setPosZ(2.75f * (float) fp);
if (stack.getOrCreateTag().getBoolean("HoldOpen")) { if (stack.getOrCreateTag().getBoolean("HoldOpen")) {
slide.setPosZ(2.75f); slide.setPosZ(1.5f);
bullet.setHidden(true); bullet.setScaleX(0);
bullet.setScaleY(0);
bullet.setScaleZ(0);
} else { } else {
bullet.setHidden(false); bullet.setScaleX(1);
bullet.setScaleY(1);
bullet.setScaleZ(1);
} }
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
@ -86,17 +90,6 @@ public class M1911ItemModel extends GeoModel<M1911Item> {
double y = player.getPersistentData().getDouble("y"); double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x"); double x = player.getPersistentData().getDouble("x");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
root.setPosX(PosX); root.setPosX(PosX);
root.setPosY((float) y + PosY); root.setPosY((float) y + PosY);

View file

@ -57,7 +57,7 @@ public class M4ItemModel extends GeoModel<M4Item> {
if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming) { if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming) {
shen.setPosY(0.02f * (float) (fp + 2 * fr)); shen.setPosY(0.02f * (float) (fp + 2 * fr));
shen.setPosZ(0.6f * (float) (fp + 0.54f * fr)); shen.setPosZ(1.6f * (float) (fp + 0.54f * fr));
shen.setRotX(0.003f * (float) (fp + fr)); shen.setRotX(0.003f * (float) (fp + fr));
shen.setRotZ(0f); shen.setRotZ(0f);
} else { } else {
@ -68,26 +68,13 @@ public class M4ItemModel extends GeoModel<M4Item> {
} }
shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp)); shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
// CoreGeoBone flare = getAnimationProcessor().getBone("flare");
// if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
// flare.setHidden(false);
// flare.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
// flare.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
// flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
// } else {
// flare.setHidden(true);
// }
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float)player.getPersistentData().getDouble("gun_move_posY"); float PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = 0; double y = player.getPersistentData().getDouble("y");
double x = 0; double x = player.getPersistentData().getDouble("x");
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
root.setPosX(PosX); root.setPosX(PosX);

View file

@ -82,11 +82,9 @@ public class M60ItemModel extends GeoModel<M60Item> {
b1.setScaleZ(0); b1.setScaleZ(0);
} }
double p = 0; double p = player.getPersistentData().getDouble("zoom_pos");
p = player.getPersistentData().getDouble("zoom_pos");
double zp = 0; double zp = player.getPersistentData().getDouble("zoom_pos_z");
zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(3.74f * (float) p); gun.setPosX(3.74f * (float) p);
@ -114,26 +112,12 @@ public class M60ItemModel extends GeoModel<M60Item> {
tiba.setRotZ((float) (-0.25f * fp + 0.4 * fr)); tiba.setRotZ((float) (-0.25f * fp + 0.4 * fr));
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.75 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.75 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float)player.getPersistentData().getDouble("gun_move_posY"); float PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = player.getPersistentData().getDouble("y");
double y = 0; double x = player.getPersistentData().getDouble("x");
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
root.setPosX(PosX); root.setPosX(PosX);

View file

@ -39,11 +39,8 @@ public class M79ItemModel extends GeoModel<M79Item> {
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return; if (!stack.is(ModTags.Items.GUN)) return;
double p = 0; double p = player.getPersistentData().getDouble("zoom_pos");
p = player.getPersistentData().getDouble("zoom_pos"); double zp = player.getPersistentData().getDouble("zoom_pos_z");
double zp = 0;
zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(2.2f * (float) p); gun.setPosX(2.2f * (float) p);
@ -53,17 +50,6 @@ public class M79ItemModel extends GeoModel<M79Item> {
gun.setRotZ((float) (0.05f * zp)); gun.setRotZ((float) (0.05f * zp));
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
double fp = player.getPersistentData().getDouble("fire_pos"); double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot"); double fr = player.getPersistentData().getDouble("fire_rot");
@ -85,10 +71,8 @@ public class M79ItemModel extends GeoModel<M79Item> {
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float)player.getPersistentData().getDouble("gun_move_posY"); float PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = 0; double y = player.getPersistentData().getDouble("y");
double x = 0; double x = player.getPersistentData().getDouble("x");
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
root.setPosX(PosX); root.setPosX(PosX);

View file

@ -68,26 +68,14 @@ public class M870ItemModel extends GeoModel<M870Item> {
} }
shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp)); shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
float PosX = (float) player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float) player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float) player.getPersistentData().getDouble("gun_move_posY"); float PosY = (float) player.getPersistentData().getDouble("gun_move_posY");
double y = 0; double y = player.getPersistentData().getDouble("y");
double x = 0; double x = player.getPersistentData().getDouble("x");
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
root.setPosX(PosX); root.setPosX(PosX);

View file

@ -67,25 +67,18 @@ public class M98bItemModel extends GeoModel<M98bItem> {
gun.setRotZ((float) (0.02f * zp)); gun.setRotZ((float) (0.02f * zp));
CoreGeoBone holo = getAnimationProcessor().getBone("scope2"); // CoreGeoBone holo = getAnimationProcessor().getBone("scope2");
CoreGeoBone flare = getAnimationProcessor().getBone("flare"); // CoreGeoBone qiang = getAnimationProcessor().getBone("qiang");
CoreGeoBone qiang = getAnimationProcessor().getBone("qiang");
if (gun.getPosX() > 1.9) {
holo.setHidden(false);
qiang.setHidden(true);
} else {
holo.setHidden(true);
qiang.setHidden(false);
}
if (stack.getOrCreateTag().getDouble("flash_time") > 0) { stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.9));
flare.setHidden(false);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5))); // if (gun.getPosX() > 1.9) {
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5))); // holo.setHidden(false);
flare.setRotZ((float) (0.5 * (Math.random() - 0.5))); // qiang.setHidden(true);
} else { // } else {
flare.setHidden(true); // holo.setHidden(true);
} // qiang.setHidden(false);
// }
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");
CoreGeoBone zhunxing = getAnimationProcessor().getBone("shi"); CoreGeoBone zhunxing = getAnimationProcessor().getBone("shi");

View file

@ -65,14 +65,20 @@ public class MinigunItemModel extends GeoModel<Minigun> {
shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp)); shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
if (stack.getOrCreateTag().getInt("fire_animation") > 0) { if (stack.getOrCreateTag().getInt("fire_animation") > 0) {
flare.setHidden(false); flare.setScaleZ(1);
light.setHidden(false); light.setScaleX(1);
light.setScaleY(1);
light.setScaleZ(1);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5))); flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5))); flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5))); flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else { } else {
flare.setHidden(true); flare.setScaleX(0);
light.setHidden(true); flare.setScaleY(0);
flare.setScaleZ(0);
light.setScaleX(0);
light.setScaleY(0);
light.setScaleZ(0);
} }
@ -80,11 +86,8 @@ public class MinigunItemModel extends GeoModel<Minigun> {
float PosX = (float) player.getPersistentData().getDouble("gun_move_posX"); float PosX = (float) player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float) player.getPersistentData().getDouble("gun_move_posY"); float PosY = (float) player.getPersistentData().getDouble("gun_move_posY");
double y = player.getPersistentData().getDouble("y");
double y = 0; double x = player.getPersistentData().getDouble("x");
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
root.setPosX(PosX); root.setPosX(PosX);

View file

@ -33,8 +33,6 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
public void setCustomAnimations(Qbz95Item animatable, long instanceId, AnimationState animationState) { public void setCustomAnimations(Qbz95Item animatable, long instanceId, AnimationState animationState) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone"); CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen"); CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
CoreGeoBone bolt = getAnimationProcessor().getBone("bolt2"); CoreGeoBone bolt = getAnimationProcessor().getBone("bolt2");
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
@ -42,15 +40,6 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return; if (!stack.is(ModTags.Items.GUN)) return;
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false);
flare.setScaleX((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (0.6 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
flare.setHidden(true);
}
double p = player.getPersistentData().getDouble("zoom_pos"); double p = player.getPersistentData().getDouble("zoom_pos");
double zp = player.getPersistentData().getDouble("zoom_pos_z"); double zp = player.getPersistentData().getDouble("zoom_pos_z");
@ -60,7 +49,7 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
gun.setRotZ((float) (0.05f * zp)); gun.setRotZ((float) (0.05f * zp));
gun.setScaleZ(1f - (0.7f * (float) p)); gun.setScaleZ(1f - (0.7f * (float) p));
holo.setHidden(!(gun.getPosX() > 3.1)); stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 3.1));
double fp = player.getPersistentData().getDouble("fire_pos"); double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot"); double fr = player.getPersistentData().getDouble("fire_rot");

View file

@ -64,16 +64,16 @@ public class TracheliumItemModel extends GeoModel<Trachelium> {
shen.setRotY(0.12f * (float) fr); shen.setRotY(0.12f * (float) fr);
shen.setRotZ(-0.1f * (float) (fp + 1.3 * fr)); shen.setRotZ(-0.1f * (float) (fp + 1.3 * fr));
CoreGeoBone flare = getAnimationProcessor().getBone("flare"); // CoreGeoBone flare = getAnimationProcessor().getBone("flare");
//
if (stack.getOrCreateTag().getDouble("flash_time") > 0) { // if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
flare.setHidden(false); // flare.setHidden(false);
flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5))); // flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5))); // flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
flare.setRotZ((float) (0.5 * (Math.random() - 0.5))); // flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else { // } else {
flare.setHidden(true); // flare.setHidden(true);
} // }
CoreGeoBone root = getAnimationProcessor().getBone("root"); CoreGeoBone root = getAnimationProcessor().getBone("root");

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.AK47Item; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.AK47Layer; import net.mcreator.superbwarfare.client.layer.AK47Layer;
import net.mcreator.superbwarfare.client.model.item.AK47ItemModel; import net.mcreator.superbwarfare.client.model.item.AK47ItemModel;
import net.mcreator.superbwarfare.item.gun.AK47Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> { public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
public AK47ItemRenderer() { public AK47ItemRenderer() {
@ -12,6 +31,112 @@ public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
this.addRenderLayer(new AK47Layer(this)); this.addRenderLayer(new AK47Layer(this));
} }
@Override
public RenderType getRenderType(AK47Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected AK47Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, AK47Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, AK47Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (name.equals("holo")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(AK47Item instance) { public ResourceLocation getTextureLocation(AK47Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.Aa12Item; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.Aa12Layer; import net.mcreator.superbwarfare.client.layer.Aa12Layer;
import net.mcreator.superbwarfare.client.model.item.Aa12ItemModel; import net.mcreator.superbwarfare.client.model.item.Aa12ItemModel;
import net.mcreator.superbwarfare.item.gun.Aa12Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> { public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> {
public Aa12ItemRenderer() { public Aa12ItemRenderer() {
@ -12,6 +31,102 @@ public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> {
this.addRenderLayer(new Aa12Layer(this)); this.addRenderLayer(new Aa12Layer(this));
} }
@Override
public RenderType getRenderType(Aa12Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Aa12Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Aa12Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Aa12Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Aa12Item instance) { public ResourceLocation getTextureLocation(Aa12Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.Abekiri; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.AbekiriLayer; import net.mcreator.superbwarfare.client.layer.AbekiriLayer;
import net.mcreator.superbwarfare.client.model.item.AbekiriItemModel; import net.mcreator.superbwarfare.client.model.item.AbekiriItemModel;
import net.mcreator.superbwarfare.item.gun.Abekiri;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class AbekiriItemRenderer extends GeoItemRenderer<Abekiri> { public class AbekiriItemRenderer extends GeoItemRenderer<Abekiri> {
public AbekiriItemRenderer() { public AbekiriItemRenderer() {
@ -12,6 +31,102 @@ public class AbekiriItemRenderer extends GeoItemRenderer<Abekiri> {
this.addRenderLayer(new AbekiriLayer(this)); this.addRenderLayer(new AbekiriLayer(this));
} }
@Override
public RenderType getRenderType(Abekiri animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Abekiri animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Abekiri animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Abekiri animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Abekiri instance) { public ResourceLocation getTextureLocation(Abekiri instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.BocekItem; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.BocekLayer; import net.mcreator.superbwarfare.client.layer.BocekLayer;
import net.mcreator.superbwarfare.client.model.item.BocekItemModel; import net.mcreator.superbwarfare.client.model.item.BocekItemModel;
import net.mcreator.superbwarfare.item.gun.BocekItem;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class BocekItemRenderer extends GeoItemRenderer<BocekItem> { public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
public BocekItemRenderer() { public BocekItemRenderer() {
@ -12,6 +31,105 @@ public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
this.addRenderLayer(new BocekLayer(this)); this.addRenderLayer(new BocekLayer(this));
} }
@Override
public RenderType getRenderType(BocekItem animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected BocekItem animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, BocekItem animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, BocekItem animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
Player player_ = mc.player;
ItemStack itemStack = null;
if (player_ != null) {
itemStack = player_.getMainHandItem();
}
if (name.equals("holo")) {
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (name.equals("arrow")) {
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getInt("arrow_empty") > 0);
}
if (name.equals("jian")) {
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getInt("max_ammo") == 0);
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(BocekItem instance) { public ResourceLocation getTextureLocation(BocekItem instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.Devotion; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.DevotionLayer; import net.mcreator.superbwarfare.client.layer.DevotionLayer;
import net.mcreator.superbwarfare.client.model.item.DevotionItemModel; import net.mcreator.superbwarfare.client.model.item.DevotionItemModel;
import net.mcreator.superbwarfare.item.gun.Devotion;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class DevotionItemRenderer extends GeoItemRenderer<Devotion> { public class DevotionItemRenderer extends GeoItemRenderer<Devotion> {
public DevotionItemRenderer() { public DevotionItemRenderer() {
@ -12,6 +31,112 @@ public class DevotionItemRenderer extends GeoItemRenderer<Devotion> {
this.addRenderLayer(new DevotionLayer(this)); this.addRenderLayer(new DevotionLayer(this));
} }
@Override
public RenderType getRenderType(Devotion animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Devotion animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Devotion animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Devotion animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (name.equals("holo")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Devotion instance) { public ResourceLocation getTextureLocation(Devotion instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.Glock17Layer; import net.mcreator.superbwarfare.client.layer.Glock17Layer;
import net.mcreator.superbwarfare.client.model.item.Glock17ItemModel; import net.mcreator.superbwarfare.client.model.item.Glock17ItemModel;
import net.mcreator.superbwarfare.item.gun.Glock17Item; import net.mcreator.superbwarfare.item.gun.Glock17Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> { public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
public Glock17ItemRenderer() { public Glock17ItemRenderer() {
@ -12,6 +31,102 @@ public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
this.addRenderLayer(new Glock17Layer(this)); this.addRenderLayer(new Glock17Layer(this));
} }
@Override
public RenderType getRenderType(Glock17Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Glock17Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Glock17Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Glock17Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Glock17Item instance) { public ResourceLocation getTextureLocation(Glock17Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.Glock18Layer; import net.mcreator.superbwarfare.client.layer.Glock18Layer;
import net.mcreator.superbwarfare.client.model.item.Glock18ItemModel; import net.mcreator.superbwarfare.client.model.item.Glock18ItemModel;
import net.mcreator.superbwarfare.item.gun.Glock18Item; import net.mcreator.superbwarfare.item.gun.Glock18Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> { public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
public Glock18ItemRenderer() { public Glock18ItemRenderer() {
@ -12,6 +31,102 @@ public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
this.addRenderLayer(new Glock18Layer(this)); this.addRenderLayer(new Glock18Layer(this));
} }
@Override
public RenderType getRenderType(Glock18Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Glock18Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Glock18Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Glock18Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Glock18Item instance) { public ResourceLocation getTextureLocation(Glock18Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.Hk416Item; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.Hk416Layer; import net.mcreator.superbwarfare.client.layer.Hk416Layer;
import net.mcreator.superbwarfare.client.model.item.Hk416ItemModel; import net.mcreator.superbwarfare.client.model.item.Hk416ItemModel;
import net.mcreator.superbwarfare.item.gun.Hk416Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> { public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
public Hk416ItemRenderer() { public Hk416ItemRenderer() {
@ -12,6 +31,112 @@ public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
this.addRenderLayer(new Hk416Layer(this)); this.addRenderLayer(new Hk416Layer(this));
} }
@Override
public RenderType getRenderType(Hk416Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Hk416Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Hk416Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Hk416Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (name.equals("holo")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Hk416Item instance) { public ResourceLocation getTextureLocation(Hk416Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.HuntingRifle; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.HuntingRifleLayer; import net.mcreator.superbwarfare.client.layer.HuntingRifleLayer;
import net.mcreator.superbwarfare.client.model.item.HuntingRifleItemModel; import net.mcreator.superbwarfare.client.model.item.HuntingRifleItemModel;
import net.mcreator.superbwarfare.item.gun.HuntingRifle;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifle> { public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifle> {
public HuntingRifleItemRenderer() { public HuntingRifleItemRenderer() {
@ -12,6 +31,102 @@ public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifle> {
this.addRenderLayer(new HuntingRifleLayer(this)); this.addRenderLayer(new HuntingRifleLayer(this));
} }
@Override
public RenderType getRenderType(HuntingRifle animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected HuntingRifle animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, HuntingRifle animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, HuntingRifle animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(HuntingRifle instance) { public ResourceLocation getTextureLocation(HuntingRifle instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.K98Layer; import net.mcreator.superbwarfare.client.layer.K98Layer;
import net.mcreator.superbwarfare.client.model.item.K98ItemModel; import net.mcreator.superbwarfare.client.model.item.K98ItemModel;
import net.mcreator.superbwarfare.item.gun.K98Item; import net.mcreator.superbwarfare.item.gun.K98Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class K98ItemRenderer extends GeoItemRenderer<K98Item> { public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
public K98ItemRenderer() { public K98ItemRenderer() {
@ -12,6 +31,102 @@ public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
this.addRenderLayer(new K98Layer(this)); this.addRenderLayer(new K98Layer(this));
} }
@Override
public RenderType getRenderType(K98Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected K98Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, K98Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, K98Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.7 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.7 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(K98Item instance) { public ResourceLocation getTextureLocation(K98Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.M1911Layer; import net.mcreator.superbwarfare.client.layer.M1911Layer;
import net.mcreator.superbwarfare.client.model.item.M1911ItemModel; import net.mcreator.superbwarfare.client.model.item.M1911ItemModel;
import net.mcreator.superbwarfare.item.gun.M1911Item; import net.mcreator.superbwarfare.item.gun.M1911Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> { public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
public M1911ItemRenderer() { public M1911ItemRenderer() {
@ -12,6 +31,102 @@ public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
this.addRenderLayer(new M1911Layer(this)); this.addRenderLayer(new M1911Layer(this));
} }
@Override
public RenderType getRenderType(M1911Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected M1911Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, M1911Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, M1911Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(M1911Item instance) { public ResourceLocation getTextureLocation(M1911Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.M60Item; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.M60Layer; import net.mcreator.superbwarfare.client.layer.M60Layer;
import net.mcreator.superbwarfare.client.model.item.M60ItemModel; import net.mcreator.superbwarfare.client.model.item.M60ItemModel;
import net.mcreator.superbwarfare.item.gun.M60Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M60ItemRenderer extends GeoItemRenderer<M60Item> { public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
public M60ItemRenderer() { public M60ItemRenderer() {
@ -12,6 +31,102 @@ public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
this.addRenderLayer(new M60Layer(this)); this.addRenderLayer(new M60Layer(this));
} }
@Override
public RenderType getRenderType(M60Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected M60Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, M60Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, M60Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(M60Item instance) { public ResourceLocation getTextureLocation(M60Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.M79Item; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.M79Layer; import net.mcreator.superbwarfare.client.layer.M79Layer;
import net.mcreator.superbwarfare.client.model.item.M79ItemModel; import net.mcreator.superbwarfare.client.model.item.M79ItemModel;
import net.mcreator.superbwarfare.item.gun.M79Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M79ItemRenderer extends GeoItemRenderer<M79Item> { public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
public M79ItemRenderer() { public M79ItemRenderer() {
@ -12,6 +31,102 @@ public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
this.addRenderLayer(new M79Layer(this)); this.addRenderLayer(new M79Layer(this));
} }
@Override
public RenderType getRenderType(M79Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected M79Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, M79Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, M79Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(M79Item instance) { public ResourceLocation getTextureLocation(M79Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -2,16 +2,25 @@ package net.mcreator.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.item.gun.M870Item;
import net.mcreator.superbwarfare.client.layer.M870Layer; import net.mcreator.superbwarfare.client.layer.M870Layer;
import net.mcreator.superbwarfare.client.model.item.M870ItemModel; import net.mcreator.superbwarfare.client.model.item.M870ItemModel;
import net.mcreator.superbwarfare.item.gun.M870Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet; import java.util.HashSet;
import java.util.Set; import java.util.Set;
@ -34,7 +43,6 @@ public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
public ItemDisplayContext transformType; public ItemDisplayContext transformType;
protected M870Item animatable; protected M870Item animatable;
private final Set<String> hiddenBones = new HashSet<>(); private final Set<String> hiddenBones = new HashSet<>();
private final Set<String> suppressedBones = new HashSet<>();
@Override @Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) { public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
@ -56,6 +64,69 @@ public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
} }
} }
@Override
public void renderRecursively(PoseStack stack, M870Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(M870Item instance) { public ResourceLocation getTextureLocation(M870Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.M98bItem; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.M98bLayer; import net.mcreator.superbwarfare.client.layer.M98bLayer;
import net.mcreator.superbwarfare.client.model.item.M98bItemModel; import net.mcreator.superbwarfare.client.model.item.M98bItemModel;
import net.mcreator.superbwarfare.item.gun.M98bItem;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M98bItemRenderer extends GeoItemRenderer<M98bItem> { public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
public M98bItemRenderer() { public M98bItemRenderer() {
@ -12,6 +31,120 @@ public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
this.addRenderLayer(new M98bLayer(this)); this.addRenderLayer(new M98bLayer(this));
} }
@Override
public RenderType getRenderType(M98bItem animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected M98bItem animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, M98bItem animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, M98bItem animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (name.equals("scope2")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (name.equals("qiang")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
bone.setHidden(itemStack != null && !itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(M98bItem instance) { public ResourceLocation getTextureLocation(M98bItem instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,28 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.Minigun; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.MinigunLayer; import net.mcreator.superbwarfare.client.layer.MinigunLayer;
import net.mcreator.superbwarfare.client.model.item.MinigunItemModel; import net.mcreator.superbwarfare.client.model.item.MinigunItemModel;
import net.mcreator.superbwarfare.item.gun.Minigun;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class MinigunItemRenderer extends GeoItemRenderer<Minigun> { public class MinigunItemRenderer extends GeoItemRenderer<Minigun> {
public MinigunItemRenderer() { public MinigunItemRenderer() {
@ -12,6 +30,86 @@ public class MinigunItemRenderer extends GeoItemRenderer<Minigun> {
this.addRenderLayer(new MinigunLayer(this)); this.addRenderLayer(new MinigunLayer(this));
} }
@Override
public RenderType getRenderType(Minigun animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Minigun animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Minigun animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Minigun animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Minigun instance) { public ResourceLocation getTextureLocation(Minigun instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.Qbz95Layer; import net.mcreator.superbwarfare.client.layer.Qbz95Layer;
import net.mcreator.superbwarfare.client.model.item.Qbz95ItemModel; import net.mcreator.superbwarfare.client.model.item.Qbz95ItemModel;
import net.mcreator.superbwarfare.item.gun.Qbz95Item; import net.mcreator.superbwarfare.item.gun.Qbz95Item;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> { public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
public Qbz95ItemRenderer() { public Qbz95ItemRenderer() {
@ -12,6 +31,112 @@ public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
this.addRenderLayer(new Qbz95Layer(this)); this.addRenderLayer(new Qbz95Layer(this));
} }
@Override
public RenderType getRenderType(Qbz95Item animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Qbz95Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Qbz95Item animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Qbz95Item animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (name.equals("holo")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden"));
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Qbz95Item instance) { public ResourceLocation getTextureLocation(Qbz95Item instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
package net.mcreator.superbwarfare.client.renderer.item; package net.mcreator.superbwarfare.client.renderer.item;
import net.mcreator.superbwarfare.item.gun.Trachelium; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.mcreator.superbwarfare.client.layer.TracheliumLayer; import net.mcreator.superbwarfare.client.layer.TracheliumLayer;
import net.mcreator.superbwarfare.client.model.item.TracheliumItemModel; import net.mcreator.superbwarfare.client.model.item.TracheliumItemModel;
import net.mcreator.superbwarfare.item.gun.Trachelium;
import net.mcreator.superbwarfare.tools.AnimUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> { public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
public TracheliumItemRenderer() { public TracheliumItemRenderer() {
@ -12,6 +31,102 @@ public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
this.addRenderLayer(new TracheliumLayer(this)); this.addRenderLayer(new TracheliumLayer(this));
} }
@Override
public RenderType getRenderType(Trachelium animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
private static final float SCALE_RECIPROCAL = 1.0f / 16.0f;
protected boolean renderArms = false;
protected MultiBufferSource currentBuffer;
protected RenderType renderType;
public ItemDisplayContext transformType;
protected Trachelium animatable;
private final Set<String> hiddenBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
this.transformType = transformType;
if (this.animatable != null)
this.animatable.getTransformType(transformType);
super.renderByItem(stack, transformType, matrixStack, bufferIn, combinedLightIn, p_239207_6_);
}
@Override
public void actuallyRender(PoseStack matrixStackIn, Trachelium animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer;
this.renderType = type;
this.animatable = animatable;
super.actuallyRender(matrixStackIn, animatable, model, type, renderTypeBuffer, vertexBuilder, isRenderer, partialTicks, packedLightIn, packedOverlayIn, red, green, blue, alpha);
if (this.renderArms) {
this.renderArms = false;
}
}
@Override
public void renderRecursively(PoseStack stack, Trachelium animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance();
String name = bone.getName();
boolean renderingArms = false;
if (name.equals("Lefthand") || name.equals("Righthand")) {
bone.setHidden(true);
renderingArms = true;
} else {
bone.setHidden(this.hiddenBones.contains(name));
}
if (name.equals("flare")) {
Player player = Minecraft.getInstance().player;
ItemStack itemStack = null;
if (player != null) {
itemStack = player.getMainHandItem();
}
if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) {
bone.setHidden(false);
bone.setScaleX((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} else {
bone.setHidden(true);
}
}
if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player;
if (player == null) {
return;
}
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone);
RenderUtils.translateToPivotPoint(stack, bone);
RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) {
stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.leftArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.leftSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
} else {
stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f);
AnimUtils.renderPartOverBone(model.rightArm, bone, stack, armBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
AnimUtils.renderPartOverBone(model.rightSleeve, bone, stack, sleeveBuilder, packedLightIn, OverlayTexture.NO_OVERLAY, 1);
}
this.currentBuffer.getBuffer(this.renderType);
stack.popPose();
}
super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, red, green, blue, alpha);
}
@Override @Override
public ResourceLocation getTextureLocation(Trachelium instance) { public ResourceLocation getTextureLocation(Trachelium instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);

View file

@ -37,30 +37,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [1, 0, -22]
},
"0.4": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [3.53901, 3.6754, 5.59783]
},
"0.4": {
"vector": [0, 0, 0]
}
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -181,44 +157,43 @@
"0": { "0": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [-14.82442, -57.81517, 38.62375] "vector": [-19.82442, -57.81517, 38.62375]
}, },
"0.2083": { "0.2083": {
"vector": [-16.82442, -57.81517, 38.62375], "vector": [-21.82442, -57.81517, 38.62375],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.4167": { "0.4167": {
"vector": [-14.82442, -57.81517, 38.62375], "vector": [-19.82442, -57.81517, 38.62375],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"0.5833": { "0.5833": {
"vector": [-12.82442, -57.81517, 38.62375], "vector": [-17.82442, -57.81517, 38.62375],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.7917": { "0.7917": {
"vector": [-14.82442, -57.81517, 38.62375], "vector": [-19.82442, -57.81517, 38.62375],
"easing": "easeOutSine" "easing": "easeOutSine"
} }
}, },
"position": { "position": {
"0.0": { "0.0": {
"vector": [5.5, -2, 0] "vector": [2.5, -0.75, -1]
}, },
"0.2083": { "0.2083": {
"vector": [2.75, -1.5, 0], "vector": [0.25, -0.25, -1],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.4167": { "0.4167": {
"vector": [0.5, -2, 0], "vector": [-2, -0.75, -1],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"0.5833": { "0.5833": {
"vector": [2.75, -1.5, 0], "vector": [0, -0.25, -1],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.7917": { "0.7917": {
"vector": [5.5, -2, 0], "vector": [2.5, -0.75, -1]
"easing": "easeOutSine"
} }
} }
}, },
@ -250,55 +225,47 @@
"0": { "0": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [-44.22375, 21.2133, 4.79361] "vector": [-66.72375, 21.2133, 4.79361]
}, },
"0.2": { "0.2": {
"vector": [-40.88804, 21.40026, 11.0472], "vector": [-63.38804, 21.40026, 11.0472],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.4": { "0.4": {
"vector": [-48.58194, 19.41184, 6.64209], "vector": [-71.08194, 19.41184, 6.64209],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"0.6": { "0.6": {
"vector": [-52.13904, 19.33922, 0.51567], "vector": [-74.63904, 19.33922, 0.51567],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.8": { "0.8": {
"vector": [-44.22375, 21.2133, 4.79361] "vector": [-66.72375, 21.2133, 4.79361]
} }
}, },
"position": { "position": {
"0.0": { "0.0": {
"vector": [-5.29989, -0.71669, 0.66806], "vector": [-4.29989, 0.28331, -1.33194],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"0.2": { "0.2": {
"vector": [-6.5, 2, 0], "vector": [-5.5, 3, -2],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.4": { "0.4": {
"vector": [-7.3406, -0.71261, 0.68321], "vector": [-6.3406, 0.28739, -1.31679],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"0.6": { "0.6": {
"vector": [-6.5, 2, 0], "vector": [-5.5, 3, -2],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.8": { "0.8": {
"vector": [-5.29989, -0.71669, 0.66806], "vector": [-4.29989, 0.28331, -1.33194],
"easing": "easeOutSine" "easing": "easeOutSine"
} }
} }
}, },
"Lefthand": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -317,6 +284,14 @@
"vector": [-0.3, -0.3, 0.3] "vector": [-0.3, -0.3, 0.3]
} }
} }
},
"Lefthand": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
} }
} }
}, },
@ -509,11 +484,11 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"3.0667": { "3.0667": {
"vector": [0, 0, 7.5], "vector": [0, 0, 6],
"easing": "easeInCirc" "easing": "easeInElastic"
}, },
"3.3167": { "3.3167": {
"vector": [0, 0, 7.5], "vector": [0, 0, 6],
"easing": "easeInCirc" "easing": "easeInCirc"
}, },
"3.45": { "3.45": {
@ -584,107 +559,6 @@
} }
} }
}, },
"Lefthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0, 0, 0]
},
"0.65": {
"vector": [14.12373, -11.09281, 25.14677]
},
"0.8": {
"vector": [14.12373, -11.09281, 25.14677]
},
"1.3": {
"vector": [14.12373, -11.09281, 25.14677]
},
"1.3833": {
"vector": [14.12373, -11.09281, 25.14677]
},
"2.4167": {
"vector": [14.12373, -11.09281, 25.14677]
},
"2.75": {
"vector": [-35.93087, -12.92203, -31.2641],
"easing": "easeInElastic"
},
"2.8167": {
"vector": [-35.93087, -12.92203, -31.2641],
"easing": "easeInElastic"
},
"3.0667": {
"vector": [-35.93087, -12.92203, -31.2641],
"easing": "easeInCirc"
},
"3.3167": {
"vector": [-35.93087, -12.92203, -31.2641],
"easing": "easeInCirc"
},
"3.45": {
"vector": [-16.83441, -22.51825, -28.30654],
"easing": "easeInElastic"
},
"3.65": {
"vector": [3.39731, 0.60726, -6.28975]
},
"3.8167": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2833": {
"vector": [0, 0, 0]
},
"0.4167": {
"vector": [1.89205, -2.68839, 7.46626]
},
"0.5667": {
"vector": [0.6492, 0.70299, 12.13945]
},
"0.8": {
"vector": [0.6492, 0.70299, 12.13945]
},
"1.3": {
"vector": [0.6492, 0.70299, 12.13945]
},
"1.3833": {
"vector": [0.6492, 0.70299, 12.13945]
},
"2.4167": {
"vector": [0.6492, 0.70299, 12.13945]
},
"2.75": {
"vector": [6.65107, 7.98134, 2.33784],
"easing": "easeInElastic"
},
"2.8167": {
"vector": [6.65107, 7.98134, 2.33784],
"easing": "easeInElastic"
},
"3.0667": {
"vector": [6.65107, 7.98134, 9.33784],
"easing": "easeInCirc"
},
"3.3167": {
"vector": [6.65107, 7.98134, 9.33784],
"easing": "easeInCirc"
},
"3.45": {
"vector": [6.65107, 7.98134, 7.33784],
"easing": "easeInElastic"
},
"3.9": {
"vector": [0, 0, 0],
"easing": "easeInOutQuad"
}
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -764,11 +638,96 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
},
"Lefthand": {
"rotation": {
"0.1667": {
"vector": [0, 0, 0]
},
"0.4": {
"vector": [0, 0, 0],
"easing": "easeInElastic"
},
"1.3667": {
"vector": [0, 0, 0],
"easing": "easeInElastic"
},
"1.4333": {
"vector": [-6.43837, -20.70194, 55.02861],
"easing": "easeInElastic"
},
"2.35": {
"vector": [-6.43837, -20.70194, 55.02861],
"easing": "easeInElastic"
},
"2.7667": {
"vector": [25.13311, 9.89724, -25.82458],
"easing": "easeInElastic"
},
"2.8167": {
"vector": [25.13311, 9.89724, -25.82458],
"easing": "easeInElastic"
},
"3.0667": {
"vector": [29.38311, 9.89724, -25.82458],
"easing": "easeInBounce"
},
"3.3167": {
"vector": [25.13311, 9.89724, -25.82458],
"easing": "easeInCirc"
},
"3.45": {
"vector": [-6.54875, 20.56526, -8.87983],
"easing": "easeInCirc"
},
"3.7": {
"vector": [0, 0, 0]
} }
}, },
"sound_effects": { "position": {
"0.0": { "0.1667": {
"effect": "aa_12_reload_empty" "vector": [0, 0, 0]
},
"0.4": {
"vector": [3.3, -0.1, 8.4],
"easing": "easeInElastic"
},
"1.3667": {
"vector": [3.3, -0.1, 8.4],
"easing": "easeInElastic"
},
"1.4333": {
"vector": [0.4, -3.3, 8.3],
"easing": "easeInElastic"
},
"2.35": {
"vector": [0.4, -3.3, 8.3],
"easing": "easeInElastic"
},
"2.7667": {
"vector": [3.72314, 5.36325, 2.24919],
"easing": "easeInElastic"
},
"2.8167": {
"vector": [3.72314, 5.36325, 2.24919],
"easing": "easeInCirc"
},
"3.0667": {
"vector": [4.11767, 4.63278, 7.04607],
"easing": "easeInElastic"
},
"3.3167": {
"vector": [4.22314, 5.11325, 7.84919],
"easing": "easeInCirc"
},
"3.45": {
"vector": [1.3, 6.1, 10.1],
"easing": "easeInCirc"
},
"3.7": {
"vector": [0, 0, 0]
}
}
} }
} }
}, },
@ -976,68 +935,6 @@
} }
} }
}, },
"Lefthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0, 0, 0]
},
"0.65": {
"vector": [14.12373, -11.09281, 25.14677]
},
"0.8": {
"vector": [14.12373, -11.09281, 25.14677]
},
"1.3": {
"vector": [14.12373, -11.09281, 25.14677]
},
"1.3833": {
"vector": [14.12373, -11.09281, 25.14677]
},
"2.3": {
"vector": [14.12373, -11.09281, 25.14677]
},
"2.3833": {
"vector": [10.59, -8.32, 18.86]
},
"2.5167": {
"vector": [0, 0, 0],
"easing": "linear"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2833": {
"vector": [0, 0, 0]
},
"0.4167": {
"vector": [1.89205, -2.68839, 7.46626]
},
"0.5667": {
"vector": [0.6492, 0.70299, 12.13945]
},
"0.8": {
"vector": [0.6492, 0.70299, 12.13945]
},
"1.3": {
"vector": [0.6492, 0.70299, 12.13945]
},
"1.3833": {
"vector": [0.6492, 0.70299, 12.13945]
},
"2.3": {
"vector": [0.6492, 0.70299, 12.13945]
},
"2.55": {
"vector": [0, 0, 0],
"easing": "easeInOutQuad"
}
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -1098,11 +995,56 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
},
"Lefthand": {
"rotation": {
"0.1667": {
"vector": [0, 0, 0]
},
"0.4": {
"vector": [0, 0, 0],
"easing": "easeInElastic"
},
"1.3667": {
"vector": [0, 0, 0],
"easing": "easeInElastic"
},
"1.4333": {
"vector": [-6.43837, -20.70194, 55.02861],
"easing": "easeInElastic"
},
"2.35": {
"vector": [-6.43837, -20.70194, 55.02861],
"easing": "easeInElastic"
},
"2.55": {
"vector": [0, 0, 0]
} }
}, },
"sound_effects": { "position": {
"0.0": { "0.1667": {
"effect": "aa_12_reload_empty" "vector": [0, 0, 0]
},
"0.4": {
"vector": [3.3, -0.1, 8.4],
"easing": "easeInElastic"
},
"1.3667": {
"vector": [3.3, -0.1, 8.4],
"easing": "easeInElastic"
},
"1.4333": {
"vector": [0.4, -3.3, 8.3],
"easing": "easeInElastic"
},
"2.35": {
"vector": [0.4, -3.3, 8.3],
"easing": "easeInElastic"
},
"2.55": {
"vector": [0, 0, 0]
}
}
} }
} }
} }

View file

@ -9,6 +9,14 @@
"position": { "position": {
"vector": [0, -14, 16] "vector": [0, -14, 16]
} }
},
"Lefthand": {
"rotation": {
"vector": [-27.48048, 7.74079, 60.61663]
},
"position": {
"vector": [-1.8, -0.6, 1.5]
}
} }
} }
}, },
@ -52,6 +60,14 @@
"position": { "position": {
"vector": [0, -14, 16] "vector": [0, -14, 16]
} }
},
"Lefthand": {
"rotation": {
"vector": [-27.48048, 7.74079, 60.61663]
},
"position": {
"vector": [-1.8, -0.4, 1.5]
}
} }
} }
}, },
@ -127,6 +143,14 @@
"vector": [-0.3, -0.3, 0.3] "vector": [-0.3, -0.3, 0.3]
} }
} }
},
"Lefthand": {
"rotation": {
"vector": [-27.48048, 7.74079, 60.61663]
},
"position": {
"vector": [-1.8, -0.4, 1.5]
}
} }
} }
}, },
@ -228,6 +252,14 @@
"position": { "position": {
"vector": [0, -14, 16] "vector": [0, -14, 16]
} }
},
"Lefthand": {
"rotation": {
"vector": [-27.48048, 7.74079, 60.61663]
},
"position": {
"vector": [-1.8, -0.4, 1.5]
}
} }
} }
}, },
@ -363,58 +395,58 @@
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [0, 0, 0] "vector": [-27.48048, 7.74079, 60.61663]
}, },
"0.2": { "0.2": {
"vector": [46.55566, -11.28983, -10.57657] "vector": [-46.5557, 11.2898, -10.57657]
}, },
"0.5": { "0.5": {
"vector": [28.88915, -28.22457, -26.44144] "vector": [-28.8891, 28.2246, -26.44144]
}, },
"0.7": { "0.7": {
"vector": [-28.15519, -39.5144, -37.01801] "vector": [28.1552, 39.5144, -37.01801]
}, },
"0.8": { "0.8": {
"vector": [-36.02531, -30.17168, -37.82607] "vector": [36.0253, 30.1717, -37.82607]
}, },
"0.9": { "0.9": {
"vector": [-32.83715, -25.49817, -32.05203] "vector": [32.8372, 25.4982, -32.05203]
}, },
"1.0": { "1.0": {
"vector": [-21.83715, -25.49817, -32.05203] "vector": [21.8372, 25.4982, -32.05203]
}, },
"1.1": { "1.1": {
"vector": [-30.83715, -25.49817, -32.05203] "vector": [30.8372, 25.4982, -32.05203]
}, },
"1.3": { "1.3": {
"vector": [-9.68, -52.68, -57.11] "vector": [9.68, 52.68, -57.11]
}, },
"1.5": { "1.5": {
"vector": [-6.35997, -28.9577, -29.98792] "vector": [6.36, 28.9577, -29.98792]
}, },
"1.7": { "1.7": {
"vector": [-11.35997, -28.9577, -29.98792] "vector": [11.36, 28.9577, -29.98792]
}, },
"1.9": { "1.9": {
"vector": [-11.35997, -28.9577, -29.98792] "vector": [11.36, 28.9577, -29.98792]
}, },
"2.1": { "2.1": {
"vector": [-6.35997, -28.9577, -29.98792] "vector": [6.36, 28.9577, -29.98792]
}, },
"2.3": { "2.3": {
"vector": [-6.77006, -25.92966, -31.79066], "vector": [6.7701, 25.9297, -31.79066],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"2.5": { "2.5": {
"vector": [-30.83715, -25.49817, -32.05203] "vector": [30.8372, 25.4982, -32.05203]
}, },
"2.7": { "2.7": {
"vector": [0, 0, 0] "vector": [-27.48048, 7.74079, 60.61663]
} }
}, },
"position": { "position": {
"0.0": { "0.0": {
"vector": [0, 0, 0] "vector": [-1.8, -0.4, 1.5]
}, },
"0.4": { "0.4": {
"vector": [0.69, -0.46, 4.34] "vector": [0.69, -0.46, 4.34]
@ -461,7 +493,7 @@
"vector": [-1.25, -2.8, -3.5] "vector": [-1.25, -2.8, -3.5]
}, },
"2.7": { "2.7": {
"vector": [0, 0, 0] "vector": [-1.8, -0.4, 1.5]
} }
} }
}, },
@ -852,73 +884,73 @@
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [0, 0, 0] "vector": [-27.48048, 7.74079, 60.61663]
}, },
"0.2": { "0.2": {
"vector": [46.55566, -11.28983, -10.57657] "vector": [-46.5557, 11.2898, -10.57657]
}, },
"0.5": { "0.5": {
"vector": [28.88915, -28.22457, -26.44144] "vector": [-28.8891, 28.2246, -26.44144]
}, },
"0.7": { "0.7": {
"vector": [-28.15519, -39.5144, -37.01801] "vector": [28.1552, 39.5144, -37.01801]
}, },
"0.8": { "0.8": {
"vector": [-36.02531, -30.17168, -37.82607] "vector": [36.0253, 30.1717, -37.82607]
}, },
"0.9": { "0.9": {
"vector": [-32.83715, -25.49817, -32.05203] "vector": [32.8372, 25.4982, -32.05203]
}, },
"1.0": { "1.0": {
"vector": [-36.02531, -30.17168, -37.82607] "vector": [36.0253, 30.1717, -37.82607]
}, },
"1.1": { "1.1": {
"vector": [-36.02531, -30.17168, -37.82607] "vector": [36.0253, 30.1717, -37.82607]
}, },
"1.3": { "1.3": {
"vector": [-21.83715, -25.49817, -32.05203] "vector": [21.8372, 25.4982, -32.05203]
}, },
"1.4": { "1.4": {
"vector": [-30.83715, -25.49817, -32.05203] "vector": [30.8372, 25.4982, -32.05203]
}, },
"1.6": { "1.6": {
"vector": [-9.68, -52.68, -57.11] "vector": [9.68, 52.68, -57.11]
}, },
"1.8": { "1.8": {
"vector": [-6.35997, -28.9577, -29.98792] "vector": [6.36, 28.9577, -29.98792]
}, },
"2.0": { "2.0": {
"vector": [-11.35997, -28.9577, -29.98792] "vector": [11.36, 28.9577, -29.98792]
}, },
"2.2": { "2.2": {
"vector": [-11.35997, -28.9577, -29.98792] "vector": [11.36, 28.9577, -29.98792]
}, },
"2.3": { "2.3": {
"vector": [-6.35997, -28.9577, -29.98792] "vector": [6.36, 28.9577, -29.98792]
}, },
"2.5": { "2.5": {
"vector": [-11.35997, -28.9577, -29.98792] "vector": [11.36, 28.9577, -29.98792]
}, },
"2.7": { "2.7": {
"vector": [-11.35997, -28.9577, -29.98792] "vector": [11.36, 28.9577, -29.98792]
}, },
"2.9": { "2.9": {
"vector": [-6.35997, -28.9577, -29.98792] "vector": [6.36, 28.9577, -29.98792]
}, },
"3.1": { "3.1": {
"vector": [-6.77006, -25.92966, -31.79066], "vector": [6.7701, 25.9297, -31.79066],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"3.3": { "3.3": {
"vector": [-30.83715, -25.49817, -32.05203] "vector": [30.8372, 25.4982, -32.05203]
}, },
"3.5": { "3.5": {
"vector": [0, 0, 0] "vector": [-27.48048, 7.74079, 60.61663]
} }
}, },
"position": { "position": {
"0.0": { "0.0": {
"vector": [0, 0, 0] "vector": [-1.8, -0.4, 1.5]
}, },
"0.4": { "0.4": {
"vector": [0.69, -0.46, 4.34] "vector": [0.69, -0.46, 4.34]
@ -983,7 +1015,7 @@
"vector": [-1.25, -2.8, -3.5] "vector": [-1.25, -2.8, -3.5]
}, },
"3.5": { "3.5": {
"vector": [0, 0, 0] "vector": [-1.8, -0.4, 1.5]
} }
} }
}, },

View file

@ -6,7 +6,7 @@
"bones": { "bones": {
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"position": { "position": {
"vector": [-0.6, -2.7, -3.3] "vector": [-0.6, -2.7, -3.3]
@ -70,7 +70,7 @@
}, },
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"position": { "position": {
"vector": [-0.6, -2.7, -3.3] "vector": [-0.6, -2.7, -3.3]
@ -154,7 +154,7 @@
}, },
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"position": { "position": {
"vector": [-0.6, -2.7, -3.3] "vector": [-0.6, -2.7, -3.3]
@ -238,7 +238,7 @@
}, },
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"position": { "position": {
"vector": [-0.6, -2.7, -3.3] "vector": [-0.6, -2.7, -3.3]
@ -295,7 +295,7 @@
}, },
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"position": { "position": {
"vector": [-0.6, -2.7, -3.3] "vector": [-0.6, -2.7, -3.3]
@ -418,7 +418,7 @@
"bones": { "bones": {
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"position": { "position": {
"vector": [-0.6, -2.7, -3.3] "vector": [-0.6, -2.7, -3.3]
@ -552,37 +552,37 @@
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"0.1": { "0.1": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"0.5333": { "0.5333": {
"vector": [-10.23301, -10.25955, 3.51854], "vector": [10.233, 10.2596, 3.51854],
"easing": "easeOutQuad" "easing": "easeOutQuad"
}, },
"0.9": { "0.9": {
"vector": [-10.23301, -10.25955, 3.51854], "vector": [10.233, 10.2596, 3.51854],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.1333": { "1.1333": {
"vector": [-25.86792, -14.68451, 0.99936], "vector": [25.8679, 14.6845, 0.99936],
"easing": "easeInOutQuad" "easing": "easeInOutQuad"
}, },
"1.3167": { "1.3167": {
"vector": [-32.48047, -21.39686, -3.31204] "vector": [32.4805, 21.3969, -3.31204]
}, },
"1.5167": { "1.5167": {
"vector": [-20.31753, -15.08281, -6.04184], "vector": [20.3175, 15.0828, -6.04184],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.5667": { "1.5667": {
"vector": [-20.31753, -15.08281, -6.04184], "vector": [20.3175, 15.0828, -6.04184],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.7333": { "1.7333": {
"vector": [-21.16455, -11.71775, -9.83624], "vector": [21.1645, 11.7178, -9.83624],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"2.0167": { "2.0167": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
} }
}, },
"position": { "position": {
@ -1001,81 +1001,81 @@
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"0.1": { "0.1": {
"vector": [-27.6003, -27.56966, -16.00843] "vector": [27.6003, 27.5697, -16.00843]
}, },
"0.5667": { "0.5667": {
"vector": [-19.23301, -10.25955, 3.51854], "vector": [19.233, 10.2596, 3.51854],
"easing": "easeOutQuad" "easing": "easeOutQuad"
}, },
"0.8333": { "0.8333": {
"vector": [-21.30345, -34.94902, -25.30751], "vector": [21.3035, 34.949, -25.30751],
"easing": "linear" "easing": "linear"
}, },
"0.85": { "0.85": {
"vector": [-21.30345, -34.94902, -25.30751], "vector": [21.3035, 34.949, -25.30751],
"easing": "linear" "easing": "linear"
}, },
"0.9667": { "0.9667": {
"vector": [2.38, -42.06, -24.89] "vector": [-2.38, 42.06, -24.89]
}, },
"1.05": { "1.05": {
"vector": [12.31232, -51.51215, -24.79233] "vector": [-12.3123, 51.5121, -24.79233]
}, },
"1.15": { "1.15": {
"vector": [12.31232, -51.51215, -24.79233] "vector": [-12.3123, 51.5121, -24.79233]
}, },
"1.2333": { "1.2333": {
"vector": [1.22466, -38.81661, -18.05842] "vector": [-1.2247, 38.8166, -18.05842]
}, },
"1.3": { "1.3": {
"vector": [-12.15546, -22.32142, -3.10505] "vector": [12.1555, 22.3214, -3.10505]
}, },
"1.3667": { "1.3667": {
"vector": [-25.86792, -14.68451, 0.99936], "vector": [25.8679, 14.6845, 0.99936],
"easing": "linear" "easing": "linear"
}, },
"1.4167": { "1.4167": {
"vector": [-32.48047, -21.39686, -6.81204] "vector": [32.4805, 21.3969, -6.81204]
}, },
"1.6": { "1.6": {
"vector": [-20.31753, -15.08281, -6.04184], "vector": [20.3175, 15.0828, -6.04184],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.7333": { "1.7333": {
"vector": [-20.31753, -15.08281, -6.04184], "vector": [20.3175, 15.0828, -6.04184],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.7833": { "1.7833": {
"vector": [-20.31753, -15.08281, -6.04184], "vector": [20.3175, 15.0828, -6.04184],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.95": { "1.9333": {
"vector": [-6.78199, -4.07081, 10.69071] "vector": [6.782, 4.0708, 10.69071]
}, },
"2.05": { "2.05": {
"vector": [-26.9, 5.84, 25.75] "vector": [26.9, -5.84, 25.75]
}, },
"2.2": { "2.2": {
"vector": [21.28621, 49.80684, 92.55967], "vector": [-21.2862, -49.8068, 92.55967],
"easing": "easeInCubic" "easing": "easeInCubic"
}, },
"2.3": { "2.3": {
"vector": [18.15836, 54.76869, 89.37164] "vector": [-18.1584, -54.7687, 89.37164]
}, },
"2.35": { "2.35": {
"vector": [18.15836, 54.76869, 89.37164] "vector": [-18.1584, -54.7687, 89.37164]
}, },
"2.4167": { "2.4167": {
"vector": [45.05645, 4.02403, 112.80291] "vector": [-45.0564, -4.024, 112.80291]
}, },
"2.5": { "2.5": {
"vector": [28.08023, -5.66109, 65.89022] "vector": [-28.0802, 5.6611, 65.89022]
}, },
"2.5667": { "2.5667": {
"vector": [8.14471, -15.41168, 11.40743] "vector": [-8.1447, 15.4117, 11.40743]
}, },
"2.7167": { "2.7167": {
"vector": [-27.6003, -27.56966, -16.00843], "vector": [27.6003, 27.5697, -16.00843],
"easing": "linear" "easing": "linear"
} }
}, },
@ -1426,30 +1426,30 @@
}, },
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.3833": { "0.1833": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.5333": { "0.25": {
"vector": [14, 0, 0] "vector": [-14, 0, 0]
}, },
"2.1": { "2.6833": {
"vector": [14, 0, 0] "vector": [-14, 0, 0]
}, },
"2.2833": { "2.7833": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
}, },
"position": { "position": {
"0.3833": { "0.1833": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.5333": { "0.25": {
"vector": [-0.1458, 3.06247, 1.45331] "vector": [-0.1458, 3.06247, 1.45331]
}, },
"2.1": { "2.6833": {
"vector": [-0.1458, 3.06247, 1.45331] "vector": [-0.1458, 3.06247, 1.45331]
}, },
"2.2833": { "2.7833": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }

View file

@ -525,60 +525,60 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.8167": { "0.8167": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"0.9667": { "0.9667": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"1.3": { "1.3": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"1.3833": { "1.3833": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"2.3": { "2.3": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"2.3833": { "2.3833": {
"vector": [26.69687, -23.84553, 18.95298] "vector": [-26.6969, 23.8455, 18.95298]
}, },
"2.5333": { "2.5333": {
"vector": [39.4566, -33.52813, 36.0472] "vector": [-39.4566, 33.5281, 36.0472]
}, },
"2.6167": { "2.6167": {
"vector": [21.75908, -21.54018, 13.02377], "vector": [-21.7591, 21.5402, 13.02377],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.7167": { "2.7167": {
"vector": [21.75908, -21.54018, 13.02377] "vector": [-21.7591, 21.5402, 13.02377]
}, },
"2.8167": { "2.8167": {
"vector": [25.48833, -18.43638, 18.90018] "vector": [-25.4883, 18.4364, 18.90018]
}, },
"3.25": { "3.25": {
"vector": [-14.24732, -18.35244, 9.21488], "vector": [14.2473, 18.3524, 9.21488],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"3.3167": { "3.3167": {
"vector": [-14.24732, -18.35244, 9.21488] "vector": [14.2473, 18.3524, 9.21488]
}, },
"3.5667": { "3.5667": {
"vector": [-18.21952, -18.95565, 10.00632], "vector": [18.2195, 18.9556, 10.00632],
"easing": "easeInCirc" "easing": "easeInCirc"
}, },
"3.6667": { "3.6667": {
"vector": [-18.21952, -18.95565, 10.00632], "vector": [18.2195, 18.9556, 10.00632],
"easing": "easeInCirc" "easing": "easeInCirc"
}, },
"3.85": { "3.85": {
"vector": [-14.1857, -20.99269, 12.22062] "vector": [14.1857, 20.9927, 12.22062]
}, },
"3.9333": { "3.9333": {
"vector": [-4.31893, -23.2528, 13.61203], "vector": [4.3189, 23.2528, 13.61203],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"4.15": { "4.15": {
"vector": [8.3734, -16.00221, -1.42197] "vector": [-8.3734, 16.0022, -1.42197]
}, },
"4.2333": { "4.2333": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -1005,35 +1005,35 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.8167": { "0.8167": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"0.9667": { "0.9667": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"1.3": { "1.3": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"1.3833": { "1.3833": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"2.3": { "2.3": {
"vector": [14.12373, -11.09281, 25.14677] "vector": [-14.1237, 11.0928, 25.14677]
}, },
"2.3833": { "2.3833": {
"vector": [26.69687, -23.84553, 18.95298] "vector": [-26.6969, 23.8455, 18.95298]
}, },
"2.5333": { "2.5333": {
"vector": [39.4566, -33.52813, 36.0472] "vector": [-39.4566, 33.5281, 36.0472]
}, },
"2.6167": { "2.6167": {
"vector": [21.75908, -21.54018, 13.02377], "vector": [-21.7591, 21.5402, 13.02377],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.7167": { "2.7167": {
"vector": [21.75908, -21.54018, 13.02377] "vector": [-21.7591, 21.5402, 13.02377]
}, },
"3.0333": { "3.0333": {
"vector": [8.3734, -16.00221, -1.42197] "vector": [-8.3734, 16.0022, -1.42197]
}, },
"3.1167": { "3.1167": {
"vector": [0, 0, 0] "vector": [0, 0, 0]

View file

@ -5,6 +5,63 @@
"loop": true, "loop": true,
"animation_length": 2 "animation_length": 2
}, },
"animation.glock.draw": {
"loop": "hold_on_last_frame",
"animation_length": 0.6,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [27.21312, -47.42646, -2.0218]
},
"0.1": {
"vector": [12.5, -15, 0]
},
"0.2": {
"vector": [3.48268, 0.40464, 8.20687]
},
"0.4": {
"vector": [0, 0, -2]
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [3, -17.3, 0]
},
"0.2": {
"vector": [0, 0, -1.65]
},
"0.3": {
"vector": [0, 0, 0.93]
},
"0.5": {
"vector": [0, 0, 0]
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [0, 0, 0]
},
"0.3": {
"vector": [0.25, -0.5, 0.5],
"easing": "easeInSine"
},
"0.4": {
"vector": [0, 0, 0],
"easing": "easeOutSine"
}
}
}
}
},
"animation.glock.run": { "animation.glock.run": {
"loop": true, "loop": true,
"animation_length": 0.8, "animation_length": 0.8,
@ -191,76 +248,6 @@
"easing": "easeInElastic" "easing": "easeInElastic"
} }
} }
},
"hammer": {
"rotation": {
"0.0": {
"vector": [60, 0, 0]
},
"0.0833": {
"vector": [0, 0, 0]
}
},
"scale": {
"vector": [1, 1, 1]
}
}
}
},
"animation.glock.draw": {
"loop": "hold_on_last_frame",
"animation_length": 0.6,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [27.21312, -47.42646, -2.0218]
},
"0.1": {
"vector": [12.5, -15, 0]
},
"0.2": {
"vector": [3.48268, 0.40464, 8.20687]
},
"0.4": {
"vector": [0, 0, -2]
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [3, -17.3, 0]
},
"0.2": {
"vector": [0, 0, -1.65]
},
"0.3": {
"vector": [0, 0, 0.93]
},
"0.5": {
"vector": [0, 0, 0]
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [0, 0, 0]
},
"0.3": {
"vector": [0.25, -0.5, 0.5],
"easing": "easeInSine"
},
"0.4": {
"vector": [0, 0, 0],
"easing": "easeOutSine"
}
}
} }
} }
}, },
@ -394,24 +381,30 @@
}, },
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.125": { "0.25": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.325": {
"vector": [0, 6, -9] "vector": [-0.74716, 1.87653, -7.1133]
}, },
"0.375": { "1.0": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"1.1": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
}, },
"position": { "position": {
"0.125": { "0.25": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.325": {
"vector": [3.00321, -0.61688, -0.10106] "vector": [-0.66084, -0.04017, 0.01492]
}, },
"0.375": { "1.0": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"1.1": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
@ -422,31 +415,31 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.075": { "0.075": {
"vector": [133.30702, -9.72565, -30.6365] "vector": [-133.307, 9.7256, -30.6365]
}, },
"0.65": { "0.65": {
"vector": [25.46719, -22.2363, 78.12621] "vector": [-25.4672, 22.2363, 78.12621]
}, },
"0.725": { "0.725": {
"vector": [23.34788, -25.26118, 70.86152] "vector": [-23.3479, 25.2612, 70.86152]
}, },
"0.8": { "0.8": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"0.925": { "0.925": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"0.975": { "0.975": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"1.0": { "1.0": {
"vector": [13.04381, 11.88065, 62.82106] "vector": [-13.0438, -11.8806, 62.82106]
}, },
"1.025": { "1.025": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"1.05": { "1.05": {
"vector": [5.64016, 8.63483, 66.98444] "vector": [-5.6402, -8.6348, 66.98444]
}, },
"1.125": { "1.125": {
"vector": [0, 0, 8] "vector": [0, 0, 8]
@ -810,24 +803,30 @@
}, },
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.125": { "0.25": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.325": {
"vector": [0, 6, -9] "vector": [-0.74716, 1.87653, -7.1133]
}, },
"0.375": { "1.0": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"1.1": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
}, },
"position": { "position": {
"0.125": { "0.25": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.325": {
"vector": [3.00321, -0.61688, -0.10106] "vector": [-0.66084, -0.04017, 0.01492]
}, },
"0.375": { "1.0": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"1.1": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
@ -838,47 +837,47 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.075": { "0.075": {
"vector": [133.30702, -9.72565, -30.6365] "vector": [-133.307, 9.7256, -30.6365]
}, },
"0.65": { "0.65": {
"vector": [25.46719, -22.2363, 78.12621] "vector": [-25.4672, 22.2363, 78.12621]
}, },
"0.725": { "0.725": {
"vector": [23.34788, -25.26118, 70.86152] "vector": [-23.3479, 25.2612, 70.86152]
}, },
"0.8": { "0.8": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"0.925": { "0.925": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"0.975": { "0.975": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"1.0": { "1.0": {
"vector": [13.04381, 11.88065, 62.82106] "vector": [-13.0438, -11.8806, 62.82106]
}, },
"1.05": { "1.05": {
"vector": [-4.93818, -6.6412, 30.82739] "vector": [4.9382, 6.6412, 30.82739]
}, },
"1.15": { "1.15": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.2": { "1.2": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.225": { "1.225": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.4": { "1.4": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.5": { "1.5": {
"vector": [3.537, -23.82754, -26.97592] "vector": [-3.537, 23.8275, -26.97592]
}, },
"1.575": { "1.575": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -1243,6 +1242,204 @@
} }
} }
}, },
"animation.glock.change_fire_rate": {
"animation_length": 0.5,
"override_previous_animation": true,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [-0.98905, -0.20901, -1.99637],
"easing": "easeInSine"
},
"0.25": {
"vector": [0, -3, -8],
"easing": "easeOutQuad"
},
"0.375": {
"vector": [0.05236, 1.49909, -1.99931]
},
"0.5": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0, 0.00828, 0],
"easing": "easeInSine"
},
"0.25": {
"vector": [0, 0.1, 0],
"easing": "easeOutQuad"
},
"0.3333": {
"vector": [0, -0.095, 0]
},
"0.5": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
}
}
},
"lun": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, -22.5]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, 0]
}
}
},
"Righthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0, 0, -2.5]
},
"0.25": {
"vector": [-0.5682, 1.9262, -5.92244]
},
"0.4167": {
"vector": [-0.9707, 0.6993, -1.25596]
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0.19922, 0, 0]
},
"0.25": {
"vector": [0.2, 0.27734, 0]
},
"0.5": {
"vector": [0, 0, 0]
}
}
}
}
},
"animation.glock.change_fire_rate2": {
"animation_length": 0.5,
"override_previous_animation": true,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
},
"0.125": {
"vector": [-0.39193, -2.97431, -0.48982],
"easing": "easeOutQuad"
},
"0.25": {
"vector": [0.24763, 1.47942, 5.5032]
},
"0.3333": {
"vector": [-1.00787, -0.07813, 5.50251],
"easing": "easeInSine"
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
},
"0.125": {
"vector": [0, 0.1, 0],
"easing": "easeOutQuad"
},
"0.25": {
"vector": [0, -0.095, 0]
},
"0.375": {
"vector": [0, 0.00828, 0],
"easing": "easeInSine"
},
"0.5": {
"vector": [0, 0, 0]
}
}
},
"lun": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, -22.5]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, 0]
}
}
},
"Righthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.125": {
"vector": [-0.8574, 2.299, -7.40388]
},
"0.2083": {
"vector": [0, 0, -2.5]
},
"0.3333": {
"vector": [-0.9707, 0.6993, -1.25596]
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.125": {
"vector": [0.2, 0.27734, 0]
},
"0.2083": {
"vector": [0.19922, 0, 0]
},
"0.5": {
"vector": [0, 0, 0]
}
}
}
}
},
"animation.m1911.reload_empty": { "animation.m1911.reload_empty": {
"loop": "hold_on_last_frame", "loop": "hold_on_last_frame",
"animation_length": 1.7, "animation_length": 1.7,
@ -1341,24 +1538,30 @@
}, },
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.125": { "0.25": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.325": {
"vector": [0, 6, -9] "vector": [-0.74716, 1.87653, -7.1133]
}, },
"0.375": { "1.0": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"1.1": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
}, },
"position": { "position": {
"0.125": { "0.25": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.325": {
"vector": [3.00321, -0.61688, -0.10106] "vector": [-0.66084, -0.04017, 0.01492]
}, },
"0.375": { "1.0": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"1.1": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
@ -1369,47 +1572,47 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.075": { "0.075": {
"vector": [133.30702, -9.72565, -30.6365] "vector": [-133.307, 9.7256, -30.6365]
}, },
"0.65": { "0.65": {
"vector": [25.46719, -22.2363, 78.12621] "vector": [-25.4672, 22.2363, 78.12621]
}, },
"0.725": { "0.725": {
"vector": [23.34788, -25.26118, 70.86152] "vector": [-23.3479, 25.2612, 70.86152]
}, },
"0.8": { "0.8": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"0.925": { "0.925": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"0.975": { "0.975": {
"vector": [15.35593, 5.20698, 63.75845] "vector": [-15.3559, -5.207, 63.75845]
}, },
"1.0": { "1.0": {
"vector": [13.04381, 11.88065, 62.82106] "vector": [-13.0438, -11.8806, 62.82106]
}, },
"1.05": { "1.05": {
"vector": [-4.93818, -6.6412, 30.82739] "vector": [4.9382, 6.6412, 30.82739]
}, },
"1.15": { "1.15": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.2": { "1.2": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.225": { "1.225": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.4": { "1.4": {
"vector": [-32.88924, -30.55823, -55.9374], "vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.5": { "1.5": {
"vector": [3.537, -23.82754, -26.97592] "vector": [-3.537, 23.8275, -26.97592]
}, },
"1.575": { "1.575": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -1773,204 +1976,6 @@
} }
} }
} }
},
"animation.glock.change_fire_rate": {
"animation_length": 0.5,
"override_previous_animation": true,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [-0.98905, -0.20901, -1.99637],
"easing": "easeInSine"
},
"0.25": {
"vector": [0, -3, -8],
"easing": "easeOutQuad"
},
"0.375": {
"vector": [0.05236, 1.49909, -1.99931]
},
"0.5": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0, 0.00828, 0],
"easing": "easeInSine"
},
"0.25": {
"vector": [0, 0.1, 0],
"easing": "easeOutQuad"
},
"0.3333": {
"vector": [0, -0.095, 0]
},
"0.5": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
}
}
},
"lun": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, -22.5]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, 0]
}
}
},
"Righthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0, 0, -2.5]
},
"0.25": {
"vector": [0.5682, -1.92615, -5.92244]
},
"0.4167": {
"vector": [0.97066, -0.69928, -1.25596]
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1667": {
"vector": [0.19922, 0, 0]
},
"0.25": {
"vector": [0.2, 0.27734, 0]
},
"0.5": {
"vector": [0, 0, 0]
}
}
}
}
},
"animation.glock.change_fire_rate2": {
"animation_length": 0.5,
"override_previous_animation": true,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
},
"0.125": {
"vector": [-0.39193, -2.97431, -0.48982],
"easing": "easeOutQuad"
},
"0.25": {
"vector": [0.24763, 1.47942, 5.5032]
},
"0.3333": {
"vector": [-1.00787, -0.07813, 5.50251],
"easing": "easeInSine"
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
},
"0.125": {
"vector": [0, 0.1, 0],
"easing": "easeOutQuad"
},
"0.25": {
"vector": [0, -0.095, 0]
},
"0.375": {
"vector": [0, 0.00828, 0],
"easing": "easeInSine"
},
"0.5": {
"vector": [0, 0, 0]
}
}
},
"lun": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, -22.5]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.0417": {
"vector": [0, 0, 0]
}
}
},
"Righthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.125": {
"vector": [0.85744, -2.29899, -7.40388]
},
"0.2083": {
"vector": [0, 0, -2.5]
},
"0.3333": {
"vector": [0.97066, -0.69928, -1.25596]
},
"0.5": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.125": {
"vector": [0.2, 0.27734, 0]
},
"0.2083": {
"vector": [0.19922, 0, 0]
},
"0.5": {
"vector": [0, 0, 0]
}
}
}
}
} }
}, },
"geckolib_format_version": 2 "geckolib_format_version": 2

View file

@ -260,14 +260,6 @@
} }
} }
}, },
"Righthand": {
"rotation": {
"vector": [-2.03554, 4.28304, 3.39493]
},
"position": {
"vector": [0.30134, -0.35141, 1.25128]
}
},
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"vector": [-1.41476, -16.33468, -1.66483] "vector": [-1.41476, -16.33468, -1.66483]
@ -559,50 +551,50 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.4583": { "0.4583": {
"vector": [-3.81928, -8.59364, -9.17363] "vector": [3.8193, 8.5936, -9.17363]
}, },
"0.5417": { "0.5417": {
"vector": [0, 1.5, 1] "vector": [0, -1.5, 1]
}, },
"0.625": { "0.625": {
"vector": [0, 1.5, 1] "vector": [0, -1.5, 1]
}, },
"0.9167": { "0.9167": {
"vector": [0, 1.5, 1] "vector": [0, -1.5, 1]
}, },
"1.0": { "1.0": {
"vector": [-1.80149, -4.34261, -11.56806] "vector": [1.8015, 4.3426, -11.56806]
}, },
"1.9167": { "1.9167": {
"vector": [-1.80149, -4.34261, -11.56806] "vector": [1.8015, 4.3426, -11.56806]
}, },
"2.0417": { "2.0417": {
"vector": [8.98588, -28.60432, 4.50464] "vector": [-8.9859, 28.6043, 4.50464]
}, },
"2.1667": { "2.1667": {
"vector": [-22.62507, -32.8034, 18.28494] "vector": [22.6251, 32.8034, 18.28494]
}, },
"2.2083": { "2.2083": {
"vector": [-22.62507, -32.8034, 18.28494] "vector": [22.6251, 32.8034, 18.28494]
}, },
"2.2917": { "2.2917": {
"vector": [-15.46722, -16.63005, 1.48245], "vector": [15.4672, 16.6301, 1.48245],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.375": { "2.375": {
"vector": [-15.46722, -16.63005, 1.48245], "vector": [15.4672, 16.6301, 1.48245],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.4583": { "2.4583": {
"vector": [-15.14496, -21.26229, 5.31052], "vector": [15.145, 21.2623, 5.31052],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"2.5417": { "2.5417": {
"vector": [3.06668, -17.33275, 4.18047], "vector": [-3.0667, 17.3328, 4.18047],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"2.6667": { "2.6667": {
"vector": [-8.03996, -14.46909, -5.02907] "vector": [8.04, 14.4691, -5.02907]
}, },
"2.75": { "2.75": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -634,29 +626,29 @@
"vector": [-0.3, -3.7, 5.6] "vector": [-0.3, -3.7, 5.6]
}, },
"2.1667": { "2.1667": {
"vector": [-1, -2, 7] "vector": [-1, -2, 6]
}, },
"2.2083": { "2.2083": {
"vector": [-1, -2, 7] "vector": [-1, -2, 6]
}, },
"2.2917": { "2.2917": {
"vector": [-0.51, -1.43, 7.2], "vector": [-0.51, -1.43, 6.2],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.375": { "2.375": {
"vector": [-0.51, -1.43, 7.2], "vector": [-0.51, -1.43, 6.2],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.4583": { "2.4583": {
"vector": [-0.51, -1.43, 7.2], "vector": [-0.51, -1.43, 6.2],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"2.5417": { "2.5417": {
"vector": [0.29, -0.14, 6.76], "vector": [0.29, -0.14, 5.76],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"2.6667": { "2.6667": {
"vector": [0.14, -2.57, 2.38] "vector": [0.14, -2.57, 1.38]
}, },
"2.75": { "2.75": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -954,25 +946,25 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.4583": { "0.4583": {
"vector": [-3.81928, -8.59364, -9.17363] "vector": [3.8193, 8.5936, -9.17363]
}, },
"0.5417": { "0.5417": {
"vector": [0, 1.5, 1] "vector": [0, -1.5, 1]
}, },
"0.625": { "0.625": {
"vector": [0, 1.5, 1] "vector": [0, -1.5, 1]
}, },
"0.9167": { "0.9167": {
"vector": [0, 1.5, 1] "vector": [0, -1.5, 1]
}, },
"1.0": { "1.0": {
"vector": [-1.80149, -4.34261, -11.56806] "vector": [1.8015, 4.3426, -11.56806]
}, },
"1.9167": { "1.9167": {
"vector": [-1.80149, -4.34261, -11.56806] "vector": [1.8015, 4.3426, -11.56806]
}, },
"2.0417": { "2.0417": {
"vector": [-3.81928, -8.59364, -9.17363] "vector": [3.8193, 8.5936, -9.17363]
}, },
"2.2917": { "2.2917": {
"vector": [0, 0, 0], "vector": [0, 0, 0],

View file

@ -361,51 +361,51 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.4": { "0.4": {
"vector": [-8.8948, 19.8626, 36.14405], "vector": [8.8948, -19.8626, 36.14405],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.5": { "0.5": {
"vector": [-8.8948, 19.8626, 36.14405] "vector": [8.8948, -19.8626, 36.14405]
}, },
"0.65": { "0.65": {
"vector": [-8.8948, 19.8626, 36.14405] "vector": [8.8948, -19.8626, 36.14405]
}, },
"0.8": { "0.8": {
"vector": [3.25, 10.2, 17.36] "vector": [-3.25, -10.2, 17.36]
}, },
"1.0": { "1.0": {
"vector": [51.5, 10.2, 17.36] "vector": [-51.5, -10.2, 17.36]
}, },
"1.3": { "1.3": {
"vector": [-11.19908, 17.21105, 28.33644] "vector": [11.1991, -17.211, 28.33644]
}, },
"1.5": { "1.5": {
"vector": [-17.96066, 20.21452, 33.90326] "vector": [17.9607, -20.2145, 33.90326]
}, },
"1.6": { "1.6": {
"vector": [-14.94857, 17.74508, 35.60731] "vector": [14.9486, -17.7451, 35.60731]
}, },
"1.7": { "1.7": {
"vector": [-0.24351, 0.37838, 20.00199] "vector": [0.2435, -0.3784, 20.00199]
}, },
"1.925": { "1.925": {
"vector": [-0.24351, 0.37838, 20.00199] "vector": [0.2435, -0.3784, 20.00199]
}, },
"2.025": { "2.025": {
"vector": [4.03477, 13.13055, 0.42291] "vector": [-4.0348, -13.1306, 0.42291]
}, },
"2.225": { "2.225": {
"vector": [-8.8948, 19.8626, 36.14405] "vector": [8.8948, -19.8626, 36.14405]
}, },
"2.3": { "2.3": {
"vector": [-8.8948, 19.8626, 36.14405] "vector": [8.8948, -19.8626, 36.14405]
}, },
"2.475": { "2.475": {
"vector": [-8.8948, 19.8626, 36.14405], "vector": [8.8948, -19.8626, 36.14405],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.5": { "2.5": {
"vector": [-8.8948, 19.8626, 36.14405] "vector": [8.8948, -19.8626, 36.14405]
}, },
"2.6": { "2.6": {
"vector": [0, 0, 0], "vector": [0, 0, 0],

View file

@ -175,10 +175,10 @@
}, },
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"vector": [0.91131, 14.09621, -8.80599] "vector": [2.0609, 1.03935, 6.06291]
}, },
"position": { "position": {
"vector": [2.87519, -0.6965, 0.78255] "vector": [-1.01438, 0.65756, -1.18578]
} }
}, },
"camera": { "camera": {
@ -325,35 +325,35 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.075": { "0.075": {
"vector": [-18.55124, 17.47135, 19.69774], "vector": [18.5512, -17.4714, 19.69774],
"easing": "linear" "easing": "linear"
}, },
"0.225": { "0.225": {
"vector": [-21.13227, 15.58282, 11.08112], "vector": [21.1323, -15.5828, 11.08112],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.275": { "0.275": {
"vector": [-21.13227, 15.58282, 11.08112], "vector": [21.1323, -15.5828, 11.08112],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.375": { "0.375": {
"vector": [-15.21355, 15.26875, 0.47749], "vector": [15.2135, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.525": { "0.525": {
"vector": [-21.13227, 15.58282, 11.08112], "vector": [21.1323, -15.5828, 11.08112],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.575": { "0.575": {
"vector": [-21.13227, 15.58282, 11.08112], "vector": [21.1323, -15.5828, 11.08112],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.625": { "0.625": {
"vector": [-21.13227, 15.58282, 11.08112], "vector": [21.1323, -15.5828, 11.08112],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.7": { "0.7": {
"vector": [-18.55124, 17.47135, 19.69774], "vector": [18.5512, -17.4714, 19.69774],
"easing": "linear" "easing": "linear"
}, },
"0.85": { "0.85": {
@ -720,23 +720,23 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.325": { "0.325": {
"vector": [-11.05124, 19.47135, -3.30226], "vector": [11.0512, -19.4714, -3.30226],
"easing": "linear" "easing": "linear"
}, },
"0.4": { "0.4": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.475": { "0.475": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.55": { "0.55": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.6": { "0.6": {
"vector": [-4.14232, 19.79507, 13.70946] "vector": [4.1423, -19.7951, 13.70946]
}, },
"0.65": { "0.65": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -745,50 +745,50 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.925": { "0.925": {
"vector": [-8.33033, 5.65596, 13.05706] "vector": [8.3303, -5.656, 13.05706]
}, },
"1.0": { "1.0": {
"vector": [-6.18619, 8.07995, 18.65294] "vector": [6.1862, -8.08, 18.65294]
}, },
"1.15": { "1.15": {
"vector": [-4.42509, 8.92104, 20.48316] "vector": [4.4251, -8.921, 20.48316]
}, },
"1.25": { "1.25": {
"vector": [-6.86404, 9.72039, 24.55552] "vector": [6.864, -9.7204, 24.55552]
}, },
"1.375": { "1.375": {
"vector": [-7.46247, 12.29708, 32.22429] "vector": [7.4625, -12.2971, 32.22429]
}, },
"1.65": { "1.65": {
"vector": [-2.29696, 10.44245, 40.90223], "vector": [2.297, -10.4424, 40.90223],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.7": { "1.7": {
"vector": [-2.29696, 10.44245, 40.90223], "vector": [2.297, -10.4424, 40.90223],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.8": { "1.8": {
"vector": [-3.90219, 7.77454, 23.25241] "vector": [3.9022, -7.7745, 23.25241]
}, },
"1.975": { "1.975": {
"vector": [-1.14775, 6.58976, 7.07099] "vector": [1.1478, -6.5898, 7.07099]
}, },
"2.075": { "2.075": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"2.175": { "2.175": {
"vector": [-5.26935, 23.9397, 9.47263] "vector": [5.2694, -23.9397, 9.47263]
}, },
"2.25": { "2.25": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.35": { "2.35": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.45": { "2.45": {
"vector": [-11.05124, 19.47135, -3.30226], "vector": [11.0512, -19.4714, -3.30226],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.65": { "2.65": {
@ -1323,52 +1323,52 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.225": { "0.225": {
"vector": [-11.05124, 19.47135, -3.30226], "vector": [11.0512, -19.4714, -3.30226],
"easing": "linear" "easing": "linear"
}, },
"0.3": { "0.3": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.4": { "0.4": {
"vector": [-2.3634, 22.74644, -2.37175], "vector": [2.3634, -22.7464, -2.37175],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.45": { "0.45": {
"vector": [-38.00184, 36.4054, 12.11123] "vector": [38.0018, -36.4054, 12.11123]
}, },
"0.5": { "0.5": {
"vector": [-25.14483, 27.42795, 31.71508] "vector": [25.1448, -27.4279, 31.71508]
}, },
"0.625": { "0.625": {
"vector": [-26.07019, 8.24668, 23.7982] "vector": [26.0702, -8.2467, 23.7982]
}, },
"0.85": { "0.85": {
"vector": [-20.82632, 5.64263, 37.12867], "vector": [20.8263, -5.6426, 37.12867],
"easing": "easeInQuad" "easing": "easeInQuad"
}, },
"0.9": { "0.9": {
"vector": [-20.82632, 5.64263, 37.12867], "vector": [20.8263, -5.6426, 37.12867],
"easing": "easeInQuad" "easing": "easeInQuad"
}, },
"0.95": { "0.95": {
"vector": [-21.52185, 6.02263, 40.77085], "vector": [21.5219, -6.0226, 40.77085],
"easing": "easeInQuad" "easing": "easeInQuad"
}, },
"1.025": { "1.025": {
"vector": [-20.82632, 5.64263, 37.12867], "vector": [20.8263, -5.6426, 37.12867],
"easing": "easeInQuad" "easing": "easeInQuad"
}, },
"1.15": { "1.15": {
"vector": [-16.71355, 15.26875, 0.47749], "vector": [16.7136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"1.275": { "1.275": {
"vector": [-15.87845, 7.81711, -10.21497], "vector": [15.8785, -7.8171, -10.21497],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"1.5": { "1.5": {
"vector": [-11.3392, 11.10446, 14.57372], "vector": [11.3392, -11.1045, 14.57372],
"easing": "easeInElastic" "easing": "easeInElastic"
} }
}, },
@ -1650,24 +1650,24 @@
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [-11.3392, 11.10446, 14.57372], "vector": [11.3392, -11.1045, 14.57372],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.15": { "0.15": {
"vector": [-12.81458, 23.61754, 36.26634], "vector": [12.8146, -23.6175, 36.26634],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.2": { "0.2": {
"vector": [-12.81, 23.62, 36.27] "vector": [12.81, -23.62, 36.27]
}, },
"0.275": { "0.275": {
"vector": [-12.49926, 24.91581, 38.43047] "vector": [12.4993, -24.9158, 38.43047]
}, },
"0.35": { "0.35": {
"vector": [-12.81, 23.62, 36.27] "vector": [12.81, -23.62, 36.27]
}, },
"0.5": { "0.5": {
"vector": [-11.3392, 11.10446, 14.57372], "vector": [11.3392, -11.1045, 14.57372],
"easing": "easeInElastic" "easing": "easeInElastic"
} }
}, },
@ -1886,24 +1886,24 @@
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [-11.3392, 11.10446, 14.57372], "vector": [11.3392, -11.1045, 14.57372],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.15": { "0.15": {
"vector": [-12.81458, 23.61754, 36.26634], "vector": [12.8146, -23.6175, 36.26634],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.2": { "0.2": {
"vector": [-12.81, 23.62, 36.27] "vector": [12.81, -23.62, 36.27]
}, },
"0.275": { "0.275": {
"vector": [-12.49926, 24.91581, 38.43047] "vector": [12.4993, -24.9158, 38.43047]
}, },
"0.35": { "0.35": {
"vector": [-12.81, 23.62, 36.27] "vector": [12.81, -23.62, 36.27]
}, },
"0.5": { "0.5": {
"vector": [-11.3392, 11.10446, 14.57372], "vector": [11.3392, -11.1045, 14.57372],
"easing": "easeInElastic" "easing": "easeInElastic"
} }
}, },
@ -2138,22 +2138,22 @@
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
"vector": [-11.3392, 11.10446, 14.57372], "vector": [11.3392, -11.1045, 14.57372],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.125": { "0.125": {
"vector": [0.33364, 12.32415, 10.44503] "vector": [-0.3336, -12.3241, 10.44503]
}, },
"0.25": { "0.25": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.35": { "0.35": {
"vector": [-2.21355, 15.26875, 0.47749], "vector": [2.2136, -15.2688, 0.47749],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.45": { "0.45": {
"vector": [-11.05124, 19.47135, -3.30226], "vector": [11.0512, -19.4714, -3.30226],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.65": { "0.65": {

View file

@ -534,16 +534,16 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.0833": { "0.0833": {
"vector": [-6.6009, 8.85836, -13.85774] "vector": [6.6009, -8.8584, -13.85774]
}, },
"0.2083": { "0.2083": {
"vector": [-13.90491, 17.30021, 3.93238] "vector": [13.9049, -17.3002, 3.93238]
}, },
"0.5417": { "0.5417": {
"vector": [-13.9, 17.3, 3.93] "vector": [13.9, -17.3, 3.93]
}, },
"0.7083": { "0.7083": {
"vector": [-6.93478, 15.31708, -0.16935] "vector": [6.9348, -15.3171, -0.16935]
}, },
"0.875": { "0.875": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -640,87 +640,87 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"1.5417": { "1.5417": {
"vector": [2.85955, -8.17269, -2.48558], "vector": [-2.8596, 8.1727, -2.48558],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.625": { "1.625": {
"vector": [-35.91738, -33.71411, 5.51398], "vector": [35.9174, 33.7141, 5.51398],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.7917": { "1.7917": {
"vector": [-68.76834, -28.84985, -45.12465], "vector": [68.7683, 28.8498, -45.12465],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.0": { "2.0": {
"vector": [-71.79717, -11.25593, -38.23584] "vector": [71.7972, 11.2559, -38.23584]
}, },
"2.0833": { "2.0833": {
"vector": [-32.88366, 41.52582, -17.56942], "vector": [32.8837, -41.5258, -17.56942],
"easing": "easeInQuart" "easing": "easeInQuart"
}, },
"2.2083": { "2.2083": {
"vector": [-32.88366, 41.52582, -17.56942], "vector": [32.8837, -41.5258, -17.56942],
"easing": "easeInQuart" "easing": "easeInQuart"
}, },
"2.375": { "2.375": {
"vector": [-9.49945, 23.72491, 29.51203], "vector": [9.4994, -23.7249, 29.51203],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.5": { "2.5": {
"vector": [-16.70582, -8.14497, 15.72292] "vector": [16.7058, 8.145, 15.72292]
}, },
"2.5833": { "2.5833": {
"vector": [1.2574, -4.44598, 3.64868], "vector": [-1.2574, 4.446, 3.64868],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"2.625": { "2.625": {
"vector": [1.2574, -4.44598, 3.64868], "vector": [-1.2574, 4.446, 3.64868],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"4.2083": { "4.2083": {
"vector": [1.2574, -4.44598, 3.64868], "vector": [-1.2574, 4.446, 3.64868],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"4.375": { "4.375": {
"vector": [-24.42266, -44.66287, -23.47349] "vector": [24.4227, 44.6629, -23.47349]
}, },
"4.5417": { "4.5417": {
"vector": [-12.96929, -39.3572, -46.30001] "vector": [12.9693, 39.3572, -46.30001]
}, },
"4.625": { "4.625": {
"vector": [-12.96929, -39.3572, -46.30001] "vector": [12.9693, 39.3572, -46.30001]
}, },
"4.7083": { "4.7083": {
"vector": [-12.53951, -37.21222, -62.43842] "vector": [12.5395, 37.2122, -62.43842]
}, },
"4.7917": { "4.7917": {
"vector": [-12.53951, -37.21222, -65.43842] "vector": [12.5395, 37.2122, -65.43842]
}, },
"5.0417": { "5.0417": {
"vector": [-21.52373, 2.87885, 13.45216], "vector": [21.5237, -2.8788, 13.45216],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.0833": { "5.0833": {
"vector": [-21.52373, 2.87885, 13.45216], "vector": [21.5237, -2.8788, 13.45216],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.25": { "5.25": {
"vector": [-68.76834, -28.84985, -24.12465], "vector": [68.7683, 28.8498, -24.12465],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.375": { "5.375": {
"vector": [-68.76834, -28.84985, -24.12465], "vector": [68.7683, 28.8498, -24.12465],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.5": { "5.5": {
"vector": [-64.34286, -31.28198, -19.80534] "vector": [64.3429, 31.282, -19.80534]
}, },
"5.625": { "5.625": {
"vector": [-35.91738, -33.71411, 5.51398], "vector": [35.9174, 33.7141, 5.51398],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.75": { "5.75": {
"vector": [3.87136, -15.22809, 1.42118], "vector": [-3.8714, 15.2281, 1.42118],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.9167": { "5.9167": {
@ -1270,87 +1270,87 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.7083": { "0.7083": {
"vector": [2.85955, -8.17269, -2.48558], "vector": [-2.8596, 8.1727, -2.48558],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"0.7917": { "0.7917": {
"vector": [-35.91738, -33.71411, 5.51398], "vector": [35.9174, 33.7141, 5.51398],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"0.9583": { "0.9583": {
"vector": [-68.76834, -28.84985, -45.12465], "vector": [68.7683, 28.8498, -45.12465],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"1.1667": { "1.1667": {
"vector": [-71.79717, -11.25593, -38.23584] "vector": [71.7972, 11.2559, -38.23584]
}, },
"1.25": { "1.25": {
"vector": [-32.88366, 41.52582, -17.56942], "vector": [32.8837, -41.5258, -17.56942],
"easing": "easeInQuart" "easing": "easeInQuart"
}, },
"1.375": { "1.375": {
"vector": [-32.88366, 41.52582, -17.56942], "vector": [32.8837, -41.5258, -17.56942],
"easing": "easeInQuart" "easing": "easeInQuart"
}, },
"1.5417": { "1.5417": {
"vector": [-9.49945, 23.72491, 29.51203], "vector": [9.4994, -23.7249, 29.51203],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"1.6667": { "1.6667": {
"vector": [-16.70582, -8.14497, 15.72292] "vector": [16.7058, 8.145, 15.72292]
}, },
"1.75": { "1.75": {
"vector": [1.2574, -4.44598, 3.64868], "vector": [-1.2574, 4.446, 3.64868],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.7917": { "1.7917": {
"vector": [1.2574, -4.44598, 3.64868], "vector": [-1.2574, 4.446, 3.64868],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"3.375": { "3.375": {
"vector": [1.2574, -4.44598, 3.64868], "vector": [-1.2574, 4.446, 3.64868],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"3.5417": { "3.5417": {
"vector": [-24.42266, -44.66287, -23.47349] "vector": [24.4227, 44.6629, -23.47349]
}, },
"3.7083": { "3.7083": {
"vector": [-12.96929, -39.3572, -46.30001] "vector": [12.9693, 39.3572, -46.30001]
}, },
"3.7917": { "3.7917": {
"vector": [-12.96929, -39.3572, -46.30001] "vector": [12.9693, 39.3572, -46.30001]
}, },
"3.875": { "3.875": {
"vector": [-12.53951, -37.21222, -62.43842] "vector": [12.5395, 37.2122, -62.43842]
}, },
"3.9583": { "3.9583": {
"vector": [-12.53951, -37.21222, -65.43842] "vector": [12.5395, 37.2122, -65.43842]
}, },
"4.2083": { "4.2083": {
"vector": [-21.52373, 2.87885, 13.45216], "vector": [21.5237, -2.8788, 13.45216],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"4.25": { "4.25": {
"vector": [-21.52373, 2.87885, 13.45216], "vector": [21.5237, -2.8788, 13.45216],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"4.4167": { "4.4167": {
"vector": [-68.76834, -28.84985, -24.12465], "vector": [68.7683, 28.8498, -24.12465],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"4.5417": { "4.5417": {
"vector": [-68.76834, -28.84985, -24.12465], "vector": [68.7683, 28.8498, -24.12465],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"4.6667": { "4.6667": {
"vector": [-64.34286, -31.28198, -19.80534] "vector": [64.3429, 31.282, -19.80534]
}, },
"4.7917": { "4.7917": {
"vector": [-35.91738, -33.71411, 5.51398], "vector": [35.9174, 33.7141, 5.51398],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"4.9167": { "4.9167": {
"vector": [3.87136, -15.22809, 1.42118], "vector": [-3.8714, 15.2281, 1.42118],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"5.0833": { "5.0833": {

View file

@ -380,16 +380,16 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.1": { "0.1": {
"vector": [-8, 0, 0] "vector": [8, 0, 0]
}, },
"0.175": { "0.175": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.275": { "0.275": {
"vector": [-7, 0, 0] "vector": [7, 0, 0]
}, },
"0.375": { "0.375": {
"vector": [-6.2031, 8.44204, -3.2225] "vector": [6.2031, -8.442, -3.2225]
}, },
"0.45": { "0.45": {
"vector": [0, 0, 0], "vector": [0, 0, 0],
@ -420,38 +420,38 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.175": { "0.175": {
"vector": [0.59411, 0.24806, 1.64028] "vector": [-0.5941, -0.2481, 1.64028]
}, },
"0.25": { "0.25": {
"vector": [-5.8983, -0.43815, -7.78752] "vector": [5.8983, 0.4381, -7.78752]
}, },
"0.7": { "0.7": {
"vector": [-5.8983, -0.43815, -7.78752] "vector": [5.8983, 0.4381, -7.78752]
}, },
"1.075": { "1.075": {
"vector": [-7.17022, 7.39113, -12.40813] "vector": [7.1702, -7.3911, -12.40813]
}, },
"1.525": { "1.525": {
"vector": [17.52364, 27.40977, -23.09622] "vector": [-17.5236, -27.4098, -23.09622]
}, },
"1.8": { "1.8": {
"vector": [-29.63645, 18.5572, -26.67534], "vector": [29.6365, -18.5572, -26.67534],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"1.85": { "1.85": {
"vector": [-37.49787, -5.03762, -44.74418], "vector": [37.4979, 5.0376, -44.74418],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"1.925": { "1.925": {
"vector": [-37.49787, -5.03762, -44.74418], "vector": [37.4979, 5.0376, -44.74418],
"easing": "easeOutSine" "easing": "easeOutSine"
}, },
"2.05": { "2.05": {
"vector": [2.06124, -10.12643, -14.23199], "vector": [-2.0612, 10.1264, -14.23199],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.325": { "2.325": {
"vector": [22.33333, 0, 7.55556] "vector": [-22.3333, 0, 7.55556]
}, },
"2.425": { "2.425": {
"vector": [0, 0, 0] "vector": [0, 0, 0]

View file

@ -1,6 +1,10 @@
{ {
"format_version": "1.8.0", "format_version": "1.8.0",
"animations": { "animations": {
"animation.m870.idle": {
"loop": true,
"animation_length": 0.25
},
"animation.m870.run": { "animation.m870.run": {
"loop": true, "loop": true,
"animation_length": 0.8, "animation_length": 0.8,
@ -65,14 +69,6 @@
"vector": [-0.3, -0.3, 0.3] "vector": [-0.3, -0.3, 0.3]
} }
} }
},
"rightarm": {
"rotation": {
"vector": [-3.89081, 10.49539, 14.96336]
},
"position": {
"vector": [1.66, 0.55, 0.97]
}
} }
} }
}, },
@ -124,22 +120,6 @@
} }
} }
}, },
"Righthand": {
"rotation": {
"vector": [-2.03554, 4.28304, 3.39493]
},
"position": {
"vector": [0.30134, -0.35141, 1.25128]
}
},
"Lefthand": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
},
"main": { "main": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -184,14 +164,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -210,6 +182,14 @@
"vector": [-0.3, -0.3, 0.3] "vector": [-0.3, -0.3, 0.3]
} }
} }
},
"Lefthand": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
} }
} }
}, },
@ -249,30 +229,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2083": {
"vector": [1, 0, -22]
},
"0.4167": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2083": {
"vector": [3.53901, 3.6754, 5.59783]
},
"0.4167": {
"vector": [0, 0, 0]
}
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -293,10 +249,6 @@
} }
} }
}, },
"animation.m870.idle": {
"loop": true,
"animation_length": 0.25
},
"animation.m870.prepare": { "animation.m870.prepare": {
"animation_length": 0.75, "animation_length": 0.75,
"bones": { "bones": {
@ -320,24 +272,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.3": {
"vector": [18.65272, -19.6093, 27.24873]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.3": {
"vector": [-9.54645, -3.8823, 19.89207]
}
}
},
"shell": { "shell": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -376,14 +310,6 @@
} }
} }
}, },
"rightarm": {
"rotation": {
"vector": [0, 0, 0]
},
"position": {
"vector": [0, 0, 0]
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -396,6 +322,28 @@
"vector": [0, 0, -1] "vector": [0, 0, -1]
} }
} }
},
"Lefthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.3": {
"vector": [-18.47095, 10.97836, 63.15915]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [-9.32081, -6.89105, 21.0803]
},
"0.3": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
}
}
} }
} }
}, },
@ -497,107 +445,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.05": {
"vector": [0, 0, 0]
},
"0.15": {
"vector": [0, 0, 0]
},
"0.175": {
"vector": [0, 0, 0]
},
"0.425": {
"vector": [44.19465, 4.587, -49.36335],
"easing": "linear"
},
"0.775": {
"vector": [50.21962, 64.27417, 84.66748]
},
"0.85": {
"vector": [80.02514, 63.03571, 124.53108]
},
"0.9": {
"vector": [77.02514, 63.03571, 124.53108]
},
"1.05": {
"vector": [75.22931, 63.93324, 125.81345],
"easing": "easeInElastic"
},
"1.275": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
},
"1.3": {
"vector": [0, 0, 0],
"easing": "easeInOutSine"
},
"1.425": {
"vector": [0, 0, 0]
},
"1.5": {
"vector": [0, 0, 0]
},
"1.8": {
"vector": [18.65272, -19.6093, 27.24873]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.05": {
"vector": [0, 0, 0]
},
"0.15": {
"vector": [0, 0, 2.5]
},
"0.175": {
"vector": [0, 0, 2.5]
},
"0.425": {
"vector": [10.15, 5.58, 14.35],
"easing": "linear"
},
"0.775": {
"vector": [-3.2, -1, 6],
"easing": "easeInSine"
},
"0.85": {
"vector": [-3.3, -0.8, 5.4]
},
"0.9": {
"vector": [-3.3, -1.2, 5.4]
},
"1.0": {
"vector": [-3.3, -1.3, 5.4]
},
"1.05": {
"vector": [-3.3, -1.2, 5.4]
},
"1.275": {
"vector": [0, 0, 2.5],
"easing": "easeInOutSine"
},
"1.3": {
"vector": [0, 0, 2.5],
"easing": "easeInOutSine"
},
"1.425": {
"vector": [0, 0, 0]
},
"1.5": {
"vector": [0, 0, 0]
},
"1.8": {
"vector": [-9.54645, -3.8823, 19.89207]
}
}
},
"pump": { "pump": {
"position": { "position": {
"0.05": { "0.05": {
@ -760,14 +607,6 @@
} }
} }
}, },
"rightarm": {
"rotation": {
"vector": [0, 0, 0]
},
"position": {
"vector": [0, 0, 0]
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -816,11 +655,106 @@
"vector": [0, 0, -1] "vector": [0, 0, -1]
} }
} }
},
"Lefthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.275": {
"vector": [0, 0, 0]
},
"0.475": {
"vector": [-0.98598, -46.74749, 0.78822]
},
"0.575": {
"vector": [44.42991, -59.09751, -13.544]
},
"0.65": {
"vector": [-11.96459, -79.10252, 44.24056]
},
"0.7": {
"vector": [-7.56559, -86.18673, 42.21027]
},
"0.775": {
"vector": [-17.44008, -87.41147, 66.68516]
},
"0.825": {
"vector": [-52.63019, -88.38541, 114.98937]
},
"0.9": {
"vector": [-50.95487, -92.05482, 120.61741]
},
"0.975": {
"vector": [-52.20487, -92.05482, 120.61741]
},
"1.25": {
"vector": [0, 0, 0]
},
"1.3": {
"vector": [0, 0, 0]
},
"1.425": {
"vector": [0, 0, 0]
},
"1.8": {
"vector": [-18.47095, 10.97836, 63.15915]
} }
}, },
"sound_effects": { "position": {
"0.0": { "0.0": {
"effect": "m_870_preparealt" "vector": [0, 0, 0]
},
"0.05": {
"vector": [0, 0, 0]
},
"0.15": {
"vector": [0, 0, 5]
},
"0.275": {
"vector": [0, 0, 2.5]
},
"0.475": {
"vector": [14.93666, 0.07425, 10.02761]
},
"0.575": {
"vector": [6.78683, -4.87488, 3.98777]
},
"0.65": {
"vector": [3.09918, -2.83162, 6.49437]
},
"0.7": {
"vector": [1.58764, -1.76626, 4.85379]
},
"0.775": {
"vector": [-1.12392, -2.26928, 4.11178]
},
"0.825": {
"vector": [-2.79831, -2.8193, 3.65658]
},
"0.9": {
"vector": [-2.93555, -2.32489, 3.58103]
},
"0.975": {
"vector": [-2.93555, -2.32489, 3.58103]
},
"1.125": {
"vector": [1.96807, -0.62855, 7.27052]
},
"1.25": {
"vector": [0, 0, 5]
},
"1.3": {
"vector": [0, 0, 5]
},
"1.425": {
"vector": [0, 0, -2]
},
"1.8": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
}
}
} }
} }
}, },
@ -871,61 +805,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [18.65272, -19.6093, 27.24873]
},
"0.3333": {
"vector": [4.37042, -12.55659, 45.40494]
},
"0.4": {
"vector": [8.63442, -19.05481, 37.69582]
},
"0.4667": {
"vector": [17.5013, -31.66259, 15.84959]
},
"0.5": {
"vector": [17.5013, -31.66259, 15.84959]
},
"0.6667": {
"vector": [18.65272, -19.6093, 27.24873]
}
},
"position": {
"0.0": {
"vector": [-9.54645, -3.8823, 19.89207]
},
"0.1333": {
"vector": [-10.08, -4.83, 19.86]
},
"0.2": {
"vector": [-10.01, -3.57, 18.3]
},
"0.2667": {
"vector": [-9.65, -0.61, 14.13]
},
"0.3": {
"vector": [-9.77, 0.47, 12.35]
},
"0.3333": {
"vector": [-9.88076, 0.75263, 11.56752]
},
"0.4": {
"vector": [-9.63531, 1.18733, 11.34111]
},
"0.4667": {
"vector": [-8.72034, 1.16261, 9.43975]
},
"0.5": {
"vector": [-8.72034, 1.16261, 9.43975]
},
"0.6667": {
"vector": [-9.54645, -3.8823, 19.89207],
"easing": "easeInExpo"
}
}
},
"shell": { "shell": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -1045,6 +924,53 @@
"vector": [0, 0, -1] "vector": [0, 0, -1]
} }
} }
},
"Lefthand": {
"rotation": {
"0.0": {
"vector": [-18.47095, 10.97836, 63.15915]
},
"0.1333": {
"vector": [8.31709, 9.08301, 62.48638]
},
"0.3667": {
"vector": [15.03201, -3.71368, 58.64115]
},
"0.4667": {
"vector": [-2.27818, -4.00125, 55.78607]
},
"0.6": {
"vector": [-39.5688, -11.20975, 53.80968]
},
"0.6667": {
"vector": [-18.47095, 10.97836, 63.15915]
}
},
"position": {
"0.0": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
},
"0.1333": {
"vector": [-11.34414, -5.46371, 18.05052]
},
"0.2": {
"vector": [-10.37992, -4.52519, 16.80127]
},
"0.3": {
"vector": [-8.72277, -1.64075, 10.98061]
},
"0.3667": {
"vector": [-8.38284, -1.12558, 9.55926]
},
"0.4667": {
"vector": [-7.17838, 0.61257, 9.98836]
},
"0.6667": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
}
}
} }
} }
}, },
@ -1095,61 +1021,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [18.65272, -19.6093, 27.24873]
},
"0.3333": {
"vector": [4.37042, -12.55659, 45.40494]
},
"0.4": {
"vector": [8.63442, -19.05481, 37.69582]
},
"0.4667": {
"vector": [17.5013, -31.66259, 15.84959]
},
"0.5": {
"vector": [17.5013, -31.66259, 15.84959]
},
"0.6667": {
"vector": [18.65272, -19.6093, 27.24873]
}
},
"position": {
"0.0": {
"vector": [-9.54645, -3.8823, 19.89207]
},
"0.1333": {
"vector": [-10.08, -4.83, 19.86]
},
"0.2": {
"vector": [-10.01, -3.57, 18.3]
},
"0.2667": {
"vector": [-9.65, -0.61, 14.13]
},
"0.3": {
"vector": [-9.77, 0.47, 12.35]
},
"0.3333": {
"vector": [-9.88076, 0.75263, 11.56752]
},
"0.4": {
"vector": [-9.63531, 1.18733, 11.34111]
},
"0.4667": {
"vector": [-8.72034, 1.16261, 9.43975]
},
"0.5": {
"vector": [-8.72034, 1.16261, 9.43975]
},
"0.6667": {
"vector": [-9.54645, -3.8823, 19.89207],
"easing": "easeInExpo"
}
}
},
"shell": { "shell": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -1269,6 +1140,53 @@
"vector": [0, 0, -1] "vector": [0, 0, -1]
} }
} }
},
"Lefthand": {
"rotation": {
"0.0": {
"vector": [-18.47095, 10.97836, 63.15915]
},
"0.1333": {
"vector": [8.31709, 9.08301, 62.48638]
},
"0.3667": {
"vector": [15.03201, -3.71368, 58.64115]
},
"0.4667": {
"vector": [-2.27818, -4.00125, 55.78607]
},
"0.6": {
"vector": [-39.5688, -11.20975, 53.80968]
},
"0.6667": {
"vector": [-18.47095, 10.97836, 63.15915]
}
},
"position": {
"0.0": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
},
"0.1333": {
"vector": [-11.34414, -5.46371, 18.05052]
},
"0.2": {
"vector": [-10.37992, -4.52519, 16.80127]
},
"0.3": {
"vector": [-8.72277, -1.64075, 10.98061]
},
"0.3667": {
"vector": [-8.38284, -1.12558, 9.55926]
},
"0.4667": {
"vector": [-7.17838, 0.61257, 9.98836]
},
"0.6667": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
}
}
} }
} }
}, },
@ -1474,42 +1392,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [0, 0, 0]
},
"0.275": {
"vector": [0, 0, 0]
},
"0.45": {
"vector": [0, 0, 0]
},
"0.525": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [0, 0, 0]
},
"0.275": {
"vector": [0, 0, 2.5]
},
"0.45": {
"vector": [0, 0, 2.5]
},
"0.525": {
"vector": [0, 0, 0]
}
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -1543,6 +1425,22 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
},
"Lefthand": {
"position": {
"0.2": {
"vector": [0, 0, 0]
},
"0.275": {
"vector": [0, 0, 2.5]
},
"0.45": {
"vector": [0, 0, 2.5]
},
"0.525": {
"vector": [0, 0, 0]
}
}
} }
} }
}, },
@ -1581,48 +1479,6 @@
} }
} }
}, },
"leftarm": {
"rotation": {
"0.0": {
"vector": [18.65272, -19.6093, 27.24873]
},
"0.3": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [-9.54645, -3.8823, 19.89207]
},
"0.3": {
"vector": [0, 0, 0]
}
}
},
"rightarm": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [5.31757, -2.5454, -13.67018]
},
"0.4": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [0.154, -0.5295, -0.23646]
},
"0.4": {
"vector": [0, 0, 0]
}
}
},
"camera": { "camera": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -1641,6 +1497,71 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
} }
},
"Lefthand": {
"rotation": {
"0.0": {
"vector": [-18.47095, 10.97836, 63.15915]
},
"0.05": {
"vector": [-18.47095, 10.97836, 63.15915]
},
"0.2": {
"vector": [-28.75, 4.65, -16.62]
},
"0.3": {
"vector": [0, 0, 0],
"easing": "easeInSine"
}
},
"position": {
"0.0": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
},
"0.05": {
"vector": [-11.72874, -3.65576, 21.26238],
"easing": "easeInSine"
},
"0.2": {
"vector": [0, 0, 6],
"easing": "easeInSine"
},
"0.3": {
"vector": [0, 0, 0],
"easing": "easeInSine"
}
}
},
"Righthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [-5.37185, 5.48187, -20.5349]
},
"0.35": {
"vector": [-5.37185, 5.48187, -20.5349]
},
"0.6": {
"vector": [0, 0, 0]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [0.76953, -0.5, 0]
},
"0.35": {
"vector": [0.76953, -0.5, 0]
},
"0.6": {
"vector": [0, 0, 0]
}
}
} }
} }
} }

View file

@ -214,7 +214,7 @@
}, },
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"vector": [0.91131, 14.09621, -8.80599] "vector": [-0.9113, -14.0962, -8.80599]
}, },
"position": { "position": {
"vector": [2.87519, -0.6965, 0.78255] "vector": [2.87519, -0.6965, 0.78255]
@ -307,26 +307,26 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.05": { "0.05": {
"vector": [-10.13452, 14.19053, -4.87335] "vector": [10.1345, -14.1905, -4.87335]
}, },
"0.2": { "0.2": {
"vector": [-17.36801, 15.96601, -3.18052], "vector": [17.368, -15.966, -3.18052],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"0.35": { "0.35": {
"vector": [-17.36801, 15.96601, -3.18052], "vector": [17.368, -15.966, -3.18052],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.4": { "0.4": {
"vector": [-17.8046, 34.99625, 18.716], "vector": [17.8046, -34.9963, 18.716],
"easing": "linear" "easing": "linear"
}, },
"0.55": { "0.55": {
"vector": [-17.8046, 34.99625, 18.716], "vector": [17.8046, -34.9963, 18.716],
"easing": "linear" "easing": "linear"
}, },
"0.6": { "0.6": {
"vector": [-10.13452, 14.19053, -4.87335], "vector": [10.1345, -14.1905, -4.87335],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.75": { "0.75": {
@ -754,30 +754,30 @@
"2.775": { "2.775": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"2.875": { "2.825": {
"vector": [-10.13452, 14.19053, -4.87335] "vector": [10.1345, -14.1905, -4.87335]
}, },
"2.975": { "2.975": {
"vector": [-17.36801, 15.96601, -3.18052], "vector": [17.368, -15.966, -3.18052],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"3.075": { "3.125": {
"vector": [-17.36801, 15.96601, -3.18052], "vector": [17.368, -15.966, -3.18052],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"3.175": { "3.175": {
"vector": [-17.8046, 34.99625, 18.716], "vector": [17.8046, -34.9963, 18.716],
"easing": "linear" "easing": "linear"
}, },
"3.275": { "3.325": {
"vector": [-17.8046, 34.99625, 18.716], "vector": [17.8046, -34.9963, 18.716],
"easing": "linear" "easing": "linear"
}, },
"3.375": { "3.375": {
"vector": [-10.13452, 14.19053, -4.87335], "vector": [10.1345, -14.1905, -4.87335],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"3.575": { "3.525": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
} }
}, },
@ -819,25 +819,25 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.525": { "0.525": {
"vector": [6.83397, 0.47886, -0.57224] "vector": [-6.834, -0.4789, -0.57224]
}, },
"0.65": { "0.65": {
"vector": [14.03892, 15.21213, 3.24877] "vector": [-14.0389, -15.2121, 3.24877]
}, },
"0.9": { "0.9": {
"vector": [14.03892, 15.21213, 3.24877] "vector": [-14.0389, -15.2121, 3.24877]
}, },
"1.0": { "1.0": {
"vector": [14.03892, 15.21213, 3.24877] "vector": [-14.0389, -15.2121, 3.24877]
}, },
"1.575": { "1.575": {
"vector": [11, 0, 0] "vector": [-11, 0, 0]
}, },
"2.3": { "2.3": {
"vector": [11, 0, 0] "vector": [-11, 0, 0]
}, },
"2.525": { "2.525": {
"vector": [7.51509, -4.83534, 3.16822] "vector": [-7.5151, 4.8353, 3.16822]
}, },
"2.675": { "2.675": {
"vector": [0, 0, 0] "vector": [0, 0, 0]
@ -1263,25 +1263,25 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.525": { "0.525": {
"vector": [6.83397, 0.47886, -0.57224] "vector": [-6.834, -0.4789, -0.57224]
}, },
"0.65": { "0.65": {
"vector": [14.03892, 15.21213, 3.24877] "vector": [-14.0389, -15.2121, 3.24877]
}, },
"0.9": { "0.9": {
"vector": [14.03892, 15.21213, 3.24877] "vector": [-14.0389, -15.2121, 3.24877]
}, },
"1.0": { "1.0": {
"vector": [14.03892, 15.21213, 3.24877] "vector": [-14.0389, -15.2121, 3.24877]
}, },
"1.575": { "1.575": {
"vector": [11, 0, 0] "vector": [-11, 0, 0]
}, },
"2.3": { "2.3": {
"vector": [11, 0, 0] "vector": [-11, 0, 0]
}, },
"2.525": { "2.525": {
"vector": [7.51509, -4.83534, 3.16822] "vector": [-7.5151, 4.8353, 3.16822]
}, },
"2.675": { "2.675": {
"vector": [0, 0, 0] "vector": [0, 0, 0]

View file

@ -451,60 +451,60 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.25": {
"vector": [13.52, 4.12, 4.56] "vector": [-13.52, -4.12, 4.56]
}, },
"0.55": { "0.55": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.65": { "0.65": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.725": { "0.725": {
"vector": [6.49, 1.31, -3.17] "vector": [-6.49, -1.31, -3.17]
}, },
"0.85": { "0.85": {
"vector": [14.3971, -13.18645, 21.98034] "vector": [-14.3971, 13.1865, 21.98034]
}, },
"0.975": { "0.975": {
"vector": [31.98994, -12.01303, 38.17526] "vector": [-31.9899, 12.013, 38.17526]
}, },
"1.1": { "1.1": {
"vector": [25.3971, -13.18645, 21.98034] "vector": [-25.3971, 13.1865, 21.98034]
}, },
"1.65": { "1.65": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"1.75": { "1.75": {
"vector": [18.49455, 1.31194, -3.17008] "vector": [-18.4946, -1.3119, -3.17008]
}, },
"1.875": { "1.875": {
"vector": [18.14075, 1.31194, -3.17008] "vector": [-18.1407, -1.3119, -3.17008]
}, },
"2.05": { "2.05": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.35": { "2.35": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.475": { "2.475": {
"vector": [-0.57057, -33.22774, -15.09332] "vector": [0.5706, 33.2277, -15.09332]
}, },
"2.575": { "2.575": {
"vector": [-11.30566, -43.49647, -41.3946] "vector": [11.3057, 43.4965, -41.3946]
}, },
"2.725": { "2.725": {
"vector": [-11.30566, -43.49647, -41.3946] "vector": [11.3057, 43.4965, -41.3946]
}, },
"2.9": { "2.9": {
"vector": [-11.30566, -43.49647, -41.3946] "vector": [11.3057, 43.4965, -41.3946]
}, },
"3.05": { "3.05": {
"vector": [-4.25481, -14.32135, 14.29472] "vector": [4.2548, 14.3214, 14.29472]
}, },
"3.2": { "3.2": {
"vector": [0, 0, 0], "vector": [0, 0, 0],
@ -953,45 +953,44 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.25": { "0.25": {
"vector": [13.52, 4.12, 4.56] "vector": [-13.52, -4.12, 4.56]
}, },
"0.55": { "0.55": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.65": { "0.65": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.725": { "0.725": {
"vector": [6.49, 1.31, -3.17] "vector": [-6.49, -1.31, -3.17]
}, },
"0.85": { "0.85": {
"vector": [14.3971, -13.18645, 21.98034] "vector": [-14.3971, 13.1865, 21.98034]
}, },
"0.975": { "0.975": {
"vector": [31.98994, -12.01303, 38.17526] "vector": [-31.9899, 12.013, 38.17526]
}, },
"1.1": { "1.1": {
"vector": [25.3971, -13.18645, 21.98034] "vector": [-25.3971, 13.1865, 21.98034]
}, },
"1.65": { "1.65": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"1.75": { "1.75": {
"vector": [18.49455, 1.31194, -3.17008] "vector": [-18.4946, -1.3119, -3.17008]
}, },
"1.875": { "1.875": {
"vector": [18.14075, 1.31194, -3.17008] "vector": [-18.1407, -1.3119, -3.17008]
}, },
"2.05": { "2.05": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-13.4946, -1.3119, -3.17008],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"2.175": { "2.275": {
"vector": [13.49455, 1.31194, -3.17008], "vector": [-12.31119, 14.74341, 8.8138]
"easing": "easeInElastic"
}, },
"2.45": { "2.45": {
"vector": [0, 0, 0], "vector": [0, 0, 0],

View file

@ -320,47 +320,47 @@
"vector": [0, 0, 0] "vector": [0, 0, 0]
}, },
"0.1667": { "0.1667": {
"vector": [7.87861, -24.31858, -19.90709] "vector": [-7.8786, 24.3186, -19.90709]
}, },
"0.2333": { "0.2333": {
"vector": [-9.83746, -16.72825, -17.49751] "vector": [9.8375, 16.7282, -17.49751]
}, },
"0.3333": { "0.3333": {
"vector": [-9.83746, -16.72825, -17.49751] "vector": [9.8375, 16.7282, -17.49751]
}, },
"0.5": { "0.4833": {
"vector": [-5.71303, 40.72967, -4.70082], "vector": [5.713, -40.7297, -4.70082],
"easing": "easeInElastic" "easing": "easeInElastic"
}, },
"0.6333": { "0.6333": {
"vector": [73.97576, -0.75089, 15.72011] "vector": [-73.9758, 0.7509, 15.72011]
}, },
"1.45": { "1.45": {
"vector": [38.29511, -2.03526, -73.55015] "vector": [-38.2951, 2.0353, -73.55015]
}, },
"1.5167": { "1.5167": {
"vector": [-2.1677, -33.75228, -72.39051] "vector": [2.1677, 33.7523, -72.39051]
}, },
"1.9167": { "1.9167": {
"vector": [-8.06718, -30.15725, -76.93122], "vector": [8.0672, 30.1573, -76.93122],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.95": { "1.95": {
"vector": [-7.21864, -27.00018, -79.53013], "vector": [7.2186, 27.0002, -79.53013],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"2.0833": { "2.0833": {
"vector": [-5.27405, -12.48647, -90.38062], "vector": [5.274, 12.4865, -90.38062],
"easing": "easeInSine" "easing": "easeInSine"
}, },
"2.1": { "2.1": {
"vector": [-5.27405, -12.48647, -90.38062] "vector": [5.274, 12.4865, -90.38062]
}, },
"2.3833": { "2.3667": {
"vector": [17.64709, -13.8217, -25.46728] "vector": [-17.6471, 13.8217, -25.46728]
}, },
"2.5": { "2.5": {
"vector": [12.25678, -6.17755, -20.01117], "vector": [-12.2568, 6.1776, -20.01117],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"2.7167": { "2.7167": {
@ -405,7 +405,7 @@
"2.1": { "2.1": {
"vector": [3.72413, 12.68137, -5.5869] "vector": [3.72413, 12.68137, -5.5869]
}, },
"2.3833": { "2.3667": {
"vector": [5.77, 6.2, -0.4] "vector": [5.77, 6.2, -0.4]
}, },
"2.5": { "2.5": {

File diff suppressed because it is too large Load diff

View file

@ -91,7 +91,7 @@
"name": "Lefthand", "name": "Lefthand",
"parent": "stick", "parent": "stick",
"pivot": [7.5, -2.4, 6.2], "pivot": [7.5, -2.4, 6.2],
"rotation": [66.45705, 40.58686, -6.47823], "rotation": [113.54295, -40.58686, 173.52177],
"cubes": [ "cubes": [
{ {
"origin": [5.5, -2.4, 4.2], "origin": [5.5, -2.4, 4.2],
@ -148,11 +148,11 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-1.7, -2, 14.7], "pivot": [-2.45, -2, 15.45],
"rotation": [80, -10, 0], "rotation": [100, 10, -180],
"cubes": [ "cubes": [
{ {
"origin": [-3.7, -2, 12.7], "origin": [-4.45, -2, 13.45],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [2.84375, 40.65625], "uv_size": [-2.625, 0.75]}, "north": {"uv": [2.84375, 40.65625], "uv_size": [-2.625, 0.75]},

View file

@ -7866,12 +7866,12 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-3.50399, -4.80334, 12.29138], "pivot": [-3.9878, -4.75077, 12.17668],
"rotation": [72.76553, -13.26214, 6.20185], "rotation": [107.23447, 13.26214, -173.79815],
"cubes": [ "cubes": [
{ {
"origin": [-4.50399, -3.80334, 10.29138], "origin": [-5.9878, -3.75077, 10.17668],
"size": [3, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [7, 12], "uv_size": [3, 12]}, "north": {"uv": [7, 12], "uv_size": [3, 12]},
"east": {"uv": [8, 0], "uv_size": [4, 12]}, "east": {"uv": [8, 0], "uv_size": [4, 12]},
@ -7886,11 +7886,11 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "0", "parent": "0",
"pivot": [5.9, -4.6, 1.6], "pivot": [6.33731, -4.50141, 1.37855],
"rotation": [63.02145, 26.28878, -12.70535], "rotation": [116.97855, -26.28878, 167.29465],
"cubes": [ "cubes": [
{ {
"origin": [4.3, -4.6, -0.15], "origin": [4.73731, -4.50141, -0.37145],
"size": [3, 12, 4], "size": [3, 12, 4],
"uv": { "uv": {
"north": {"uv": [12, 0], "uv_size": [3, 12]}, "north": {"uv": [12, 0], "uv_size": [3, 12]},

View file

@ -52,27 +52,25 @@
{ {
"name": "lh", "name": "lh",
"parent": "anim", "parent": "anim",
"pivot": [3.54634, -1.54023, 2.7537], "pivot": [1.02147, -0.55985, 0.2537],
"rotation": [0, 0, -60] "rotation": [0, 0, -60]
}, },
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "lh", "parent": "lh",
"pivot": [3.54634, -1.54023, 2.7537], "pivot": [2.16391, -2.62838, 9.74825],
"rotation": [61.24687, 9.53274, -3.03513], "rotation": [97.40532, -1.17018, 175.48224],
"cubes": [ "cubes": [
{ {
"origin": [1.58174, -11.94755, 1.52726], "origin": [0.16391, -2.62838, 7.74825],
"size": [4, 16, 4], "size": [4, 12, 4],
"pivot": [5.73174, -1.44755, 1.87726],
"rotation": [7.47178, -0.65182, 4.95744],
"uv": { "uv": {
"north": {"uv": [8, 12], "uv_size": [3, 14]}, "north": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"east": {"uv": [0, 0], "uv_size": [4, 14]}, "east": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"south": {"uv": [11, 12], "uv_size": [3, 14]}, "south": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"west": {"uv": [4, 0], "uv_size": [4, 14]}, "west": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"up": {"uv": [14, 12], "uv_size": [3, 4]}, "up": {"uv": [0, 0], "uv_size": [2.77246, 3.44727]},
"down": {"uv": [16, 4], "uv_size": [3, -4]} "down": {"uv": [0, 0], "uv_size": [2.77246, 3.44727]}
} }
} }
] ]
@ -105,10 +103,10 @@
{ {
"name": "deng", "name": "deng",
"parent": "r", "parent": "r",
"pivot": [0.29877, 1.76423, -0.08826], "pivot": [-0.86209, 3.86869, 1.02895],
"cubes": [ "cubes": [
{ {
"origin": [-0.94763, 4.12965, 1.02714], "origin": [-0.94763, 4.12965, 1.01542],
"size": [0.17108, 0.17108, 0.02707], "size": [0.17108, 0.17108, 0.02707],
"uv": { "uv": {
"north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]}, "north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]},
@ -120,7 +118,7 @@
} }
}, },
{ {
"origin": [-0.94763, 3.78315, 1.02714], "origin": [-0.94763, 3.78315, 1.01542],
"size": [0.17108, 0.17108, 0.02707], "size": [0.17108, 0.17108, 0.02707],
"uv": { "uv": {
"north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]}, "north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]},
@ -132,7 +130,7 @@
} }
}, },
{ {
"origin": [-0.94763, 3.43665, 1.02714], "origin": [-0.94763, 3.43665, 1.01542],
"size": [0.17108, 0.17108, 0.02707], "size": [0.17108, 0.17108, 0.02707],
"uv": { "uv": {
"north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]}, "north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]},
@ -3576,8 +3574,10 @@
"rotation": [0, 0, -5], "rotation": [0, 0, -5],
"cubes": [ "cubes": [
{ {
"origin": [-0.20964, 2.18711, 18.94763], "origin": [-0.51901, 2.18711, 16.64763],
"size": [0.36493, 0.62821, 3.69133], "size": [0.36493, 0.62821, 3.69133],
"pivot": [-0.02717, 2.50121, 19.4433],
"rotation": [0, -144, 0],
"uv": { "uv": {
"north": {"uv": [9.125, 59.25], "uv_size": [3.375, 3]}, "north": {"uv": [9.125, 59.25], "uv_size": [3.375, 3]},
"east": {"uv": [9.125, 59.25], "uv_size": [3.375, 3]}, "east": {"uv": [9.125, 59.25], "uv_size": [3.375, 3]},
@ -3650,19 +3650,25 @@
"up": {"uv": [6.5, 63], "uv_size": [-5.375, -3.625]}, "up": {"uv": [6.5, 63], "uv_size": [-5.375, -3.625]},
"down": {"uv": [6.5, 63], "uv_size": [-5.375, -3.625]} "down": {"uv": [6.5, 63], "uv_size": [-5.375, -3.625]}
} }
}
]
}, },
{ {
"origin": [-0.74565, -8.44761, 20.46958], "name": "Righthand",
"parent": "bone2",
"pivot": [2.74382, -8.44436, 20.94696],
"rotation": [9.52074, 38.19258, 3.06255],
"cubes": [
{
"origin": [0.74382, -8.44436, 18.94696],
"size": [4, 12, 4], "size": [4, 12, 4],
"pivot": [1.42935, -2.44761, 21.16958],
"rotation": [11.92695, 1.21261, -6.89469],
"uv": { "uv": {
"north": {"uv": [0, 14], "uv_size": [3, 12]}, "north": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"east": {"uv": [8, 0], "uv_size": [4, 12]}, "east": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"south": {"uv": [3, 14], "uv_size": [3, 12]}, "south": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"west": {"uv": [12, 0], "uv_size": [4, 12]}, "west": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"up": {"uv": [16, 4], "uv_size": [3, 4]}, "up": {"uv": [0, 23.15625], "uv_size": [2.625, -0.75]},
"down": {"uv": [16, 12], "uv_size": [3, -4]} "down": {"uv": [0, 23.15625], "uv_size": [2.625, -0.75]}
} }
} }
] ]

View file

@ -11866,11 +11866,11 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "magazine", "parent": "magazine",
"pivot": [5.4, -6.5, -0.8], "pivot": [5.84168, -6.3475, -0.97793],
"rotation": [55.50959, 20.84665, -19.04797], "rotation": [124.49041, -20.84665, 160.95203],
"cubes": [ "cubes": [
{ {
"origin": [3.4, -6.5, -2.8], "origin": [3.84168, -6.3475, -2.97793],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [51.09277, 62.58789], "uv_size": [-2.11621, -1.50977]}, "north": {"uv": [51.09277, 62.58789], "uv_size": [-2.11621, -1.50977]},
@ -13103,7 +13103,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-2.8, -5.1, 11.4], "pivot": [-2.8, -5.1, 11.4],
"rotation": [72.22421, -10.59522, 2.97361], "rotation": [107.77579, 10.59522, -177.02639],
"cubes": [ "cubes": [
{ {
"origin": [-4.8, -5.1, 9.4], "origin": [-4.8, -5.1, 9.4],

View file

@ -48,11 +48,11 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "roll", "parent": "roll",
"pivot": [2.6, -5.7, 9.8], "pivot": [2.6976, -5.69887, 9.77824],
"rotation": [66.65883, 15.32798, -1.88033], "rotation": [113.29762, -12.57035, 179.33701],
"cubes": [ "cubes": [
{ {
"origin": [0.8, -5.7, 7.6], "origin": [0.6476, -5.69887, 7.82824],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 36], "uv_size": [1, 1]}, "north": {"uv": [0, 36], "uv_size": [1, 1]},
@ -87,11 +87,11 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-2.2, -4.5, 11], "pivot": [-2.78589, -3.86581, 11.33096],
"rotation": [74.89566, -9.14542, 2.25271], "rotation": [105.10434, 9.14542, -177.74729],
"cubes": [ "cubes": [
{ {
"origin": [-4.5, -4.5, 9.7], "origin": [-4.83589, -3.86581, 9.28096],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 36], "uv_size": [1, 1]}, "north": {"uv": [0, 36], "uv_size": [1, 1]},

View file

@ -48,11 +48,11 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "roll", "parent": "roll",
"pivot": [2.6, -5.7, 9.8], "pivot": [2.6976, -5.69887, 9.77824],
"rotation": [66.65883, 15.32798, -1.88033], "rotation": [113.29762, -12.57035, 179.33701],
"cubes": [ "cubes": [
{ {
"origin": [0.8, -5.7, 7.6], "origin": [0.6476, -5.69887, 7.82824],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 36], "uv_size": [1, 1]}, "north": {"uv": [0, 36], "uv_size": [1, 1]},
@ -87,11 +87,11 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-2.2, -4.5, 11], "pivot": [-2.78589, -3.86581, 11.33096],
"rotation": [74.89566, -9.14542, 2.25271], "rotation": [105.10434, 9.14542, -177.74729],
"cubes": [ "cubes": [
{ {
"origin": [-4.5, -4.5, 9.7], "origin": [-4.83589, -3.86581, 9.28096],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 36], "uv_size": [1, 1]}, "north": {"uv": [0, 36], "uv_size": [1, 1]},
@ -1419,7 +1419,7 @@
"name": "kuaimanji", "name": "kuaimanji",
"parent": "huatao", "parent": "huatao",
"pivot": [0.46028, 2.46294, 3.30764], "pivot": [0.46028, 2.46294, 3.30764],
"rotation": [-22.5, 0, 0], "rotation": [44.5, 0, 0],
"cubes": [ "cubes": [
{ {
"origin": [0.29313, 2.11445, 3.16176], "origin": [0.29313, 2.11445, 3.16176],

View file

@ -6,7 +6,7 @@
"identifier": "geometry.hk416", "identifier": "geometry.hk416",
"texture_width": 128, "texture_width": 128,
"texture_height": 128, "texture_height": 128,
"visible_bounds_width": 18, "visible_bounds_width": 11,
"visible_bounds_height": 6, "visible_bounds_height": 6,
"visible_bounds_offset": [0, 0, 0] "visible_bounds_offset": [0, 0, 0]
}, },
@ -39,7 +39,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-2.7, -6.7, 10.6], "pivot": [-2.7, -6.7, 10.6],
"rotation": [70.17995, -12.39135, -1.6575], "rotation": [109.82005, 12.39135, 178.3425],
"cubes": [ "cubes": [
{ {
"origin": [-4.7, -6.7, 8.6], "origin": [-4.7, -6.7, 8.6],
@ -8954,12 +8954,12 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "magazine", "parent": "magazine",
"pivot": [5.2, -4.7, 0], "pivot": [5.56456, -4.97884, -0.31913],
"rotation": [65.81754, 23.7695, -7.98205], "rotation": [123.91904, -8.99551, 153.59632],
"cubes": [ "cubes": [
{ {
"origin": [3.2, -8.7, -2], "origin": [3.56456, -4.97884, -2.31913],
"size": [4, 16, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 92], "uv_size": [4, 12]}, "north": {"uv": [0, 92], "uv_size": [4, 12]},
"east": {"uv": [0, 92], "uv_size": [4, 12]}, "east": {"uv": [0, 92], "uv_size": [4, 12]},

View file

@ -39,7 +39,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-4.2, -5.8, 19.4], "pivot": [-4.2, -5.8, 19.4],
"rotation": [61.32528, -17.33915, 4.99866], "rotation": [118.67472, 17.33915, -175.00134],
"cubes": [ "cubes": [
{ {
"origin": [-6.2, -5.8, 17.4], "origin": [-6.2, -5.8, 17.4],
@ -58,11 +58,11 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "0", "parent": "0",
"pivot": [2.6, -7.3, 5.6], "pivot": [3.26122, -6.96314, 5.70867],
"rotation": [52.80418, -8.33077, -26.99661], "rotation": [127.19582, 8.33077, 153.00339],
"cubes": [ "cubes": [
{ {
"origin": [0.6, -7.3, 3.6], "origin": [1.26122, -6.96314, 3.70867],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [5.17969, 128], "uv_size": [-5.17969, -5.57812]}, "north": {"uv": [5.17969, 128], "uv_size": [-5.17969, -5.57812]},

View file

@ -7,8 +7,8 @@
"texture_width": 64, "texture_width": 64,
"texture_height": 64, "texture_height": 64,
"visible_bounds_width": 4, "visible_bounds_width": 4,
"visible_bounds_height": 3, "visible_bounds_height": 6,
"visible_bounds_offset": [0, 0.5, 0] "visible_bounds_offset": [0, 0, 0]
}, },
"bones": [ "bones": [
{ {
@ -5034,12 +5034,12 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "gun", "parent": "gun",
"pivot": [3.2, -5.8, 0.3], "pivot": [3.50236, -5.65119, 1.01805],
"rotation": [55.2967, 9.58766, -16.41323], "rotation": [98.98829, -29.92401, -133.94309],
"cubes": [ "cubes": [
{ {
"origin": [1.9, -5.8, -1.4], "origin": [1.20236, -5.65119, -0.93195],
"size": [3.5, 12, 3.5], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [63, 63], "uv_size": [1, 1]}, "north": {"uv": [63, 63], "uv_size": [1, 1]},
"east": {"uv": [63, 63], "uv_size": [1, 1]}, "east": {"uv": [63, 63], "uv_size": [1, 1]},
@ -5054,12 +5054,12 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-3.5, -5.2, 15.3], "pivot": [-3.5, -4.45, 15.3],
"rotation": [71.43885, -15.99996, -3.28813], "rotation": [108.56115, 15.99996, 176.71187],
"cubes": [ "cubes": [
{ {
"origin": [-5.3, -5.2, 14.5], "origin": [-5.55, -4.45, 13.25],
"size": [3.5, 12, 3.5], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [63, 63], "uv_size": [1, 1]}, "north": {"uv": [63, 63], "uv_size": [1, 1]},
"east": {"uv": [63, 63], "uv_size": [1, 1]}, "east": {"uv": [63, 63], "uv_size": [1, 1]},

View file

@ -3046,19 +3046,19 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-2.2, -4.5, 11], "pivot": [-2.78589, -3.86581, 11.33096],
"rotation": [74.89566, -9.14542, 2.25271], "rotation": [105.10434, 9.14542, -177.74729],
"cubes": [ "cubes": [
{ {
"origin": [-4, -4.5, 10.2], "origin": [-4.83589, -3.86581, 9.28096],
"size": [3.5, 12, 3.5], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [63, 63], "uv_size": [1, 1]}, "north": {"uv": [0, 36], "uv_size": [1, 1]},
"east": {"uv": [63, 63], "uv_size": [1, 1]}, "east": {"uv": [0, 36], "uv_size": [1, 1]},
"south": {"uv": [63, 63], "uv_size": [1, 1]}, "south": {"uv": [0, 36], "uv_size": [1, 1]},
"west": {"uv": [63, 63], "uv_size": [1, 1]}, "west": {"uv": [0, 36], "uv_size": [1, 1]},
"up": {"uv": [64, 64], "uv_size": [-1, -1]}, "up": {"uv": [1, 37], "uv_size": [-1, -1]},
"down": {"uv": [64, 64], "uv_size": [-1, -1]} "down": {"uv": [1, 37], "uv_size": [-1, -1]}
} }
} }
] ]
@ -3066,19 +3066,19 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "roll", "parent": "roll",
"pivot": [2.6, -5.7, 9.8], "pivot": [2.6976, -5.69887, 9.77824],
"rotation": [66.65883, 15.32798, -1.88033], "rotation": [113.29762, -12.57035, 179.33701],
"cubes": [ "cubes": [
{ {
"origin": [1.3, -5.7, 8.1], "origin": [0.6476, -5.69887, 7.82824],
"size": [3.5, 12, 3.5], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [63, 63], "uv_size": [1, 1]}, "north": {"uv": [0, 36], "uv_size": [1, 1]},
"east": {"uv": [63, 63], "uv_size": [1, 1]}, "east": {"uv": [0, 36], "uv_size": [1, 1]},
"south": {"uv": [63, 63], "uv_size": [1, 1]}, "south": {"uv": [0, 36], "uv_size": [1, 1]},
"west": {"uv": [63, 63], "uv_size": [1, 1]}, "west": {"uv": [0, 36], "uv_size": [1, 1]},
"up": {"uv": [64, 64], "uv_size": [-1, -1]}, "up": {"uv": [1, 37], "uv_size": [-1, -1]},
"down": {"uv": [64, 64], "uv_size": [-1, -1]} "down": {"uv": [1, 37], "uv_size": [-1, -1]}
} }
} }
] ]

View file

@ -7268,7 +7268,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-2.8, -2.6, 10.9], "pivot": [-2.8, -2.6, 10.9],
"rotation": [79.17995, -12.39135, -1.6575], "rotation": [100.82005, 12.39135, 178.3425],
"cubes": [ "cubes": [
{ {
"origin": [-4.8, -2.6, 8.9], "origin": [-4.8, -2.6, 8.9],
@ -7937,7 +7937,7 @@
"name": "Lefthand", "name": "Lefthand",
"parent": "m60_mag", "parent": "m60_mag",
"pivot": [5.8742, -5.34057, -1.62584], "pivot": [5.8742, -5.34057, -1.62584],
"rotation": [49.72532, 25.18478, -12.63318], "rotation": [130.27468, -25.18478, 167.36682],
"cubes": [ "cubes": [
{ {
"origin": [3.8742, -5.34057, -3.62584], "origin": [3.8742, -5.34057, -3.62584],

View file

@ -58,7 +58,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-4.6, -2.7, 20], "pivot": [-4.6, -2.7, 20],
"rotation": [76.27852, -18.49512, 4.42911], "rotation": [103.72148, 18.49512, -175.57089],
"cubes": [ "cubes": [
{ {
"origin": [-6.6, -2.7, 18], "origin": [-6.6, -2.7, 18],
@ -78,7 +78,7 @@
"name": "Lefthand", "name": "Lefthand",
"parent": "gun", "parent": "gun",
"pivot": [3, -5.5, 8.2], "pivot": [3, -5.5, 8.2],
"rotation": [66.92679, 12.45515, -5.24927], "rotation": [113.07321, -12.45515, 174.75073],
"cubes": [ "cubes": [
{ {
"origin": [1, -5.5, 6.2], "origin": [1, -5.5, 6.2],

View file

@ -5455,43 +5455,41 @@
] ]
}, },
{ {
"name": "rightarm", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-4.95251, -6.20739, 14.0745], "pivot": [-4.22344, -6.07734, 14.06797],
"rotation": [-120.73962, -20.81182, 8.12503], "rotation": [117.43088, 19.3387, -178.95259],
"cubes": [ "cubes": [
{ {
"origin": [-6.55251, -18.20739, 12.0745], "origin": [-6.22344, -6.07734, 12.06797],
"size": [4, 12, 4], "size": [4, 12, 4],
"pivot": [-4.55251, -6.20739, 14.0745],
"rotation": [0, 8, 0],
"uv": { "uv": {
"north": {"uv": [4, 60], "uv_size": [-4, 4]}, "north": {"uv": [0, 60], "uv_size": [4, 4]},
"east": {"uv": [4, 60], "uv_size": [-4, 4]}, "east": {"uv": [0, 60], "uv_size": [4, 4]},
"south": {"uv": [4, 60], "uv_size": [-4, 4]}, "south": {"uv": [0, 60], "uv_size": [4, 4]},
"west": {"uv": [4, 60], "uv_size": [-4, 4]}, "west": {"uv": [0, 60], "uv_size": [4, 4]},
"up": {"uv": [0, 64], "uv_size": [4, -4]}, "up": {"uv": [4, 64], "uv_size": [-4, -4]},
"down": {"uv": [0, 64], "uv_size": [4, -4]} "down": {"uv": [4, 64], "uv_size": [-4, -4]}
} }
} }
] ]
}, },
{ {
"name": "leftarm", "name": "Lefthand",
"parent": "gun", "parent": "gun",
"pivot": [3.66208, -9.25915, -4.4376], "pivot": [2.98163, -8.10085, -4.00511],
"rotation": [-138.45572, 6.39811, -18.75869], "rotation": [127.19582, 8.33077, 153.00339],
"cubes": [ "cubes": [
{ {
"origin": [1.66208, -21.25915, -6.4376], "origin": [0.98163, -8.10085, -6.00511],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [4, 60], "uv_size": [-4, 4]}, "north": {"uv": [4, 64], "uv_size": [-4, -4]},
"east": {"uv": [4, 60], "uv_size": [-4, 4]}, "east": {"uv": [4, 64], "uv_size": [-4, -4]},
"south": {"uv": [4, 60], "uv_size": [-4, 4]}, "south": {"uv": [4, 64], "uv_size": [-4, -4]},
"west": {"uv": [4, 60], "uv_size": [-4, 4]}, "west": {"uv": [4, 64], "uv_size": [-4, -4]},
"up": {"uv": [0, 64], "uv_size": [4, -4]}, "up": {"uv": [0, 60], "uv_size": [4, 4]},
"down": {"uv": [0, 64], "uv_size": [4, -4]} "down": {"uv": [0, 60], "uv_size": [4, 4]}
} }
} }
] ]

View file

@ -15700,12 +15700,12 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "magazine", "parent": "magazine",
"pivot": [2.3, -6.6, -1.18047], "pivot": [3.8, -6.6, -1.18047],
"rotation": [47.12788, 10.04762, -11.96812], "rotation": [132.87212, -10.04762, 168.03188],
"cubes": [ "cubes": [
{ {
"origin": [1.3, -6.9, -2.18047], "origin": [1.8, -6.6, -3.18047],
"size": [3, 12, 3], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 12], "uv_size": [3, 12]}, "north": {"uv": [0, 12], "uv_size": [3, 12]},
"east": {"uv": [12, 0], "uv_size": [3, 12]}, "east": {"uv": [12, 0], "uv_size": [3, 12]},
@ -16367,12 +16367,12 @@
{ {
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-4.1, -4.5, 10.85], "pivot": [-3.75, -4.5, 11.35],
"rotation": [72.85133, -20.70481, 9.00717], "rotation": [106.38323, 12.08573, -173.69651],
"cubes": [ "cubes": [
{ {
"origin": [-6.4, -4.8, 9.85], "origin": [-5.8, -4.5, 9.35],
"size": [3, 12, 3], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 0], "uv_size": [3, 12]}, "north": {"uv": [0, 0], "uv_size": [3, 12]},
"east": {"uv": [3, 0], "uv_size": [3, 12]}, "east": {"uv": [3, 0], "uv_size": [3, 12]},

View file

@ -3476,8 +3476,8 @@
} }
}, },
{ {
"origin": [-0.25564, 7.19018, 2.40216], "origin": [-0.25564, 6.69018, 2.40216],
"size": [0.71128, 3.15, 0.75313], "size": [0.71128, 4.15, 0.75313],
"pivot": [0, 8.76518, 2.77873], "pivot": [0, 8.76518, 2.77873],
"rotation": [0, 0, 90], "rotation": [0, 0, 90],
"uv": { "uv": {
@ -3490,8 +3490,8 @@
} }
}, },
{ {
"origin": [0.45564, 7.19018, 2.40216], "origin": [0.45564, 6.69018, 2.40216],
"size": [0.1, 0.6, 0.75313], "size": [0.1, 1.1, 0.75313],
"pivot": [0, 8.76518, 2.77873], "pivot": [0, 8.76518, 2.77873],
"rotation": [0, 0, 90], "rotation": [0, 0, 90],
"uv": { "uv": {
@ -3532,8 +3532,8 @@
} }
}, },
{ {
"origin": [-0.55564, 7.19018, 2.40216], "origin": [-0.55564, 6.69018, 2.40216],
"size": [0.1, 0.6, 0.75313], "size": [0.1, 1.1, 0.75313],
"pivot": [0, 8.76518, 2.77873], "pivot": [0, 8.76518, 2.77873],
"rotation": [0, 0, -90], "rotation": [0, 0, -90],
"uv": { "uv": {
@ -6549,12 +6549,12 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "0", "parent": "0",
"pivot": [5.08122, 7.47568, 11.26082], "pivot": [5.08122, 7.97568, 11.26082],
"rotation": [93.23579, 26.55939, 19.67969], "rotation": [116.59597, -2.89401, 108.23166],
"cubes": [ "cubes": [
{ {
"origin": [3.08122, 7.47568, 9.26082], "origin": [3.08122, 7.97568, 9.26082],
"size": [4, 12, 3], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [1.25, 32], "uv_size": [-1.25, -2]}, "north": {"uv": [1.25, 32], "uv_size": [-1.25, -2]},
"east": {"uv": [1.25, 32], "uv_size": [-1.25, -2]}, "east": {"uv": [1.25, 32], "uv_size": [-1.25, -2]},
@ -6570,7 +6570,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-1.79027, 10.60727, 29.37886], "pivot": [-1.79027, 10.60727, 29.37886],
"rotation": [109.35832, -7.15102, 2.26708], "rotation": [70.64168, 7.15102, -177.73292],
"cubes": [ "cubes": [
{ {
"origin": [-3.79027, 10.60727, 27.37886], "origin": [-3.79027, 10.60727, 27.37886],

View file

@ -47,11 +47,11 @@
{ {
"name": "Lefthand", "name": "Lefthand",
"parent": "roll", "parent": "roll",
"pivot": [4.10118, -4.73279, 1.10701], "pivot": [4.81198, -4.57475, 0.92732],
"rotation": [59.69513, 13.86164, -12.5355], "rotation": [120.30487, -13.86164, 167.4645],
"cubes": [ "cubes": [
{ {
"origin": [2.08282, -4.69476, -1.17189], "origin": [2.79362, -4.53672, -1.35157],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [63, 0], "uv_size": [1, 1]}, "north": {"uv": [63, 0], "uv_size": [1, 1]},
@ -73,7 +73,7 @@
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",
"pivot": [-2.65902, -4.55507, 10.06908], "pivot": [-2.65902, -4.55507, 10.06908],
"rotation": [75.68232, -11.38297, -2.40375], "rotation": [104.31768, 11.38297, 177.59625],
"cubes": [ "cubes": [
{ {
"origin": [-4.70902, -4.55507, 8.01908], "origin": [-4.70902, -4.55507, 8.01908],

View file

@ -62,11 +62,11 @@
"name": "Lefthand", "name": "Lefthand",
"parent": "0", "parent": "0",
"pivot": [3, -7.5, 10.5], "pivot": [3, -7.5, 10.5],
"rotation": [59.74687, 9.53274, -3.03513], "rotation": [120.25313, -9.53274, 176.96487],
"cubes": [ "cubes": [
{ {
"origin": [1.25, -7.5, 9.5], "origin": [1, -7.5, 8.5],
"size": [2.25, 12, 3], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [3, 12], "uv_size": [2.25, 12]}, "north": {"uv": [3, 12], "uv_size": [2.25, 12]},
"east": {"uv": [6, 0], "uv_size": [3, 12]}, "east": {"uv": [6, 0], "uv_size": [3, 12]},
@ -82,11 +82,11 @@
"name": "Righthand", "name": "Righthand",
"parent": "0", "parent": "0",
"pivot": [-3.5, -4.5, 12], "pivot": [-3.5, -4.5, 12],
"rotation": [74.57362, -14.63639, 3.31914], "rotation": [105.42638, 14.63639, -176.68086],
"cubes": [ "cubes": [
{ {
"origin": [-3.75, -4.5, 11], "origin": [-5.5, -4.5, 10],
"size": [2.25, 12, 3], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [0, 12], "uv_size": [2.25, 12]}, "north": {"uv": [0, 12], "uv_size": [2.25, 12]},
"east": {"uv": [0, 0], "uv_size": [3, 12]}, "east": {"uv": [0, 0], "uv_size": [3, 12]},

View file

@ -8,9 +8,9 @@
"display": { "display": {
"firstperson_righthand": { "firstperson_righthand": {
"translation": [ "translation": [
-2,
-4.75, -4.75,
-9.25 -2.75,
-4.5
], ],
"scale": [ "scale": [
2, 2,

View file

@ -6,35 +6,11 @@
128 128
], ],
"display": { "display": {
"thirdperson_righthand": {
"translation": [
0,
0.5,
0.75
],
"scale": [
0.55,
0.55,
0.55
]
},
"thirdperson_lefthand": {
"translation": [
0,
0.5,
0.75
],
"scale": [
0.55,
0.55,
0.55
]
},
"firstperson_righthand": { "firstperson_righthand": {
"translation": [ "translation": [
4, 4.25,
-15.5, -13.5,
-31.75 -22
], ],
"scale": [ "scale": [
4, 4,
@ -44,61 +20,15 @@
}, },
"firstperson_lefthand": { "firstperson_lefthand": {
"translation": [ "translation": [
-1, -3.5,
3, 2.75,
2.5 -4
], ],
"scale": [ "scale": [
0, 0.02,
0, 0,
0 0
] ]
},
"ground": {
"translation": [
0,
3,
0
],
"scale": [
0.55,
0.55,
0.55
]
},
"gui": {
"rotation": [
30,
-145,
0
],
"translation": [
-0.25,
-2.5,
0
],
"scale": [
3,
3,
3
]
},
"fixed": {
"rotation": [
0,
90,
0
],
"translation": [
0,
1,
-2
],
"scale": [
1.1,
1.1,
1.1
]
} }
} }
} }