添加大部分武器的手臂

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));
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
holo.setHidden(!(gun.getPosX() > 1.8));
double fp = player.getPersistentData().getDouble("fire_pos");
double fr = player.getPersistentData().getDouble("fire_rot");
@ -77,20 +75,6 @@ public class AK47ItemModel extends GeoModel<AK47Item> {
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");
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 zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(3.48f * (float) p);
gun.setPosY(-0.92f * (float) p - (float) (0.2f * zp));
gun.setPosX(2.105f * (float) p);
gun.setPosY(0.17f * (float) p - (float) (0.2f * zp));
gun.setPosZ(0.1f * (float) p + (float) (0.3f * 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));
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");
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.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");
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 deng2 = getAnimationProcessor().getBone("deng2");
CoreGeoBone deng3 = getAnimationProcessor().getBone("deng3");
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone lh = getAnimationProcessor().getBone("lh");
CoreGeoBone r = getAnimationProcessor().getBone("r");
Player player = Minecraft.getInstance().player;
@ -52,9 +52,6 @@ public class BocekItemModel extends GeoModel<BocekItem> {
ItemStack stack = player.getMainHandItem();
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 bp = player.getPersistentData().getDouble("bowpos");
double hp = player.getPersistentData().getDouble("handpos");
@ -80,19 +77,20 @@ public class BocekItemModel extends GeoModel<BocekItem> {
deng2.setPosZ(0.05f * (float) bp);
deng3.setRotX(-1.6f * (float) bp);
deng3.setPosZ(0.05f * (float) bp);
deng.setHidden(!(arrow.getPosZ() > 8.5));
deng.setScaleZ(1f + (0.07f * (float) bp));
double p = player.getPersistentData().getDouble("zoom_pos");
double zp = player.getPersistentData().getDouble("zoom_pos_z");
lh.setRotX(0.2f * (float) p);
shen_pos.setPosX(-3.4f * (float) p);
shen_pos.setPosY(6.76f * (float) p - (float) (0.2f * zp));
shen_pos.setPosZ(6.4f * (float) p + (float) (0.3f * zp));
r.setScaleZ(1f - (0.31f * (float) p));
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 fr = player.getPersistentData().getDouble("fire_rot");

View file

@ -42,13 +42,11 @@ public class DevotionItemModel extends GeoModel<Devotion> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
double p = 0;
p = player.getPersistentData().getDouble("zoom_pos");
double p = player.getPersistentData().getDouble("zoom_pos");
double zp = 0;
zp = player.getPersistentData().getDouble("zoom_pos_z");
double 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));
@ -67,15 +65,16 @@ public class DevotionItemModel extends GeoModel<Devotion> {
bolt.setPosZ(-2f * (float) bp);
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
if (gun.getPosX() > 1.2) {
holo.setHidden(false);
number.setHidden(false);
number.setScaleX(1);
number.setScaleY(1);
} else {
holo.setHidden(true);
number.setHidden(true);
number.setScaleX(0);
number.setScaleY(0);
}
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
double fp = player.getPersistentData().getDouble("fire_pos");
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));
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");

View file

@ -75,9 +75,13 @@ public class Glock17ItemModel extends GeoModel<Glock17Item> {
if (stack.getOrCreateTag().getBoolean("HoldOpen")) {
slide.setPosZ(1.5f);
bullet.setHidden(true);
bullet.setScaleX(0);
bullet.setScaleY(0);
bullet.setScaleZ(0);
} else {
bullet.setHidden(false);
bullet.setScaleX(1);
bullet.setScaleY(1);
bullet.setScaleZ(1);
}
CoreGeoBone root = getAnimationProcessor().getBone("root");
@ -88,17 +92,6 @@ public class Glock17ItemModel extends GeoModel<Glock17Item> {
double y = player.getPersistentData().getDouble("y");
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.setPosY((float) y + PosY);

View file

@ -83,9 +83,13 @@ public class Glock18ItemModel extends GeoModel<Glock18Item> {
if (stack.getOrCreateTag().getBoolean("HoldOpen")) {
slide.setPosZ(1.5f);
bullet.setHidden(true);
bullet.setScaleX(0);
bullet.setScaleY(0);
bullet.setScaleZ(0);
} else {
bullet.setHidden(false);
bullet.setScaleX(1);
bullet.setScaleY(1);
bullet.setScaleZ(1);
}
CoreGeoBone root = getAnimationProcessor().getBone("root");
@ -96,17 +100,6 @@ public class Glock18ItemModel extends GeoModel<Glock18Item> {
double y = player.getPersistentData().getDouble("y");
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.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) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone scope = getAnimationProcessor().getBone("eotech");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
Player player = Minecraft.getInstance().player;
if (player == null) return;
ItemStack stack = player.getMainHandItem();
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 zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(3.28f * (float) p);
gun.setPosY(1.04f * (float) p - (float) (0.2f * zp));
gun.setPosZ(6f * (float) p + (float) (0.3f * zp));
gun.setPosX(3.34f * (float) p);
gun.setPosY(0.54f * (float) p - (float) (0.2f * zp));
gun.setPosZ(2.5f * (float) p + (float) (0.3f * 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 fr = player.getPersistentData().getDouble("fire_rot");
if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming) {
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.setRotZ(0f);
} else {

View file

@ -33,7 +33,6 @@ public class K98ItemModel extends GeoModel<K98Item> {
public void setCustomAnimations(K98Item animatable, long instanceId, AnimationState animationState) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
CoreGeoBone clip = getAnimationProcessor().getBone("mag");
Player player = Minecraft.getInstance().player;
@ -42,19 +41,14 @@ public class K98ItemModel extends GeoModel<K98Item> {
if (!stack.is(ModTags.Items.GUN)) return;
if (stack.getOrCreateTag().getDouble("prepare") > 13 && stack.getOrCreateTag().getInt("ammo") == 1) {
clip.setHidden(true);
if (stack.getOrCreateTag().getDouble("prepare") > 11 && stack.getOrCreateTag().getInt("ammo") == 1) {
clip.setScaleX(0);
clip.setScaleY(0);
clip.setScaleZ(0);
} else {
clip.setHidden(false);
}
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);
clip.setScaleX(1);
clip.setScaleY(1);
clip.setScaleZ(1);
}
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);
if (stack.getOrCreateTag().getBoolean("HoldOpen")) {
slide.setPosZ(2.75f);
bullet.setHidden(true);
slide.setPosZ(1.5f);
bullet.setScaleX(0);
bullet.setScaleY(0);
bullet.setScaleZ(0);
} else {
bullet.setHidden(false);
bullet.setScaleX(1);
bullet.setScaleY(1);
bullet.setScaleZ(1);
}
CoreGeoBone root = getAnimationProcessor().getBone("root");
@ -86,17 +90,6 @@ public class M1911ItemModel extends GeoModel<M1911Item> {
double y = player.getPersistentData().getDouble("y");
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.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) {
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.setRotZ(0f);
} 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));
// 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");
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = 0;
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x");
root.setPosX(PosX);

View file

@ -82,11 +82,9 @@ public class M60ItemModel extends GeoModel<M60Item> {
b1.setScaleZ(0);
}
double p = 0;
p = player.getPersistentData().getDouble("zoom_pos");
double p = player.getPersistentData().getDouble("zoom_pos");
double zp = 0;
zp = player.getPersistentData().getDouble("zoom_pos_z");
double zp = player.getPersistentData().getDouble("zoom_pos_z");
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));
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");
float PosX = (float)player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = 0;
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x");
root.setPosX(PosX);

View file

@ -39,11 +39,8 @@ public class M79ItemModel extends GeoModel<M79Item> {
ItemStack stack = player.getMainHandItem();
if (!stack.is(ModTags.Items.GUN)) return;
double p = 0;
p = player.getPersistentData().getDouble("zoom_pos");
double zp = 0;
zp = player.getPersistentData().getDouble("zoom_pos_z");
double p = player.getPersistentData().getDouble("zoom_pos");
double zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(2.2f * (float) p);
@ -53,17 +50,6 @@ public class M79ItemModel extends GeoModel<M79Item> {
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 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 PosY = (float)player.getPersistentData().getDouble("gun_move_posY");
double y = 0;
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x");
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));
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");
float PosX = (float) player.getPersistentData().getDouble("gun_move_posX");
float PosY = (float) player.getPersistentData().getDouble("gun_move_posY");
double y = 0;
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x");
root.setPosX(PosX);

View file

@ -67,25 +67,18 @@ public class M98bItemModel extends GeoModel<M98bItem> {
gun.setRotZ((float) (0.02f * zp));
CoreGeoBone holo = getAnimationProcessor().getBone("scope2");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
CoreGeoBone qiang = getAnimationProcessor().getBone("qiang");
if (gun.getPosX() > 1.9) {
holo.setHidden(false);
qiang.setHidden(true);
} else {
holo.setHidden(true);
qiang.setHidden(false);
}
// CoreGeoBone holo = getAnimationProcessor().getBone("scope2");
// CoreGeoBone qiang = getAnimationProcessor().getBone("qiang");
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);
}
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.9));
// if (gun.getPosX() > 1.9) {
// holo.setHidden(false);
// qiang.setHidden(true);
// } else {
// holo.setHidden(true);
// qiang.setHidden(false);
// }
CoreGeoBone root = getAnimationProcessor().getBone("root");
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));
if (stack.getOrCreateTag().getInt("fire_animation") > 0) {
flare.setHidden(false);
light.setHidden(false);
flare.setScaleZ(1);
light.setScaleX(1);
light.setScaleY(1);
light.setScaleZ(1);
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);
light.setHidden(true);
flare.setScaleX(0);
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 PosY = (float) player.getPersistentData().getDouble("gun_move_posY");
double y = 0;
double x = 0;
y = player.getPersistentData().getDouble("y");
x = player.getPersistentData().getDouble("x");
double y = player.getPersistentData().getDouble("y");
double x = player.getPersistentData().getDouble("x");
root.setPosX(PosX);

View file

@ -33,8 +33,6 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
public void setCustomAnimations(Qbz95Item animatable, long instanceId, AnimationState animationState) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
CoreGeoBone bolt = getAnimationProcessor().getBone("bolt2");
Player player = Minecraft.getInstance().player;
@ -42,15 +40,6 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
ItemStack stack = player.getMainHandItem();
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 zp = player.getPersistentData().getDouble("zoom_pos_z");
@ -60,7 +49,7 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
gun.setRotZ((float) (0.05f * zp));
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 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.setRotZ(-0.1f * (float) (fp + 1.3 * 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 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");

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
public AK47ItemRenderer() {
@ -12,6 +31,112 @@ public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
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
public ResourceLocation getTextureLocation(AK47Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> {
public Aa12ItemRenderer() {
@ -12,6 +31,102 @@ public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> {
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
public ResourceLocation getTextureLocation(Aa12Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class AbekiriItemRenderer extends GeoItemRenderer<Abekiri> {
public AbekiriItemRenderer() {
@ -12,6 +31,102 @@ public class AbekiriItemRenderer extends GeoItemRenderer<Abekiri> {
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
public ResourceLocation getTextureLocation(Abekiri instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
public BocekItemRenderer() {
@ -12,6 +31,105 @@ public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
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
public ResourceLocation getTextureLocation(BocekItem instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class DevotionItemRenderer extends GeoItemRenderer<Devotion> {
public DevotionItemRenderer() {
@ -12,6 +31,112 @@ public class DevotionItemRenderer extends GeoItemRenderer<Devotion> {
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
public ResourceLocation getTextureLocation(Devotion instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.model.item.Glock17ItemModel;
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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
public Glock17ItemRenderer() {
@ -12,6 +31,102 @@ public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
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
public ResourceLocation getTextureLocation(Glock17Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.model.item.Glock18ItemModel;
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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
public Glock18ItemRenderer() {
@ -12,6 +31,102 @@ public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
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
public ResourceLocation getTextureLocation(Glock18Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
public Hk416ItemRenderer() {
@ -12,6 +31,112 @@ public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
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
public ResourceLocation getTextureLocation(Hk416Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifle> {
public HuntingRifleItemRenderer() {
@ -12,6 +31,102 @@ public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifle> {
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
public ResourceLocation getTextureLocation(HuntingRifle instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.model.item.K98ItemModel;
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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
public K98ItemRenderer() {
@ -12,6 +31,102 @@ public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
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
public ResourceLocation getTextureLocation(K98Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.model.item.M1911ItemModel;
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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
public M1911ItemRenderer() {
@ -12,6 +31,102 @@ public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
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
public ResourceLocation getTextureLocation(M1911Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
public M60ItemRenderer() {
@ -12,6 +31,102 @@ public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
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
public ResourceLocation getTextureLocation(M60Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
public M79ItemRenderer() {
@ -12,6 +31,102 @@ public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
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
public ResourceLocation getTextureLocation(M79Item 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.VertexConsumer;
import net.mcreator.superbwarfare.item.gun.M870Item;
import net.mcreator.superbwarfare.client.layer.M870Layer;
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.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
@ -34,7 +43,6 @@ public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
public ItemDisplayContext transformType;
protected M870Item animatable;
private final Set<String> hiddenBones = new HashSet<>();
private final Set<String> suppressedBones = new HashSet<>();
@Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
@ -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
public ResourceLocation getTextureLocation(M870Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
public M98bItemRenderer() {
@ -12,6 +31,120 @@ public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
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
public ResourceLocation getTextureLocation(M98bItem instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,28 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class MinigunItemRenderer extends GeoItemRenderer<Minigun> {
public MinigunItemRenderer() {
@ -12,6 +30,86 @@ public class MinigunItemRenderer extends GeoItemRenderer<Minigun> {
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
public ResourceLocation getTextureLocation(Minigun instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.model.item.Qbz95ItemModel;
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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
public Qbz95ItemRenderer() {
@ -12,6 +31,112 @@ public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
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
public ResourceLocation getTextureLocation(Qbz95Item instance) {
return super.getTextureLocation(instance);

View file

@ -1,10 +1,29 @@
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.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.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.util.RenderUtils;
import java.util.HashSet;
import java.util.Set;
public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
public TracheliumItemRenderer() {
@ -12,6 +31,102 @@ public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
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
public ResourceLocation getTextureLocation(Trachelium 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": {
"rotation": {
"0.0": {
@ -181,44 +157,43 @@
"0": {
"rotation": {
"0.0": {
"vector": [-14.82442, -57.81517, 38.62375]
"vector": [-19.82442, -57.81517, 38.62375]
},
"0.2083": {
"vector": [-16.82442, -57.81517, 38.62375],
"vector": [-21.82442, -57.81517, 38.62375],
"easing": "easeInSine"
},
"0.4167": {
"vector": [-14.82442, -57.81517, 38.62375],
"vector": [-19.82442, -57.81517, 38.62375],
"easing": "easeOutSine"
},
"0.5833": {
"vector": [-12.82442, -57.81517, 38.62375],
"vector": [-17.82442, -57.81517, 38.62375],
"easing": "easeInSine"
},
"0.7917": {
"vector": [-14.82442, -57.81517, 38.62375],
"vector": [-19.82442, -57.81517, 38.62375],
"easing": "easeOutSine"
}
},
"position": {
"0.0": {
"vector": [5.5, -2, 0]
"vector": [2.5, -0.75, -1]
},
"0.2083": {
"vector": [2.75, -1.5, 0],
"vector": [0.25, -0.25, -1],
"easing": "easeInSine"
},
"0.4167": {
"vector": [0.5, -2, 0],
"vector": [-2, -0.75, -1],
"easing": "easeOutSine"
},
"0.5833": {
"vector": [2.75, -1.5, 0],
"vector": [0, -0.25, -1],
"easing": "easeInSine"
},
"0.7917": {
"vector": [5.5, -2, 0],
"easing": "easeOutSine"
"vector": [2.5, -0.75, -1]
}
}
},
@ -250,55 +225,47 @@
"0": {
"rotation": {
"0.0": {
"vector": [-44.22375, 21.2133, 4.79361]
"vector": [-66.72375, 21.2133, 4.79361]
},
"0.2": {
"vector": [-40.88804, 21.40026, 11.0472],
"vector": [-63.38804, 21.40026, 11.0472],
"easing": "easeInSine"
},
"0.4": {
"vector": [-48.58194, 19.41184, 6.64209],
"vector": [-71.08194, 19.41184, 6.64209],
"easing": "easeOutSine"
},
"0.6": {
"vector": [-52.13904, 19.33922, 0.51567],
"vector": [-74.63904, 19.33922, 0.51567],
"easing": "easeInSine"
},
"0.8": {
"vector": [-44.22375, 21.2133, 4.79361]
"vector": [-66.72375, 21.2133, 4.79361]
}
},
"position": {
"0.0": {
"vector": [-5.29989, -0.71669, 0.66806],
"vector": [-4.29989, 0.28331, -1.33194],
"easing": "easeOutSine"
},
"0.2": {
"vector": [-6.5, 2, 0],
"vector": [-5.5, 3, -2],
"easing": "easeInSine"
},
"0.4": {
"vector": [-7.3406, -0.71261, 0.68321],
"vector": [-6.3406, 0.28739, -1.31679],
"easing": "easeOutSine"
},
"0.6": {
"vector": [-6.5, 2, 0],
"vector": [-5.5, 3, -2],
"easing": "easeInSine"
},
"0.8": {
"vector": [-5.29989, -0.71669, 0.66806],
"vector": [-4.29989, 0.28331, -1.33194],
"easing": "easeOutSine"
}
}
},
"Lefthand": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
},
"camera": {
"rotation": {
"0.0": {
@ -317,6 +284,14 @@
"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]
},
"3.0667": {
"vector": [0, 0, 7.5],
"easing": "easeInCirc"
"vector": [0, 0, 6],
"easing": "easeInElastic"
},
"3.3167": {
"vector": [0, 0, 7.5],
"vector": [0, 0, 6],
"easing": "easeInCirc"
},
"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": {
"rotation": {
"0.0": {
@ -764,11 +638,96 @@
"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": {
"0.0": {
"effect": "aa_12_reload_empty"
"position": {
"0.1667": {
"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": {
"rotation": {
"0.0": {
@ -1098,11 +995,56 @@
"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": {
"0.0": {
"effect": "aa_12_reload_empty"
"position": {
"0.1667": {
"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": {
"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": {
"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]
}
}
},
"Lefthand": {
"rotation": {
"vector": [-27.48048, 7.74079, 60.61663]
},
"position": {
"vector": [-1.8, -0.4, 1.5]
}
}
}
},
@ -228,6 +252,14 @@
"position": {
"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": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
"vector": [-27.48048, 7.74079, 60.61663]
},
"0.2": {
"vector": [46.55566, -11.28983, -10.57657]
"vector": [-46.5557, 11.2898, -10.57657]
},
"0.5": {
"vector": [28.88915, -28.22457, -26.44144]
"vector": [-28.8891, 28.2246, -26.44144]
},
"0.7": {
"vector": [-28.15519, -39.5144, -37.01801]
"vector": [28.1552, 39.5144, -37.01801]
},
"0.8": {
"vector": [-36.02531, -30.17168, -37.82607]
"vector": [36.0253, 30.1717, -37.82607]
},
"0.9": {
"vector": [-32.83715, -25.49817, -32.05203]
"vector": [32.8372, 25.4982, -32.05203]
},
"1.0": {
"vector": [-21.83715, -25.49817, -32.05203]
"vector": [21.8372, 25.4982, -32.05203]
},
"1.1": {
"vector": [-30.83715, -25.49817, -32.05203]
"vector": [30.8372, 25.4982, -32.05203]
},
"1.3": {
"vector": [-9.68, -52.68, -57.11]
"vector": [9.68, 52.68, -57.11]
},
"1.5": {
"vector": [-6.35997, -28.9577, -29.98792]
"vector": [6.36, 28.9577, -29.98792]
},
"1.7": {
"vector": [-11.35997, -28.9577, -29.98792]
"vector": [11.36, 28.9577, -29.98792]
},
"1.9": {
"vector": [-11.35997, -28.9577, -29.98792]
"vector": [11.36, 28.9577, -29.98792]
},
"2.1": {
"vector": [-6.35997, -28.9577, -29.98792]
"vector": [6.36, 28.9577, -29.98792]
},
"2.3": {
"vector": [-6.77006, -25.92966, -31.79066],
"vector": [6.7701, 25.9297, -31.79066],
"easing": "easeInOutSine"
},
"2.5": {
"vector": [-30.83715, -25.49817, -32.05203]
"vector": [30.8372, 25.4982, -32.05203]
},
"2.7": {
"vector": [0, 0, 0]
"vector": [-27.48048, 7.74079, 60.61663]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
"vector": [-1.8, -0.4, 1.5]
},
"0.4": {
"vector": [0.69, -0.46, 4.34]
@ -461,7 +493,7 @@
"vector": [-1.25, -2.8, -3.5]
},
"2.7": {
"vector": [0, 0, 0]
"vector": [-1.8, -0.4, 1.5]
}
}
},
@ -852,73 +884,73 @@
"Lefthand": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
"vector": [-27.48048, 7.74079, 60.61663]
},
"0.2": {
"vector": [46.55566, -11.28983, -10.57657]
"vector": [-46.5557, 11.2898, -10.57657]
},
"0.5": {
"vector": [28.88915, -28.22457, -26.44144]
"vector": [-28.8891, 28.2246, -26.44144]
},
"0.7": {
"vector": [-28.15519, -39.5144, -37.01801]
"vector": [28.1552, 39.5144, -37.01801]
},
"0.8": {
"vector": [-36.02531, -30.17168, -37.82607]
"vector": [36.0253, 30.1717, -37.82607]
},
"0.9": {
"vector": [-32.83715, -25.49817, -32.05203]
"vector": [32.8372, 25.4982, -32.05203]
},
"1.0": {
"vector": [-36.02531, -30.17168, -37.82607]
"vector": [36.0253, 30.1717, -37.82607]
},
"1.1": {
"vector": [-36.02531, -30.17168, -37.82607]
"vector": [36.0253, 30.1717, -37.82607]
},
"1.3": {
"vector": [-21.83715, -25.49817, -32.05203]
"vector": [21.8372, 25.4982, -32.05203]
},
"1.4": {
"vector": [-30.83715, -25.49817, -32.05203]
"vector": [30.8372, 25.4982, -32.05203]
},
"1.6": {
"vector": [-9.68, -52.68, -57.11]
"vector": [9.68, 52.68, -57.11]
},
"1.8": {
"vector": [-6.35997, -28.9577, -29.98792]
"vector": [6.36, 28.9577, -29.98792]
},
"2.0": {
"vector": [-11.35997, -28.9577, -29.98792]
"vector": [11.36, 28.9577, -29.98792]
},
"2.2": {
"vector": [-11.35997, -28.9577, -29.98792]
"vector": [11.36, 28.9577, -29.98792]
},
"2.3": {
"vector": [-6.35997, -28.9577, -29.98792]
"vector": [6.36, 28.9577, -29.98792]
},
"2.5": {
"vector": [-11.35997, -28.9577, -29.98792]
"vector": [11.36, 28.9577, -29.98792]
},
"2.7": {
"vector": [-11.35997, -28.9577, -29.98792]
"vector": [11.36, 28.9577, -29.98792]
},
"2.9": {
"vector": [-6.35997, -28.9577, -29.98792]
"vector": [6.36, 28.9577, -29.98792]
},
"3.1": {
"vector": [-6.77006, -25.92966, -31.79066],
"vector": [6.7701, 25.9297, -31.79066],
"easing": "easeInOutSine"
},
"3.3": {
"vector": [-30.83715, -25.49817, -32.05203]
"vector": [30.8372, 25.4982, -32.05203]
},
"3.5": {
"vector": [0, 0, 0]
"vector": [-27.48048, 7.74079, 60.61663]
}
},
"position": {
"0.0": {
"vector": [0, 0, 0]
"vector": [-1.8, -0.4, 1.5]
},
"0.4": {
"vector": [0.69, -0.46, 4.34]
@ -983,7 +1015,7 @@
"vector": [-1.25, -2.8, -3.5]
},
"3.5": {
"vector": [0, 0, 0]
"vector": [-1.8, -0.4, 1.5]
}
}
},

View file

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

View file

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

View file

@ -5,6 +5,63 @@
"loop": true,
"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": {
"loop": true,
"animation_length": 0.8,
@ -191,76 +248,6 @@
"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": {
"rotation": {
"0.125": {
"0.25": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [0, 6, -9]
"0.325": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"0.375": {
"1.0": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"1.1": {
"vector": [0, 0, 0]
}
},
"position": {
"0.125": {
"0.25": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [3.00321, -0.61688, -0.10106]
"0.325": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"0.375": {
"1.0": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"1.1": {
"vector": [0, 0, 0]
}
}
@ -422,31 +415,31 @@
"vector": [0, 0, 0]
},
"0.075": {
"vector": [133.30702, -9.72565, -30.6365]
"vector": [-133.307, 9.7256, -30.6365]
},
"0.65": {
"vector": [25.46719, -22.2363, 78.12621]
"vector": [-25.4672, 22.2363, 78.12621]
},
"0.725": {
"vector": [23.34788, -25.26118, 70.86152]
"vector": [-23.3479, 25.2612, 70.86152]
},
"0.8": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"0.925": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"0.975": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"1.0": {
"vector": [13.04381, 11.88065, 62.82106]
"vector": [-13.0438, -11.8806, 62.82106]
},
"1.025": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"1.05": {
"vector": [5.64016, 8.63483, 66.98444]
"vector": [-5.6402, -8.6348, 66.98444]
},
"1.125": {
"vector": [0, 0, 8]
@ -810,24 +803,30 @@
},
"Righthand": {
"rotation": {
"0.125": {
"0.25": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [0, 6, -9]
"0.325": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"0.375": {
"1.0": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"1.1": {
"vector": [0, 0, 0]
}
},
"position": {
"0.125": {
"0.25": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [3.00321, -0.61688, -0.10106]
"0.325": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"0.375": {
"1.0": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"1.1": {
"vector": [0, 0, 0]
}
}
@ -838,47 +837,47 @@
"vector": [0, 0, 0]
},
"0.075": {
"vector": [133.30702, -9.72565, -30.6365]
"vector": [-133.307, 9.7256, -30.6365]
},
"0.65": {
"vector": [25.46719, -22.2363, 78.12621]
"vector": [-25.4672, 22.2363, 78.12621]
},
"0.725": {
"vector": [23.34788, -25.26118, 70.86152]
"vector": [-23.3479, 25.2612, 70.86152]
},
"0.8": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"0.925": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"0.975": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"1.0": {
"vector": [13.04381, 11.88065, 62.82106]
"vector": [-13.0438, -11.8806, 62.82106]
},
"1.05": {
"vector": [-4.93818, -6.6412, 30.82739]
"vector": [4.9382, 6.6412, 30.82739]
},
"1.15": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.2": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.225": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.4": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.5": {
"vector": [3.537, -23.82754, -26.97592]
"vector": [-3.537, 23.8275, -26.97592]
},
"1.575": {
"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": {
"loop": "hold_on_last_frame",
"animation_length": 1.7,
@ -1341,24 +1538,30 @@
},
"Righthand": {
"rotation": {
"0.125": {
"0.25": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [0, 6, -9]
"0.325": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"0.375": {
"1.0": {
"vector": [-0.74716, 1.87653, -7.1133]
},
"1.1": {
"vector": [0, 0, 0]
}
},
"position": {
"0.125": {
"0.25": {
"vector": [0, 0, 0]
},
"0.25": {
"vector": [3.00321, -0.61688, -0.10106]
"0.325": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"0.375": {
"1.0": {
"vector": [-0.66084, -0.04017, 0.01492]
},
"1.1": {
"vector": [0, 0, 0]
}
}
@ -1369,47 +1572,47 @@
"vector": [0, 0, 0]
},
"0.075": {
"vector": [133.30702, -9.72565, -30.6365]
"vector": [-133.307, 9.7256, -30.6365]
},
"0.65": {
"vector": [25.46719, -22.2363, 78.12621]
"vector": [-25.4672, 22.2363, 78.12621]
},
"0.725": {
"vector": [23.34788, -25.26118, 70.86152]
"vector": [-23.3479, 25.2612, 70.86152]
},
"0.8": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"0.925": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"0.975": {
"vector": [15.35593, 5.20698, 63.75845]
"vector": [-15.3559, -5.207, 63.75845]
},
"1.0": {
"vector": [13.04381, 11.88065, 62.82106]
"vector": [-13.0438, -11.8806, 62.82106]
},
"1.05": {
"vector": [-4.93818, -6.6412, 30.82739]
"vector": [4.9382, 6.6412, 30.82739]
},
"1.15": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.2": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.225": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.4": {
"vector": [-32.88924, -30.55823, -55.9374],
"vector": [32.8892, 30.5582, -55.9374],
"easing": "easeInOutSine"
},
"1.5": {
"vector": [3.537, -23.82754, -26.97592]
"vector": [-3.537, 23.8275, -26.97592]
},
"1.575": {
"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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -1,6 +1,10 @@
{
"format_version": "1.8.0",
"animations": {
"animation.m870.idle": {
"loop": true,
"animation_length": 0.25
},
"animation.m870.run": {
"loop": true,
"animation_length": 0.8,
@ -65,14 +69,6 @@
"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": {
"rotation": {
"0.0": {
@ -184,14 +164,6 @@
}
}
},
"leftarm": {
"rotation": {
"vector": [-1.41476, -16.33468, -1.66483]
},
"position": {
"vector": [6, -13, 49]
}
},
"camera": {
"rotation": {
"0.0": {
@ -210,6 +182,14 @@
"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": {
"rotation": {
"0.0": {
@ -293,10 +249,6 @@
}
}
},
"animation.m870.idle": {
"loop": true,
"animation_length": 0.25
},
"animation.m870.prepare": {
"animation_length": 0.75,
"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": {
"rotation": {
"0.0": {
@ -376,14 +310,6 @@
}
}
},
"rightarm": {
"rotation": {
"vector": [0, 0, 0]
},
"position": {
"vector": [0, 0, 0]
}
},
"camera": {
"rotation": {
"0.0": {
@ -396,6 +322,28 @@
"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": {
"position": {
"0.05": {
@ -760,14 +607,6 @@
}
}
},
"rightarm": {
"rotation": {
"vector": [0, 0, 0]
},
"position": {
"vector": [0, 0, 0]
}
},
"camera": {
"rotation": {
"0.0": {
@ -816,11 +655,106 @@
"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": {
"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": {
"rotation": {
"0.0": {
@ -1045,6 +924,53 @@
"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": {
"rotation": {
"0.0": {
@ -1269,6 +1140,53 @@
"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": {
"rotation": {
"0.0": {
@ -1543,6 +1425,22 @@
"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": {
"rotation": {
"0.0": {
@ -1641,6 +1497,71 @@
"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": {
"rotation": {
"vector": [0.91131, 14.09621, -8.80599]
"vector": [-0.9113, -14.0962, -8.80599]
},
"position": {
"vector": [2.87519, -0.6965, 0.78255]
@ -307,26 +307,26 @@
"vector": [0, 0, 0]
},
"0.05": {
"vector": [-10.13452, 14.19053, -4.87335]
"vector": [10.1345, -14.1905, -4.87335]
},
"0.2": {
"vector": [-17.36801, 15.96601, -3.18052],
"vector": [17.368, -15.966, -3.18052],
"easing": "easeInSine"
},
"0.35": {
"vector": [-17.36801, 15.96601, -3.18052],
"vector": [17.368, -15.966, -3.18052],
"easing": "easeInElastic"
},
"0.4": {
"vector": [-17.8046, 34.99625, 18.716],
"vector": [17.8046, -34.9963, 18.716],
"easing": "linear"
},
"0.55": {
"vector": [-17.8046, 34.99625, 18.716],
"vector": [17.8046, -34.9963, 18.716],
"easing": "linear"
},
"0.6": {
"vector": [-10.13452, 14.19053, -4.87335],
"vector": [10.1345, -14.1905, -4.87335],
"easing": "easeInElastic"
},
"0.75": {
@ -754,30 +754,30 @@
"2.775": {
"vector": [0, 0, 0]
},
"2.875": {
"vector": [-10.13452, 14.19053, -4.87335]
"2.825": {
"vector": [10.1345, -14.1905, -4.87335]
},
"2.975": {
"vector": [-17.36801, 15.96601, -3.18052],
"vector": [17.368, -15.966, -3.18052],
"easing": "easeInSine"
},
"3.075": {
"vector": [-17.36801, 15.96601, -3.18052],
"3.125": {
"vector": [17.368, -15.966, -3.18052],
"easing": "easeInElastic"
},
"3.175": {
"vector": [-17.8046, 34.99625, 18.716],
"vector": [17.8046, -34.9963, 18.716],
"easing": "linear"
},
"3.275": {
"vector": [-17.8046, 34.99625, 18.716],
"3.325": {
"vector": [17.8046, -34.9963, 18.716],
"easing": "linear"
},
"3.375": {
"vector": [-10.13452, 14.19053, -4.87335],
"vector": [10.1345, -14.1905, -4.87335],
"easing": "easeInElastic"
},
"3.575": {
"3.525": {
"vector": [0, 0, 0]
}
},
@ -819,25 +819,25 @@
"vector": [0, 0, 0]
},
"0.525": {
"vector": [6.83397, 0.47886, -0.57224]
"vector": [-6.834, -0.4789, -0.57224]
},
"0.65": {
"vector": [14.03892, 15.21213, 3.24877]
"vector": [-14.0389, -15.2121, 3.24877]
},
"0.9": {
"vector": [14.03892, 15.21213, 3.24877]
"vector": [-14.0389, -15.2121, 3.24877]
},
"1.0": {
"vector": [14.03892, 15.21213, 3.24877]
"vector": [-14.0389, -15.2121, 3.24877]
},
"1.575": {
"vector": [11, 0, 0]
"vector": [-11, 0, 0]
},
"2.3": {
"vector": [11, 0, 0]
"vector": [-11, 0, 0]
},
"2.525": {
"vector": [7.51509, -4.83534, 3.16822]
"vector": [-7.5151, 4.8353, 3.16822]
},
"2.675": {
"vector": [0, 0, 0]
@ -1263,25 +1263,25 @@
"vector": [0, 0, 0]
},
"0.525": {
"vector": [6.83397, 0.47886, -0.57224]
"vector": [-6.834, -0.4789, -0.57224]
},
"0.65": {
"vector": [14.03892, 15.21213, 3.24877]
"vector": [-14.0389, -15.2121, 3.24877]
},
"0.9": {
"vector": [14.03892, 15.21213, 3.24877]
"vector": [-14.0389, -15.2121, 3.24877]
},
"1.0": {
"vector": [14.03892, 15.21213, 3.24877]
"vector": [-14.0389, -15.2121, 3.24877]
},
"1.575": {
"vector": [11, 0, 0]
"vector": [-11, 0, 0]
},
"2.3": {
"vector": [11, 0, 0]
"vector": [-11, 0, 0]
},
"2.525": {
"vector": [7.51509, -4.83534, 3.16822]
"vector": [-7.5151, 4.8353, 3.16822]
},
"2.675": {
"vector": [0, 0, 0]

View file

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

View file

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

File diff suppressed because it is too large Load diff

View file

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

View file

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

View file

@ -52,27 +52,25 @@
{
"name": "lh",
"parent": "anim",
"pivot": [3.54634, -1.54023, 2.7537],
"pivot": [1.02147, -0.55985, 0.2537],
"rotation": [0, 0, -60]
},
{
"name": "Lefthand",
"parent": "lh",
"pivot": [3.54634, -1.54023, 2.7537],
"rotation": [61.24687, 9.53274, -3.03513],
"pivot": [2.16391, -2.62838, 9.74825],
"rotation": [97.40532, -1.17018, 175.48224],
"cubes": [
{
"origin": [1.58174, -11.94755, 1.52726],
"size": [4, 16, 4],
"pivot": [5.73174, -1.44755, 1.87726],
"rotation": [7.47178, -0.65182, 4.95744],
"origin": [0.16391, -2.62838, 7.74825],
"size": [4, 12, 4],
"uv": {
"north": {"uv": [8, 12], "uv_size": [3, 14]},
"east": {"uv": [0, 0], "uv_size": [4, 14]},
"south": {"uv": [11, 12], "uv_size": [3, 14]},
"west": {"uv": [4, 0], "uv_size": [4, 14]},
"up": {"uv": [14, 12], "uv_size": [3, 4]},
"down": {"uv": [16, 4], "uv_size": [3, -4]}
"north": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"east": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"south": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"west": {"uv": [2.77246, 3.44727], "uv_size": [-2.77246, -3.44727]},
"up": {"uv": [0, 0], "uv_size": [2.77246, 3.44727]},
"down": {"uv": [0, 0], "uv_size": [2.77246, 3.44727]}
}
}
]
@ -105,10 +103,10 @@
{
"name": "deng",
"parent": "r",
"pivot": [0.29877, 1.76423, -0.08826],
"pivot": [-0.86209, 3.86869, 1.02895],
"cubes": [
{
"origin": [-0.94763, 4.12965, 1.02714],
"origin": [-0.94763, 4.12965, 1.01542],
"size": [0.17108, 0.17108, 0.02707],
"uv": {
"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],
"uv": {
"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],
"uv": {
"north": {"uv": [60.125, 59.875], "uv_size": [1.5, 2.125]},
@ -3576,8 +3574,10 @@
"rotation": [0, 0, -5],
"cubes": [
{
"origin": [-0.20964, 2.18711, 18.94763],
"origin": [-0.51901, 2.18711, 16.64763],
"size": [0.36493, 0.62821, 3.69133],
"pivot": [-0.02717, 2.50121, 19.4433],
"rotation": [0, -144, 0],
"uv": {
"north": {"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]},
"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],
"pivot": [1.42935, -2.44761, 21.16958],
"rotation": [11.92695, 1.21261, -6.89469],
"uv": {
"north": {"uv": [0, 14], "uv_size": [3, 12]},
"east": {"uv": [8, 0], "uv_size": [4, 12]},
"south": {"uv": [3, 14], "uv_size": [3, 12]},
"west": {"uv": [12, 0], "uv_size": [4, 12]},
"up": {"uv": [16, 4], "uv_size": [3, 4]},
"down": {"uv": [16, 12], "uv_size": [3, -4]}
"north": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"east": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"south": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"west": {"uv": [2.625, 22.40625], "uv_size": [-2.625, 0.75]},
"up": {"uv": [0, 23.15625], "uv_size": [2.625, -0.75]},
"down": {"uv": [0, 23.15625], "uv_size": [2.625, -0.75]}
}
}
]

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -15700,12 +15700,12 @@
{
"name": "Lefthand",
"parent": "magazine",
"pivot": [2.3, -6.6, -1.18047],
"rotation": [47.12788, 10.04762, -11.96812],
"pivot": [3.8, -6.6, -1.18047],
"rotation": [132.87212, -10.04762, 168.03188],
"cubes": [
{
"origin": [1.3, -6.9, -2.18047],
"size": [3, 12, 3],
"origin": [1.8, -6.6, -3.18047],
"size": [4, 12, 4],
"uv": {
"north": {"uv": [0, 12], "uv_size": [3, 12]},
"east": {"uv": [12, 0], "uv_size": [3, 12]},
@ -16367,12 +16367,12 @@
{
"name": "Righthand",
"parent": "0",
"pivot": [-4.1, -4.5, 10.85],
"rotation": [72.85133, -20.70481, 9.00717],
"pivot": [-3.75, -4.5, 11.35],
"rotation": [106.38323, 12.08573, -173.69651],
"cubes": [
{
"origin": [-6.4, -4.8, 9.85],
"size": [3, 12, 3],
"origin": [-5.8, -4.5, 9.35],
"size": [4, 12, 4],
"uv": {
"north": {"uv": [0, 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],
"size": [0.71128, 3.15, 0.75313],
"origin": [-0.25564, 6.69018, 2.40216],
"size": [0.71128, 4.15, 0.75313],
"pivot": [0, 8.76518, 2.77873],
"rotation": [0, 0, 90],
"uv": {
@ -3490,8 +3490,8 @@
}
},
{
"origin": [0.45564, 7.19018, 2.40216],
"size": [0.1, 0.6, 0.75313],
"origin": [0.45564, 6.69018, 2.40216],
"size": [0.1, 1.1, 0.75313],
"pivot": [0, 8.76518, 2.77873],
"rotation": [0, 0, 90],
"uv": {
@ -3532,8 +3532,8 @@
}
},
{
"origin": [-0.55564, 7.19018, 2.40216],
"size": [0.1, 0.6, 0.75313],
"origin": [-0.55564, 6.69018, 2.40216],
"size": [0.1, 1.1, 0.75313],
"pivot": [0, 8.76518, 2.77873],
"rotation": [0, 0, -90],
"uv": {
@ -6549,12 +6549,12 @@
{
"name": "Lefthand",
"parent": "0",
"pivot": [5.08122, 7.47568, 11.26082],
"rotation": [93.23579, 26.55939, 19.67969],
"pivot": [5.08122, 7.97568, 11.26082],
"rotation": [116.59597, -2.89401, 108.23166],
"cubes": [
{
"origin": [3.08122, 7.47568, 9.26082],
"size": [4, 12, 3],
"origin": [3.08122, 7.97568, 9.26082],
"size": [4, 12, 4],
"uv": {
"north": {"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",
"parent": "0",
"pivot": [-1.79027, 10.60727, 29.37886],
"rotation": [109.35832, -7.15102, 2.26708],
"rotation": [70.64168, 7.15102, -177.73292],
"cubes": [
{
"origin": [-3.79027, 10.60727, 27.37886],

View file

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

View file

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

View file

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

View file

@ -6,35 +6,11 @@
128
],
"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": {
"translation": [
4,
-15.5,
-31.75
4.25,
-13.5,
-22
],
"scale": [
4,
@ -44,61 +20,15 @@
},
"firstperson_lefthand": {
"translation": [
-1,
3,
2.5
-3.5,
2.75,
-4
],
"scale": [
0,
0.02,
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
]
}
}
}