完成剩余的手臂替换
This commit is contained in:
parent
b2fa32297c
commit
6282d72d5d
40 changed files with 1774 additions and 983 deletions
|
@ -39,11 +39,8 @@ public class MarlinItemModel extends GeoModel<MarlinItem> {
|
|||
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(1.712f * (float) p);
|
||||
|
||||
|
@ -65,30 +62,18 @@ public class MarlinItemModel extends GeoModel<MarlinItem> {
|
|||
shen.setRotZ(-0.03f * (float) (fp + 1.3 * fr));
|
||||
shen.setRotY(-0.05f * (float) fr);
|
||||
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
|
||||
if (stack.getOrCreateTag().getInt("fire_animation") > 0) {
|
||||
jichui.setRotX(-0.52f);
|
||||
}
|
||||
|
||||
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);
|
||||
|
||||
|
|
|
@ -33,13 +33,10 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
|
|||
public void setCustomAnimations(Mk14Item animatable, long instanceId, AnimationState animationState) {
|
||||
CoreGeoBone gun = getAnimationProcessor().getBone("bones");
|
||||
CoreGeoBone scope = getAnimationProcessor().getBone("scope");
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
CoreGeoBone rex = getAnimationProcessor().getBone("rex");
|
||||
CoreGeoBone l = getAnimationProcessor().getBone("l");
|
||||
CoreGeoBone r = getAnimationProcessor().getBone("r");
|
||||
CoreGeoBone yugu = getAnimationProcessor().getBone("yugu");
|
||||
CoreGeoBone jing = getAnimationProcessor().getBone("jing");
|
||||
CoreGeoBone qiangguan = getAnimationProcessor().getBone("qiangguan");
|
||||
CoreGeoBone action = getAnimationProcessor().getBone("action");
|
||||
|
||||
Player player = Minecraft.getInstance().player;
|
||||
|
@ -52,11 +49,8 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
|
|||
r.setRotX(-1.5f);
|
||||
}
|
||||
|
||||
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(3.105f * (float) p);
|
||||
|
||||
|
@ -97,15 +91,7 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
|
|||
|
||||
action.setPosZ(2.5f * (float) fp);
|
||||
|
||||
if (gun.getPosX() > 2.5f) {
|
||||
rex.setHidden(false);
|
||||
jing.setHidden(true);
|
||||
qiangguan.setHidden(true);
|
||||
} else {
|
||||
rex.setHidden(true);
|
||||
jing.setHidden(false);
|
||||
qiangguan.setHidden(false);
|
||||
}
|
||||
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 2.5));
|
||||
|
||||
CoreGeoBone bolt = getAnimationProcessor().getBone("bolt");
|
||||
|
||||
|
@ -113,29 +99,13 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
|
|||
bolt.setPosZ(2.5f);
|
||||
}
|
||||
|
||||
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
|
||||
flare.setHidden(false);
|
||||
flare.setScaleX((float) (0.5 + 0.5 * (Math.random() - 0.5)));
|
||||
flare.setScaleY((float) (0.5 + 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(-3.5f);
|
||||
} else {
|
||||
flare.setPosY(0);
|
||||
}
|
||||
} 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);
|
||||
|
||||
|
|
|
@ -34,14 +34,8 @@ public class Ntw20Model extends GeoModel<Ntw20> {
|
|||
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
|
||||
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
|
||||
CoreGeoBone scope = getAnimationProcessor().getBone("scope");
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
CoreGeoBone l = getAnimationProcessor().getBone("l");
|
||||
CoreGeoBone r = getAnimationProcessor().getBone("r");
|
||||
CoreGeoBone action = getAnimationProcessor().getBone("action");
|
||||
CoreGeoBone body = getAnimationProcessor().getBone("body");
|
||||
CoreGeoBone jing = getAnimationProcessor().getBone("jing");
|
||||
CoreGeoBone base = getAnimationProcessor().getBone("base");
|
||||
CoreGeoBone rex = getAnimationProcessor().getBone("rex");
|
||||
|
||||
Player player = Minecraft.getInstance().player;
|
||||
if (player == null) return;
|
||||
|
@ -85,38 +79,15 @@ public class Ntw20Model extends GeoModel<Ntw20> {
|
|||
|
||||
scope.setScaleZ(1f - (0.85f * (float) p));
|
||||
|
||||
if (gun.getPosX() > 4.3f) {
|
||||
rex.setHidden(false);
|
||||
action.setHidden(true);
|
||||
body.setHidden(true);
|
||||
jing.setHidden(true);
|
||||
base.setHidden(true);
|
||||
} else {
|
||||
rex.setHidden(true);
|
||||
action.setHidden(false);
|
||||
body.setHidden(false);
|
||||
jing.setHidden(false);
|
||||
base.setHidden(false);
|
||||
}
|
||||
|
||||
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() > 4.3));
|
||||
|
||||
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);
|
||||
|
||||
|
|
|
@ -32,7 +32,6 @@ public class RpgItemModel extends GeoModel<RpgItem> {
|
|||
@Override
|
||||
public void setCustomAnimations(RpgItem animatable, long instanceId, AnimationState animationState) {
|
||||
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
|
||||
CoreGeoBone rocket = getAnimationProcessor().getBone("Rockets");
|
||||
CoreGeoBone shen = getAnimationProcessor().getBone("rpg");
|
||||
CoreGeoBone hammer = getAnimationProcessor().getBone("hammer");
|
||||
|
||||
|
@ -41,8 +40,6 @@ public class RpgItemModel extends GeoModel<RpgItem> {
|
|||
ItemStack stack = player.getMainHandItem();
|
||||
if (!stack.is(ModTags.Items.GUN)) return;
|
||||
|
||||
rocket.setHidden(stack.getOrCreateTag().getBoolean("empty"));
|
||||
|
||||
if (stack.getOrCreateTag().getBoolean("close_hammer")) {
|
||||
hammer.setRotX(-90 * Mth.DEG_TO_RAD);
|
||||
}
|
||||
|
@ -63,11 +60,8 @@ public class RpgItemModel extends GeoModel<RpgItem> {
|
|||
}
|
||||
shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
|
||||
|
||||
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(0.91f * (float) p);
|
||||
|
||||
|
@ -77,26 +71,13 @@ public class RpgItemModel extends GeoModel<RpgItem> {
|
|||
|
||||
gun.setRotZ(0.45f * (float) p + (float) (0.02f * zp));
|
||||
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
|
||||
if (stack.getOrCreateTag().getInt("fire_animation") > 0) {
|
||||
flare.setHidden(false);
|
||||
flare.setScaleX((float) (1.0 + 0.5 * (Math.random() - 0.5)));
|
||||
flare.setScaleY((float) (1.0 + 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);
|
||||
|
||||
|
|
|
@ -35,7 +35,6 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
|||
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
|
||||
CoreGeoBone scope = getAnimationProcessor().getBone("pka");
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
CoreGeoBone hide = getAnimationProcessor().getBone("hide");
|
||||
CoreGeoBone button = getAnimationProcessor().getBone("button");
|
||||
CoreGeoBone shuan = getAnimationProcessor().getBone("shuan");
|
||||
|
||||
|
@ -44,11 +43,8 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
|||
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(1.69f * (float) p);
|
||||
|
||||
|
@ -69,24 +65,19 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
|||
button.setScaleZ(1f - (0.3f * (float) p));
|
||||
|
||||
|
||||
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
|
||||
|
||||
holo.setScaleX(0.9f);
|
||||
holo.setScaleY(0.9f);
|
||||
|
||||
holo.setHidden(!(gun.getPosX() > 1.65));
|
||||
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.65));
|
||||
|
||||
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(0.7f * (float) (fp + 0.54f * fr));
|
||||
shen.setRotX(0.003f * (float) (fp + fr));
|
||||
shen.setRotZ(0f);
|
||||
} else {
|
||||
shen.setPosY(-0.03f * (float) (fp + 2 * fr));
|
||||
shen.setPosZ(0.8f * (float) (fp + 0.54f * fr));
|
||||
shen.setPosZ(0.6f * (float) (fp + 0.54f * fr));
|
||||
shen.setRotX(0.04f * (float) (0.18f * fp + fr));
|
||||
shen.setRotZ(-0.04f * (float) (fp + 1.3 * fr));
|
||||
}
|
||||
|
@ -94,24 +85,12 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
|||
|
||||
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)));
|
||||
} 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);
|
||||
|
||||
|
|
|
@ -9,13 +9,10 @@ import net.minecraft.resources.ResourceLocation;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraftforge.common.capabilities.ForgeCapabilities;
|
||||
import software.bernie.geckolib.core.animatable.model.CoreGeoBone;
|
||||
import software.bernie.geckolib.core.animation.AnimationState;
|
||||
import software.bernie.geckolib.model.GeoModel;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
public class SentinelItemModel extends GeoModel<SentinelItem> {
|
||||
@Override
|
||||
public ResourceLocation getAnimationResource(SentinelItem animatable) {
|
||||
|
@ -71,7 +68,6 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
|
|||
|
||||
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
|
||||
holo.setPosY(0.09f);
|
||||
holo.setHidden(!(gun.getPosX() > 1.8));
|
||||
|
||||
double fp = player.getPersistentData().getDouble("fire_pos");
|
||||
double fr = player.getPersistentData().getDouble("fire_rot");
|
||||
|
@ -93,13 +89,6 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
|
|||
|
||||
charge.setRotZ(charge.getRotZ() + times * 0.05f);
|
||||
|
||||
AtomicBoolean flag = new AtomicBoolean(false);
|
||||
stack.getCapability(ForgeCapabilities.ENERGY).ifPresent(
|
||||
iEnergyStorage -> flag.set(iEnergyStorage.getEnergyStored() > 0)
|
||||
);
|
||||
|
||||
charge.setHidden(!flag.get());
|
||||
|
||||
CoreGeoBone root = getAnimationProcessor().getBone("root");
|
||||
|
||||
float PosX = (float) player.getPersistentData().getDouble("gun_move_posX");
|
||||
|
@ -142,17 +131,6 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
|
|||
|
||||
move.setRotZ(2.7f * (float) m + Mth.DEG_TO_RAD * (float) zRot);
|
||||
|
||||
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);
|
||||
}
|
||||
|
||||
if ((stack.getOrCreateTag().getDouble("ammo") <= 5)) {
|
||||
ammo.setScaleX((float) (stack.getOrCreateTag().getDouble("ammo") / 5));
|
||||
}
|
||||
|
|
|
@ -46,11 +46,8 @@ public class SksItemModel extends GeoModel<SksItem> {
|
|||
bolt.setPosZ(2.5f);
|
||||
}
|
||||
|
||||
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(1.53f * (float) p);
|
||||
|
||||
|
@ -62,7 +59,7 @@ public class SksItemModel extends GeoModel<SksItem> {
|
|||
|
||||
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
|
||||
|
||||
holo.setHidden(!(gun.getPosX() > 1.2));
|
||||
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.2));
|
||||
|
||||
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
|
||||
|
||||
|
@ -84,24 +81,12 @@ public class SksItemModel extends GeoModel<SksItem> {
|
|||
|
||||
shuan.setPosZ(2f * (float) fp);
|
||||
|
||||
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);
|
||||
|
||||
|
|
|
@ -32,14 +32,13 @@ public class SvdItemModel extends GeoModel<SvdItem> {
|
|||
@Override
|
||||
public void setCustomAnimations(SvdItem animatable, long instanceId, AnimationState animationState) {
|
||||
CoreGeoBone gun = getAnimationProcessor().getBone("bone");
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
CoreGeoBone bolt = getAnimationProcessor().getBone("bolt");
|
||||
CoreGeoBone scope = getAnimationProcessor().getBone("pso1");
|
||||
CoreGeoBone sight = getAnimationProcessor().getBone("handguard");
|
||||
CoreGeoBone bt1 = getAnimationProcessor().getBone("bullton1");
|
||||
CoreGeoBone bt2 = getAnimationProcessor().getBone("bullton2");
|
||||
CoreGeoBone shuan = getAnimationProcessor().getBone("shuan");
|
||||
CoreGeoBone glass = getAnimationProcessor().getBone("glass");
|
||||
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
|
||||
CoreGeoBone flare = getAnimationProcessor().getBone("flare");
|
||||
|
||||
Player player = Minecraft.getInstance().player;
|
||||
if (player == null) return;
|
||||
|
@ -50,11 +49,8 @@ public class SvdItemModel extends GeoModel<SvdItem> {
|
|||
bolt.setPosZ(3.25f);
|
||||
}
|
||||
|
||||
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.02f * (float) p);
|
||||
|
||||
|
@ -72,18 +68,7 @@ public class SvdItemModel extends GeoModel<SvdItem> {
|
|||
|
||||
bt2.setScaleX(1f - (0.5f * (float) p));
|
||||
|
||||
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
|
||||
if (gun.getPosX() > 1.9) {
|
||||
holo.setPosY(0.05f);
|
||||
holo.setScaleX(0.45f);
|
||||
holo.setScaleY(0.45f);
|
||||
holo.setHidden(false);
|
||||
sight.setHidden(true);
|
||||
} else {
|
||||
holo.setHidden(true);
|
||||
sight.setHidden(false);
|
||||
glass.setHidden(true);
|
||||
}
|
||||
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 1.9));
|
||||
|
||||
CoreGeoBone shen = getAnimationProcessor().getBone("shen");
|
||||
|
||||
|
@ -95,6 +80,7 @@ public class SvdItemModel extends GeoModel<SvdItem> {
|
|||
shen.setPosZ(1.6f * (float) (fp + 0.54f * fr));
|
||||
shen.setRotX(0.003f * (float) (fp + fr));
|
||||
shen.setRotZ(0f);
|
||||
flare.setPosY(-2.5f);
|
||||
} else {
|
||||
shen.setPosY(0.04f * (float) (fp + 2 * fr));
|
||||
shen.setPosZ(1.8f * (float) (fp + 0.54f * fr));
|
||||
|
@ -103,28 +89,17 @@ public class SvdItemModel extends GeoModel<SvdItem> {
|
|||
}
|
||||
shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp));
|
||||
|
||||
holo.setPosY(1.1f * (float) fp);
|
||||
|
||||
holo.setPosY(0.05f + 1.1f * (float) fp);
|
||||
holo.setRotZ(-0.04f * (float) fp);
|
||||
|
||||
if (stack.getOrCreateTag().getDouble("flash_time") > 0) {
|
||||
flare.setHidden(false);
|
||||
flare.setScaleX((float) (0.8 + 0.5 * (Math.random() - 0.5)));
|
||||
flare.setScaleY((float) (0.8 + 0.5 * (Math.random() - 0.5)));
|
||||
flare.setRotZ((float) (0.5 * (Math.random() - 0.5)));
|
||||
} else {
|
||||
flare.setHidden(true);
|
||||
}
|
||||
holo.setScaleX(0.75f);
|
||||
holo.setScaleY(0.75f);
|
||||
|
||||
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);
|
||||
|
||||
|
|
|
@ -48,11 +48,19 @@ public class TaserItemModel extends GeoModel<Taser> {
|
|||
bar.setScaleX((float) ItemNBTTool.getInt(stack, TAG_POWER, 1200) / 1200);
|
||||
|
||||
if (ItemNBTTool.getInt(stack, TAG_POWER, 1200) >= 400) {
|
||||
bluecover.setHidden(false);
|
||||
redcover.setHidden(true);
|
||||
bluecover.setScaleX(1);
|
||||
bluecover.setScaleY(1);
|
||||
bluecover.setScaleZ(1);
|
||||
redcover.setScaleX(0);
|
||||
redcover.setScaleY(0);
|
||||
redcover.setScaleZ(0);
|
||||
} else {
|
||||
bluecover.setHidden(true);
|
||||
redcover.setHidden(false);
|
||||
bluecover.setScaleX(0);
|
||||
bluecover.setScaleY(0);
|
||||
bluecover.setScaleZ(0);
|
||||
redcover.setScaleX(1);
|
||||
redcover.setScaleY(1);
|
||||
redcover.setScaleZ(1);
|
||||
}
|
||||
|
||||
double fp = player.getPersistentData().getDouble("fire_pos");
|
||||
|
|
|
@ -51,11 +51,8 @@ public class VectorItemModel extends GeoModel<VectorItem> {
|
|||
kmj.setRotX(0);
|
||||
}
|
||||
|
||||
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.35f * (float) p);
|
||||
|
||||
|
@ -68,11 +65,8 @@ public class VectorItemModel extends GeoModel<VectorItem> {
|
|||
scope.setScaleZ(1f - (0.2f * (float) p));
|
||||
|
||||
CoreGeoBone holo = getAnimationProcessor().getBone("holo");
|
||||
if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming && gun.getPosX() > 2) {
|
||||
holo.setHidden(false);
|
||||
} else {
|
||||
holo.setHidden(true);
|
||||
}
|
||||
|
||||
stack.getOrCreateTag().putBoolean("HoloHidden", !(gun.getPosX() > 2));
|
||||
|
||||
double fp = player.getPersistentData().getDouble("fire_pos");
|
||||
double fr = player.getPersistentData().getDouble("fire_rot");
|
||||
|
@ -95,10 +89,8 @@ public class VectorItemModel extends GeoModel<VectorItem> {
|
|||
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);
|
||||
|
||||
|
|
|
@ -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.MarlinItem;
|
||||
import net.mcreator.superbwarfare.client.layer.MarlinLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.MarlinItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.MarlinItem;
|
||||
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 MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
|
|||
public ItemDisplayContext transformType;
|
||||
protected MarlinItem 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 MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderRecursively(PoseStack stack, MarlinItem 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(MarlinItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -2,16 +2,26 @@ 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.Mk14Item;
|
||||
import net.mcreator.superbwarfare.client.layer.Mk14Layer;
|
||||
import net.mcreator.superbwarfare.client.model.item.Mk14ItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.Mk14Item;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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;
|
||||
|
@ -56,6 +66,88 @@ public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderRecursively(PoseStack stack, Mk14Item 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_ = Minecraft.getInstance().player;
|
||||
ItemStack itemStack = null;
|
||||
if (player_ != null) {
|
||||
itemStack = player_.getMainHandItem();
|
||||
}
|
||||
|
||||
if (name.equals("flare")) {
|
||||
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("rex")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
if (name.equals("jing")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
if (name.equals("qiangguan")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
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(Mk14Item instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -2,16 +2,26 @@ 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.Ntw20;
|
||||
import net.mcreator.superbwarfare.client.layer.Ntw20Layer;
|
||||
import net.mcreator.superbwarfare.client.model.item.Ntw20Model;
|
||||
import net.mcreator.superbwarfare.item.gun.Ntw20;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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;
|
||||
|
@ -56,6 +66,100 @@ public class Ntw20Renderer extends GeoItemRenderer<Ntw20> {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderRecursively(PoseStack stack, Ntw20 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_ = Minecraft.getInstance().player;
|
||||
ItemStack itemStack = null;
|
||||
if (player_ != null) {
|
||||
itemStack = player_.getMainHandItem();
|
||||
}
|
||||
|
||||
if (name.equals("flare")) {
|
||||
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 (name.equals("rex")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
if (name.equals("jing")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
if (name.equals("action")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
if (name.equals("body")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
if (name.equals("base")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
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(Ntw20 instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -1,10 +1,29 @@
|
|||
package net.mcreator.superbwarfare.client.renderer.item;
|
||||
|
||||
import net.mcreator.superbwarfare.item.gun.RpgItem;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.mcreator.superbwarfare.client.layer.RpgLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.RpgItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.RpgItem;
|
||||
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 RpgItemRenderer extends GeoItemRenderer<RpgItem> {
|
||||
public RpgItemRenderer() {
|
||||
|
@ -12,6 +31,107 @@ public class RpgItemRenderer extends GeoItemRenderer<RpgItem> {
|
|||
this.addRenderLayer(new RpgLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(RpgItem 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 RpgItem 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, RpgItem 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, RpgItem 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_ = Minecraft.getInstance().player;
|
||||
ItemStack itemStack = null;
|
||||
if (player_ != null) {
|
||||
itemStack = player_.getMainHandItem();
|
||||
}
|
||||
|
||||
if (name.equals("flare")) {
|
||||
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("Rockets")) {
|
||||
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("empty"));
|
||||
}
|
||||
|
||||
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(RpgItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -1,10 +1,30 @@
|
|||
package net.mcreator.superbwarfare.client.renderer.item;
|
||||
|
||||
import net.mcreator.superbwarfare.item.gun.RpkItem;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.mcreator.superbwarfare.client.layer.RpkLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.RpkItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.RpkItem;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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 RpkItemRenderer extends GeoItemRenderer<RpkItem> {
|
||||
public RpkItemRenderer() {
|
||||
|
@ -12,6 +32,114 @@ public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
|
|||
this.addRenderLayer(new RpkLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(RpkItem 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 RpkItem 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, RpkItem 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, RpkItem 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();
|
||||
}
|
||||
if (player != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
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(RpkItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -1,10 +1,32 @@
|
|||
package net.mcreator.superbwarfare.client.renderer.item;
|
||||
|
||||
import net.mcreator.superbwarfare.item.gun.SentinelItem;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.mcreator.superbwarfare.client.layer.SentinelLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.SentinelItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.SentinelItem;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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 net.minecraftforge.common.capabilities.ForgeCapabilities;
|
||||
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;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> {
|
||||
public SentinelItemRenderer() {
|
||||
|
@ -12,6 +34,122 @@ public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> {
|
|||
this.addRenderLayer(new SentinelLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(SentinelItem 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 SentinelItem 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, SentinelItem 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, SentinelItem 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_ = Minecraft.getInstance().player;
|
||||
ItemStack itemStack = null;
|
||||
if (player_ != null) {
|
||||
itemStack = player_.getMainHandItem();
|
||||
}
|
||||
|
||||
if (name.equals("flare")) {
|
||||
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")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
AtomicBoolean flag = new AtomicBoolean(false);
|
||||
if (itemStack != null) {
|
||||
itemStack.getCapability(ForgeCapabilities.ENERGY).ifPresent(
|
||||
iEnergyStorage -> flag.set(iEnergyStorage.getEnergyStored() > 0)
|
||||
);
|
||||
}
|
||||
|
||||
if (name.equals("charge")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!flag.get());
|
||||
}
|
||||
}
|
||||
|
||||
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(SentinelItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -1,10 +1,30 @@
|
|||
package net.mcreator.superbwarfare.client.renderer.item;
|
||||
|
||||
import net.mcreator.superbwarfare.item.gun.SksItem;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.mcreator.superbwarfare.client.layer.SksLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.SksItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.SksItem;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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 SksItemRenderer extends GeoItemRenderer<SksItem> {
|
||||
public SksItemRenderer() {
|
||||
|
@ -12,6 +32,114 @@ public class SksItemRenderer extends GeoItemRenderer<SksItem> {
|
|||
this.addRenderLayer(new SksLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(SksItem 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 SksItem 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, SksItem 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, SksItem 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();
|
||||
}
|
||||
if (player != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
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(SksItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -2,16 +2,26 @@ 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.SvdItem;
|
||||
import net.mcreator.superbwarfare.client.layer.SvdLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.SvdItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.SvdItem;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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;
|
||||
|
@ -56,6 +66,92 @@ public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderRecursively(PoseStack stack, SvdItem 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_ = Minecraft.getInstance().player;
|
||||
ItemStack itemStack = null;
|
||||
if (player_ != null) {
|
||||
itemStack = player_.getMainHandItem();
|
||||
}
|
||||
|
||||
if (name.equals("flare")) {
|
||||
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")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
// if (name.equals("glass")) {
|
||||
// if (player_ != null) {
|
||||
// bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
// }
|
||||
// }
|
||||
|
||||
if (name.equals("glass")) {
|
||||
bone.setHidden(true);
|
||||
}
|
||||
|
||||
if (name.equals("handguard")) {
|
||||
if (player_ != null) {
|
||||
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden") && player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
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(SvdItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -1,11 +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.TaserLayer;
|
||||
import net.mcreator.superbwarfare.client.layer.TaserLayer2;
|
||||
import net.mcreator.superbwarfare.item.gun.Taser;
|
||||
import net.mcreator.superbwarfare.client.model.item.TaserItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.Taser;
|
||||
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 TaserItemRenderer extends GeoItemRenderer<Taser> {
|
||||
public TaserItemRenderer() {
|
||||
|
@ -14,6 +32,86 @@ public class TaserItemRenderer extends GeoItemRenderer<Taser> {
|
|||
this.addRenderLayer(new TaserLayer2(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(Taser 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 Taser 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, Taser 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, Taser 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(Taser instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -1,10 +1,30 @@
|
|||
package net.mcreator.superbwarfare.client.renderer.item;
|
||||
|
||||
import net.mcreator.superbwarfare.item.gun.VectorItem;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||
import net.mcreator.superbwarfare.client.layer.VectorLayer;
|
||||
import net.mcreator.superbwarfare.client.model.item.VectorItemModel;
|
||||
import net.mcreator.superbwarfare.item.gun.VectorItem;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
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 VectorItemRenderer extends GeoItemRenderer<VectorItem> {
|
||||
public VectorItemRenderer() {
|
||||
|
@ -12,6 +32,98 @@ public class VectorItemRenderer extends GeoItemRenderer<VectorItem> {
|
|||
this.addRenderLayer(new VectorLayer(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public RenderType getRenderType(VectorItem 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 VectorItem 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, VectorItem 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, VectorItem 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("holo")) {
|
||||
Player player = Minecraft.getInstance().player;
|
||||
ItemStack itemStack = null;
|
||||
if (player != null) {
|
||||
itemStack = player.getMainHandItem();
|
||||
}
|
||||
if (player != null) {
|
||||
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
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(VectorItem instance) {
|
||||
return super.getTextureLocation(instance);
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
|
||||
package net.mcreator.superbwarfare.client.screens;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.screens.inventory.InventoryScreen;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.RenderGuiEvent;
|
||||
import net.minecraftforge.eventbus.api.EventPriority;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
|
||||
@Mod.EventBusSubscriber({Dist.CLIENT})
|
||||
public class ArmRendererFixOverlay {
|
||||
@SubscribeEvent(priority = EventPriority.NORMAL)
|
||||
public static void eventHandler(RenderGuiEvent.Pre event) {
|
||||
int w = event.getWindow().getGuiScaledWidth();
|
||||
int h = event.getWindow().getGuiScaledHeight();
|
||||
Player entity = Minecraft.getInstance().player;
|
||||
if (entity != null) {
|
||||
InventoryScreen.renderEntityInInventoryFollowsAngle(event.getGuiGraphics(), w / 2 - 114514, h / 2 + 22, 1, 0f, 0, entity);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -9,7 +9,6 @@ import net.mcreator.superbwarfare.init.ModItems;
|
|||
import net.mcreator.superbwarfare.init.ModSounds;
|
||||
import net.mcreator.superbwarfare.init.ModTags;
|
||||
import net.mcreator.superbwarfare.item.AnimatedItem;
|
||||
import net.mcreator.superbwarfare.network.ModVariables;
|
||||
import net.mcreator.superbwarfare.tools.GunsTool;
|
||||
import net.mcreator.superbwarfare.tools.RarityTool;
|
||||
import net.mcreator.superbwarfare.tools.TooltipTool;
|
||||
|
@ -129,10 +128,6 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
|
|||
|
||||
if (this.animationProcedure.equals("empty")) {
|
||||
|
||||
if ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).zooming && stack.getOrCreateTag().getInt("bolt_action_anim") > 0) {
|
||||
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.shift2"));
|
||||
}
|
||||
|
||||
if (stack.getOrCreateTag().getInt("bolt_action_anim") > 0) {
|
||||
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.shift"));
|
||||
}
|
||||
|
|
|
@ -9,6 +9,14 @@
|
|||
"scale": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -65,6 +73,14 @@
|
|||
"easing": "easeOutSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -137,6 +153,14 @@
|
|||
"vector": [-0.3, -0.3, 0.3]
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -292,6 +316,14 @@
|
|||
"scale": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -310,6 +342,14 @@
|
|||
"scale": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -372,15 +412,15 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.0833": {
|
||||
"vector": [5.32205, -11.40296, 4.10285],
|
||||
"vector": [-5.322, 11.403, 4.10285],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.25": {
|
||||
"vector": [20.32, -11.4, 4.1],
|
||||
"vector": [-20.32, 11.4, 4.1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [5.32205, -11.40296, 4.10285],
|
||||
"vector": [-5.322, 11.403, 4.10285],
|
||||
"easing": "easeInOutCubic"
|
||||
},
|
||||
"0.5333": {
|
||||
|
@ -546,6 +586,14 @@
|
|||
"easing": "easeInElastic"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -608,15 +656,15 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.0667": {
|
||||
"vector": [5.32205, -11.40296, 4.10285],
|
||||
"vector": [-5.322, 11.403, 4.10285],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.1667": {
|
||||
"vector": [20.32, -11.4, 4.1],
|
||||
"vector": [-20.32, 11.4, 4.1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.2833": {
|
||||
"vector": [5.32205, -11.40296, 4.10285],
|
||||
"vector": [-5.322, 11.403, 4.10285],
|
||||
"easing": "easeInOutCubic"
|
||||
},
|
||||
"0.4167": {
|
||||
|
@ -779,6 +827,14 @@
|
|||
"vector": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"position": {
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -815,22 +871,22 @@
|
|||
"Lefthand": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"0.0833": {
|
||||
"vector": [-1.12286, 7.82711, -19.68823]
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
},
|
||||
"0.25": {
|
||||
"vector": [12.69213, -0.68315, -40.25932],
|
||||
"vector": [-69.73114, -16.81988, 61.84372],
|
||||
"easing": "linear"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
},
|
||||
"0.0833": {
|
||||
"vector": [3.24949, 1.77211, -0.93576]
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
},
|
||||
"0.1333": {
|
||||
"vector": [3.71625, 2.71032, -0.24509]
|
||||
|
@ -929,20 +985,20 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3167": {
|
||||
"vector": [2.49898, 18.30589, 22.22575],
|
||||
"vector": [-2.499, -18.3059, 22.22575],
|
||||
"easing": "easeOutCirc"
|
||||
},
|
||||
"0.4167": {
|
||||
"vector": [5.54139, 16.26529, 25.40123]
|
||||
"vector": [-5.5414, -16.2653, 25.40123]
|
||||
},
|
||||
"0.5333": {
|
||||
"vector": [4.52498, 24.12049, 46.3089]
|
||||
"vector": [-4.525, -24.1205, 46.3089]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [4.52498, 24.12049, 46.3089]
|
||||
"vector": [-4.525, -24.1205, 46.3089]
|
||||
},
|
||||
"0.7083": {
|
||||
"vector": [2.98434, 25.08442, 28.7855]
|
||||
"vector": [-2.9843, -25.0844, 28.7855]
|
||||
},
|
||||
"0.8333": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -982,11 +1038,11 @@
|
|||
"Lefthand": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [12.69213, -0.68315, -40.25932],
|
||||
"vector": [-72.73114, -16.81988, 61.84372],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.8333": {
|
||||
"vector": [12.69213, -0.68315, -40.25932],
|
||||
"vector": [-72.73114, -16.81988, 61.84372],
|
||||
"easing": "linear"
|
||||
}
|
||||
},
|
||||
|
@ -1176,20 +1232,20 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3167": {
|
||||
"vector": [2.49898, 18.30589, 22.22575],
|
||||
"vector": [-2.499, -18.3059, 22.22575],
|
||||
"easing": "easeOutCirc"
|
||||
},
|
||||
"0.4167": {
|
||||
"vector": [5.54139, 16.26529, 25.40123]
|
||||
"vector": [-5.5414, -16.2653, 25.40123]
|
||||
},
|
||||
"0.5333": {
|
||||
"vector": [4.52498, 24.12049, 46.3089]
|
||||
"vector": [-4.525, -24.1205, 46.3089]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [4.52498, 24.12049, 46.3089]
|
||||
"vector": [-4.525, -24.1205, 46.3089]
|
||||
},
|
||||
"0.7083": {
|
||||
"vector": [2.98434, 25.08442, 28.7855]
|
||||
"vector": [-2.9843, -25.0844, 28.7855]
|
||||
},
|
||||
"0.8333": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -1229,11 +1285,11 @@
|
|||
"Lefthand": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [12.69213, -0.68315, -40.25932],
|
||||
"vector": [-72.73114, -16.81988, 61.84372],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.8333": {
|
||||
"vector": [12.69213, -0.68315, -40.25932],
|
||||
"vector": [-72.73114, -16.81988, 61.84372],
|
||||
"easing": "linear"
|
||||
}
|
||||
},
|
||||
|
@ -1430,15 +1486,15 @@
|
|||
"Righthand": {
|
||||
"rotation": {
|
||||
"0.1417": {
|
||||
"vector": [5.32205, -11.40296, 4.10285],
|
||||
"vector": [-5.322, 11.403, 4.10285],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.3417": {
|
||||
"vector": [20.32, -11.4, 4.1],
|
||||
"vector": [-20.32, 11.4, 4.1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.5417": {
|
||||
"vector": [5.32205, -11.40296, 4.10285],
|
||||
"vector": [-5.322, 11.403, 4.10285],
|
||||
"easing": "easeInOutCubic"
|
||||
},
|
||||
"0.675": {
|
||||
|
@ -1466,14 +1522,14 @@
|
|||
"Lefthand": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [12.69213, -0.68315, -40.25932],
|
||||
"vector": [-69.73114, -16.81988, 61.84372],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.325": {
|
||||
"vector": [6.76668, 20.84565, -53.2677]
|
||||
"vector": [-46.1235, -16.17767, 13.61388]
|
||||
},
|
||||
"0.575": {
|
||||
"vector": [0, 0, 0]
|
||||
"vector": [-36.92278, -14.87784, 55.91421]
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
|
@ -1481,20 +1537,14 @@
|
|||
"vector": [3.68428, 6.19247, 0.90079],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.1417": {
|
||||
"vector": [6.22315, 6.73629, -0.78026]
|
||||
},
|
||||
"0.325": {
|
||||
"vector": [5.49541, 9.67444, -0.19151]
|
||||
"vector": [3.72757, 8.02813, -1.43582]
|
||||
},
|
||||
"0.4583": {
|
||||
"vector": [4.30609, 2.64766, -2.19]
|
||||
},
|
||||
"0.5417": {
|
||||
"vector": [0.99563, 0.39672, -0.63]
|
||||
"vector": [2.00609, 4.04766, -2.19]
|
||||
},
|
||||
"0.575": {
|
||||
"vector": [0, 0, 0]
|
||||
"vector": [-1.3, 1.55, -1.15]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -145,7 +145,7 @@
|
|||
},
|
||||
"animation.m14.run_fast": {
|
||||
"loop": true,
|
||||
"animation_length": 0.7,
|
||||
"animation_length": 0.725,
|
||||
"bones": {
|
||||
"0": {
|
||||
"rotation": {
|
||||
|
@ -548,15 +548,15 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.525": {
|
||||
"vector": [20.35457, 19.16824, 27.5538],
|
||||
"vector": [-10.28, 21.2, 15.1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.675": {
|
||||
"vector": [15.07652, 16.71082, 15.11822],
|
||||
"vector": [-10.27945, 21.19767, 15.09535],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.05": {
|
||||
"vector": [15.07652, 16.71082, 15.11822],
|
||||
"vector": [-10.27945, 21.19767, 15.09535],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.45": {
|
||||
|
@ -569,15 +569,15 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.525": {
|
||||
"vector": [0, 0.1, 7.9],
|
||||
"vector": [-0.8, 0.7, 7.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.675": {
|
||||
"vector": [0, 0.1, 7.1],
|
||||
"vector": [-0.8, 0.7, 7.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.05": {
|
||||
"vector": [0, 0.1, 7.1],
|
||||
"vector": [-0.8, 0.7, 7.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.45": {
|
||||
|
@ -608,18 +608,18 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"2.825": {
|
||||
"vector": [-8.03962, 11.95555, -4.15338],
|
||||
"vector": [8.0396, -11.9556, -4.15338],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.0": {
|
||||
"vector": [-8.03718, 13.13495, 1.77723]
|
||||
"vector": [8.0372, -13.1349, 1.77723]
|
||||
},
|
||||
"3.2": {
|
||||
"vector": [-7.93653, 10.93397, -4.86892],
|
||||
"vector": [7.9365, -10.934, -4.86892],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.35": {
|
||||
"vector": [0.99556, 10.40823, -15.83892],
|
||||
"vector": [-0.9956, -10.4082, -15.83892],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"3.525": {
|
||||
|
@ -770,11 +770,6 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.0": {
|
||||
"effect": "mk_14_reload_empty"
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.m14.reload_normal": {
|
||||
|
@ -983,15 +978,15 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.525": {
|
||||
"vector": [20.35457, 19.16824, 27.5538],
|
||||
"vector": [-10.28, 21.2, 15.1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.675": {
|
||||
"vector": [15.07652, 16.71082, 15.11822],
|
||||
"vector": [-10.27945, 21.19767, 15.09535],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.05": {
|
||||
"vector": [15.07652, 16.71082, 15.11822],
|
||||
"vector": [-10.27945, 21.19767, 15.09535],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.45": {
|
||||
|
@ -1004,15 +999,15 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.525": {
|
||||
"vector": [0, 0.1, 7.9],
|
||||
"vector": [-0.8, 0.7, 7.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.675": {
|
||||
"vector": [0, 0.1, 7.1],
|
||||
"vector": [-0.8, 0.7, 7.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.05": {
|
||||
"vector": [0, 0.1, 7.1],
|
||||
"vector": [-0.8, 0.7, 7.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.45": {
|
||||
|
@ -1113,11 +1108,6 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.0": {
|
||||
"effect": "mk_14_reload_normal"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -215,7 +215,7 @@
|
|||
},
|
||||
"Righthand": {
|
||||
"rotation": {
|
||||
"vector": [6.14572, 9.14706, -6.29764]
|
||||
"vector": [-6.1457, -9.1471, -6.29764]
|
||||
},
|
||||
"position": {
|
||||
"vector": [1.52734, 0.09375, 1.92969]
|
||||
|
@ -386,57 +386,57 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-141.04367, -31.09727, 4.50202]
|
||||
"vector": [141.0437, 31.0973, 4.50202]
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [-99.19, -30.23, 8.59]
|
||||
"vector": [99.19, 30.23, 8.59]
|
||||
},
|
||||
"1.1": {
|
||||
"vector": [-57.34, -29.37, 12.68]
|
||||
"vector": [57.34, 29.37, 12.68]
|
||||
},
|
||||
"1.3": {
|
||||
"vector": [-4.12077, -31.60552, 16.4981]
|
||||
"vector": [4.1208, 31.6055, 16.4981]
|
||||
},
|
||||
"1.6": {
|
||||
"vector": [-12.2, -20.4, 5.1]
|
||||
"vector": [12.2, 20.4, 5.1]
|
||||
},
|
||||
"1.8": {
|
||||
"vector": [-17.5872, -12.92521, -2.49731]
|
||||
"vector": [17.5872, 12.9252, -2.49731]
|
||||
},
|
||||
"1.9": {
|
||||
"vector": [-5.5872, -9.92521, -12.49731],
|
||||
"vector": [5.5872, 9.9252, -12.49731],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"2.0": {
|
||||
"vector": [-17.5872, -9.92521, -23.49731],
|
||||
"vector": [17.5872, 9.9252, -23.49731],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"2.3": {
|
||||
"vector": [-17.5872, -12.92521, 23.50269]
|
||||
"vector": [17.5872, 12.9252, 23.50269]
|
||||
},
|
||||
"2.5": {
|
||||
"vector": [-17.5872, -12.92521, -2.49731]
|
||||
"vector": [17.5872, 12.9252, -2.49731]
|
||||
},
|
||||
"2.8": {
|
||||
"vector": [11.41661, -4.9823, 17.59188],
|
||||
"vector": [-11.4166, 4.9823, 17.59188],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"2.9": {
|
||||
"vector": [11.41661, -4.9823, 17.59188],
|
||||
"vector": [-11.4166, 4.9823, 17.59188],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"3.1": {
|
||||
"vector": [-0.39232, -6.37027, -13.80709]
|
||||
"vector": [0.3923, 6.3703, -13.80709]
|
||||
},
|
||||
"3.2": {
|
||||
"vector": [-0.39232, -6.37027, -13.80709]
|
||||
"vector": [0.3923, 6.3703, -13.80709]
|
||||
},
|
||||
"3.4": {
|
||||
"vector": [11.41661, -4.9823, 17.59188],
|
||||
"vector": [-11.4166, 4.9823, 17.59188],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"3.8": {
|
||||
"vector": [25.17572, -31.49409, 0.56802],
|
||||
"vector": [-25.1757, 31.4941, 0.56802],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"4.1": {
|
||||
|
@ -683,7 +683,7 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"4.3": {
|
||||
"vector": [-4, 3, 8]
|
||||
"vector": [4, -3, 8]
|
||||
},
|
||||
"4.5": {
|
||||
"vector": [0, 0, 0]
|
||||
|
|
|
@ -3,17 +3,7 @@
|
|||
"animations": {
|
||||
"animation.ak47.idle": {
|
||||
"loop": true,
|
||||
"animation_length": 1,
|
||||
"bones": {
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
},
|
||||
"position": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
}
|
||||
}
|
||||
}
|
||||
"animation_length": 1
|
||||
},
|
||||
"animation.ak47.draw": {
|
||||
"animation_length": 0.9,
|
||||
|
@ -51,14 +41,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
},
|
||||
"position": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
}
|
||||
},
|
||||
"camera": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
|
@ -124,11 +106,11 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.2": {
|
||||
"vector": [-0.78478, 1.92167, -26.98046],
|
||||
"vector": [0.7848, -1.9217, -26.98046],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [8.15618, 10.19589, -5.96653],
|
||||
"vector": [-8.1562, -10.1959, -5.96653],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.5": {
|
||||
|
@ -149,14 +131,6 @@
|
|||
"easing": "easeInOutSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
},
|
||||
"position": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -205,11 +179,11 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.2": {
|
||||
"vector": [8.15618, 10.19589, -5.96653],
|
||||
"vector": [-8.1562, -10.1959, -5.96653],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [5.21522, 1.92167, -26.98046],
|
||||
"vector": [-5.2152, -1.9217, -26.98046],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.5": {
|
||||
|
@ -233,14 +207,6 @@
|
|||
"easing": "easeInOutSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
},
|
||||
"position": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -308,14 +274,6 @@
|
|||
"vector": [-0.3, -0.3, 0.3]
|
||||
}
|
||||
}
|
||||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
},
|
||||
"position": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -403,17 +361,7 @@
|
|||
},
|
||||
"animation.ak47.fire": {
|
||||
"animation_length": 0.05,
|
||||
"override_previous_animation": true,
|
||||
"bones": {
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
},
|
||||
"position": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
}
|
||||
}
|
||||
}
|
||||
"override_previous_animation": true
|
||||
},
|
||||
"animation.ak47.reload_empty": {
|
||||
"loop": "hold_on_last_frame",
|
||||
|
@ -717,71 +665,78 @@
|
|||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
"0.3167": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.1333": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
"0.4333": {
|
||||
"vector": [21.5018, 24.86704, -19.88085],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.2833": {
|
||||
"vector": [-5.59992, -15.19651, 11.81238]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [14.12373, -11.09281, 25.14677]
|
||||
},
|
||||
"2.3": {
|
||||
"vector": [14.12373, -11.09281, 25.14677]
|
||||
},
|
||||
"2.3833": {
|
||||
"vector": [26.69687, -23.84553, 18.95298]
|
||||
},
|
||||
"2.5333": {
|
||||
"vector": [39.4566, -33.52813, 36.0472]
|
||||
},
|
||||
"2.6167": {
|
||||
"vector": [21.75908, -21.54018, 13.02377],
|
||||
"0.7": {
|
||||
"vector": [21.5018, 24.86704, -19.88085],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7167": {
|
||||
"vector": [21.75908, -21.54018, 13.02377]
|
||||
"2.3833": {
|
||||
"vector": [21.5018, 24.86704, -19.88085],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.0333": {
|
||||
"vector": [8.3734, -16.00221, -1.42197]
|
||||
"2.5667": {
|
||||
"vector": [15.98147, 57.29761, 1.4882],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.1167": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
"2.6833": {
|
||||
"vector": [17.10695, 28.59421, -18.3759],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7333": {
|
||||
"vector": [17.10695, 28.59421, -18.3759],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.8": {
|
||||
"vector": [21.19557, 27.6615, -18.74727],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.0833": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeOutSine"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
"0.3167": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.1667": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
"0.5": {
|
||||
"vector": [-2.29096, -0.9323, 6.56616]
|
||||
},
|
||||
"0.4167": {
|
||||
"vector": [-0.60795, -2.68839, 4.36626]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082]
|
||||
},
|
||||
"2.3": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082]
|
||||
},
|
||||
"2.5333": {
|
||||
"vector": [-2.72279, -0.4342, 9.52345],
|
||||
"0.6167": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.6167": {
|
||||
"vector": [-2.86, -1.59, 7.89],
|
||||
"0.7": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7167": {
|
||||
"vector": [-2.86, -1.59, 7.89],
|
||||
"2.3833": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.1167": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
"2.5667": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.6833": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7333": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.95": {
|
||||
"vector": [-1.18452, -0.34374, 2.77435]
|
||||
},
|
||||
"3.0833": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -791,22 +746,22 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"3.35": {
|
||||
"vector": [8.28212, 20.95701, 9.9358]
|
||||
"vector": [-8.2821, -20.957, 9.9358]
|
||||
},
|
||||
"3.45": {
|
||||
"vector": [-1.95978, 11.17581, -2.65919]
|
||||
"vector": [1.9598, -11.1758, -2.65919]
|
||||
},
|
||||
"3.55": {
|
||||
"vector": [-1.95978, 11.17581, -2.65919]
|
||||
"vector": [1.9598, -11.1758, -2.65919]
|
||||
},
|
||||
"3.65": {
|
||||
"vector": [-1.95978, 11.17581, -2.65919]
|
||||
"vector": [1.9598, -11.1758, -2.65919]
|
||||
},
|
||||
"3.75": {
|
||||
"vector": [-1.95978, 11.17581, -2.65919]
|
||||
"vector": [1.9598, -11.1758, -2.65919]
|
||||
},
|
||||
"4.05": {
|
||||
"vector": [19.28212, 20.95701, 9.9358]
|
||||
"vector": [-19.2821, -20.957, 9.9358]
|
||||
},
|
||||
"4.15": {
|
||||
"vector": [0, 0, 0],
|
||||
|
@ -942,7 +897,7 @@
|
|||
},
|
||||
"sound_effects": {
|
||||
"0.0": {
|
||||
"effect": "devotion_reload_empty"
|
||||
"effect": "rpk_reload_empty"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -1183,71 +1138,78 @@
|
|||
},
|
||||
"Lefthand": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
"0.3167": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.1333": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
"0.4333": {
|
||||
"vector": [21.5018, 24.86704, -19.88085],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.2833": {
|
||||
"vector": [0, 0, 26]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [14.12373, -11.09281, 25.14677]
|
||||
},
|
||||
"2.3": {
|
||||
"vector": [14.12373, -11.09281, 25.14677]
|
||||
},
|
||||
"2.3833": {
|
||||
"vector": [26.69687, -23.84553, 18.95298]
|
||||
},
|
||||
"2.5333": {
|
||||
"vector": [39.4566, -33.52813, 36.0472]
|
||||
},
|
||||
"2.6167": {
|
||||
"vector": [21.75908, -21.54018, 13.02377],
|
||||
"0.7": {
|
||||
"vector": [21.5018, 24.86704, -19.88085],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7167": {
|
||||
"vector": [21.75908, -21.54018, 13.02377]
|
||||
"2.3833": {
|
||||
"vector": [21.5018, 24.86704, -19.88085],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.0333": {
|
||||
"vector": [8.3734, -16.00221, -1.42197]
|
||||
"2.5667": {
|
||||
"vector": [15.98147, 57.29761, 1.4882],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.1167": {
|
||||
"vector": [-13.63191, -29.3657, -16.88895]
|
||||
"2.6833": {
|
||||
"vector": [17.10695, 28.59421, -18.3759],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7333": {
|
||||
"vector": [17.10695, 28.59421, -18.3759],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.8": {
|
||||
"vector": [21.19557, 27.6615, -18.74727],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.0833": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeOutSine"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
"0.3167": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.1667": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
"0.5": {
|
||||
"vector": [-2.29096, -0.9323, 6.56616]
|
||||
},
|
||||
"0.4167": {
|
||||
"vector": [-0.60795, -2.68839, 4.36626]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082]
|
||||
},
|
||||
"2.3": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082]
|
||||
},
|
||||
"2.5333": {
|
||||
"vector": [-2.72279, -0.4342, 9.52345],
|
||||
"0.6167": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.6167": {
|
||||
"vector": [-2.86, -1.59, 7.89],
|
||||
"0.7": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7167": {
|
||||
"vector": [-2.86, -1.59, 7.89],
|
||||
"2.3833": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"3.1167": {
|
||||
"vector": [0.025, -0.11563, -1.60625]
|
||||
"2.5667": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.6833": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.7333": {
|
||||
"vector": [-2.22489, -1.18104, 6.66082],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.95": {
|
||||
"vector": [-1.18452, -0.34374, 2.77435]
|
||||
},
|
||||
"3.0833": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -1320,11 +1282,6 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.0": {
|
||||
"effect": "devotion_reload_empty"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -167,7 +167,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]
|
||||
|
@ -229,28 +229,33 @@
|
|||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-2, 0, -4],
|
||||
"0.2": {
|
||||
"vector": [-0.19988, 0.00698, 0.99999],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-1.57113, -0.42828, 13.16089],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-1.92, 0, 19.15],
|
||||
"vector": [-4.4686, -0.19009, 3.51355],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-8.92, 0, 4.15],
|
||||
"easing": "easeInElastic"
|
||||
"0.6": {
|
||||
"vector": [-0.25, -0.5, 4.82]
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [-2.25, -4, 4.82]
|
||||
"vector": [2.28655, 1.56915, 2.11954]
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [1.08, 0, -9.85],
|
||||
"easing": "linear"
|
||||
"vector": [0.92716, 0.58779, -6.48154],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
"vector": [0.49, 0, 0]
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
|
@ -258,90 +263,111 @@
|
|||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"0.1": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-0.1, 0, 1.9],
|
||||
"0.3": {
|
||||
"vector": [-0.21, -0.23, 0.32]
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-0.2, -0.5, 0.3],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-0.3, -0.5, 0.6]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-0.1, 0, 1.6]
|
||||
"vector": [-0.3, -0.5, -1.4]
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [-0.3, 0, -1.9]
|
||||
"vector": [-0.1, -0.2, 0.1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [-0.2, -0.4, 0.5]
|
||||
"vector": [0.14, -0.05, 0.2],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [0.04, 0.1, 0.24478]
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
"easing": "easeOutSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Righthand": {
|
||||
"rotation": {
|
||||
"0.1": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-11.05124, 19.47135, -3.30226],
|
||||
"0.1": {
|
||||
"vector": [16.59544, -8.00389, 2.51994],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.2": {
|
||||
"vector": [19.22102, -14.25631, 14.03819],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [19.22102, -14.25631, 14.03819],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"vector": [19.22102, -14.25631, 14.03819],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"vector": [19.22102, -14.25631, 14.03819],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"vector": [19.22102, -14.25631, 14.03819],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"easing": "easeInSine"
|
||||
"vector": [16.59544, -8.00389, 2.51994],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [-11.05124, 19.47135, -3.30226]
|
||||
},
|
||||
"1.0": {
|
||||
"0.9": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.1": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [1.3, 1.8, 1.1],
|
||||
"0.1": {
|
||||
"vector": [-1, 0.6, -0.5],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.2": {
|
||||
"vector": [-1, 1.5, -0.5],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-1, 1.5, -0.5],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [0.69956, 4.29369, 1.30686],
|
||||
"vector": [-1, 1.5, 2.7],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [0.69956, 4.29369, 4.30686],
|
||||
"vector": [-1, 1.5, 2.7],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0.69956, 4.29369, 4.30686],
|
||||
"vector": [-1, 1.5, -0.5],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [0.69956, 4.29369, 1.30686],
|
||||
"easing": "easeInSine"
|
||||
"vector": [-1, 0.6, -0.5],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [1.3, 1.3, 0.8]
|
||||
},
|
||||
"1.0": {
|
||||
"0.9": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
@ -352,249 +378,54 @@
|
|||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [0, 0, 35],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [0, 0, 35]
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [0, 0, 3.14453],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 0, 3.14453]
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"camera": {
|
||||
"rotation": {
|
||||
"0.1": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-0.5, -0.8, -0.5]
|
||||
"0.2": {
|
||||
"vector": [0, 0, 30],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [0.2, 0.4, 3],
|
||||
"easing": "easeInElastic"
|
||||
"0.3": {
|
||||
"vector": [0, 0, 30],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-0.1, -0.2, -2],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [0, 0, 1.5]
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [0, 0, -0.75]
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.sentinel.shift2": {
|
||||
"animation_length": 1.1,
|
||||
"override_previous_animation": true,
|
||||
"bones": {
|
||||
"0": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-2, 0, -4],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-1.92, 0, 3.15],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-2.92, 0, 1.15],
|
||||
"easing": "easeInElastic"
|
||||
"vector": [0, 0, 30],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [-2.25, -2, 1.82]
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [1.08, 0, -2.85],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [0.00697, -0.0997, -0.00349],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-0.10501, -0.24963, 0.98726],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-0.10628, -0.24967, 1.08873]
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [-0.10759, -0.24969, -1.10981]
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [0.19503, -0.10014, 0.19812]
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInOutSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Righthand": {
|
||||
"rotation": {
|
||||
"0.1": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.2": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [-11.05124, 19.47135, -3.30226],
|
||||
"easing": "linear"
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"vector": [0, 0, 3.2],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"easing": "easeInSine"
|
||||
"vector": [0, 0, 3.2]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [-2.21355, 15.26875, 0.47749],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [-11.05124, 19.47135, -3.30226]
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.1": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [1.3, 1.8, 1.1],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [0.69956, 4.29369, 1.30686],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [0.69956, 4.29369, 4.30686],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0.69956, 4.29369, 4.30686],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [0.69956, 4.29369, 1.30686],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [1.3, 1.3, 0.8]
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
}
|
||||
},
|
||||
"bolt": {
|
||||
"rotation": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [0, 0, 35],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [0, 0, 35]
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"position": {
|
||||
"0.0": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [0, 0, 3.14453],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [0, 0, 3.14453]
|
||||
},
|
||||
"0.7": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.8": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInSine"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -801,22 +632,22 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.325": {
|
||||
"vector": [-7.18968, 20.51373, -8.85702],
|
||||
"vector": [7.1897, -20.5137, -8.85702],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-11.05124, 19.47135, -3.30226]
|
||||
"vector": [11.0512, -19.4714, -3.30226]
|
||||
},
|
||||
"0.475": {
|
||||
"vector": [-9.59401, 27.18618, 35.64132],
|
||||
"vector": [9.594, -27.1862, 35.64132],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.55": {
|
||||
"vector": [-9.59401, 27.18618, 35.64132],
|
||||
"vector": [9.594, -27.1862, 35.64132],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.675": {
|
||||
"vector": [-4.14232, 19.79507, 13.70946]
|
||||
"vector": [4.1423, -19.7951, 13.70946]
|
||||
},
|
||||
"0.775": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -825,18 +656,18 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"3.325": {
|
||||
"vector": [-5.26935, 23.9397, 9.47263]
|
||||
"vector": [5.2693, -23.9397, 9.47263]
|
||||
},
|
||||
"3.4": {
|
||||
"vector": [-14.48597, 25.38509, 36.51757],
|
||||
"vector": [14.486, -25.3851, 36.51757],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"3.5": {
|
||||
"vector": [-9.59401, 27.18618, 35.64132],
|
||||
"vector": [9.594, -27.1862, 35.64132],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"3.6": {
|
||||
"vector": [-11.05124, 19.47135, -3.30226]
|
||||
"vector": [11.0512, -19.4714, -3.30226]
|
||||
},
|
||||
"3.8": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -1007,18 +838,19 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.75": {
|
||||
"vector": [30.584, -3.56838, 4.84324],
|
||||
"vector": [31.4003, 27.5843, -34.88785],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [-3.22206, -3.30648, 2.38196],
|
||||
"vector": [18.8359, 15.4973, -28.28221],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.95": {
|
||||
"vector": [-3.22206, -3.30648, 2.38196]
|
||||
"vector": [18.8359, 15.4973, -28.28221],
|
||||
"easing": "linear"
|
||||
},
|
||||
"3.075": {
|
||||
"vector": [28.632, -17.75227, 3.13551],
|
||||
"vector": [27.6681, 12.1849, -18.97431],
|
||||
"easing": "linear"
|
||||
},
|
||||
"3.225": {
|
||||
|
@ -1031,18 +863,19 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.75": {
|
||||
"vector": [-0.1, 2.5, 13.3],
|
||||
"vector": [-0.1, -1.5, 10.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [-0.9, -3.5, 18.8],
|
||||
"vector": [-1, -1.2, 22.1],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.95": {
|
||||
"vector": [-0.9, -3.5, 18.8]
|
||||
"vector": [-1, -1.2, 22.1],
|
||||
"easing": "linear"
|
||||
},
|
||||
"3.075": {
|
||||
"vector": [-0.26, 1.67, 7.31],
|
||||
"vector": [-0.1, -3.5, 10.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"3.225": {
|
||||
|
@ -1135,11 +968,6 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sound_effects": {
|
||||
"0.0": {
|
||||
"effect": "sentinel_reload"
|
||||
}
|
||||
}
|
||||
},
|
||||
"animation.sentinel.reload_normal": {
|
||||
|
@ -1337,21 +1165,22 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.1": {
|
||||
"vector": [30.584, -3.56838, 4.84324],
|
||||
"vector": [31.4003, 27.5843, -34.88785],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.25": {
|
||||
"vector": [-3.22206, -3.30648, 2.38196],
|
||||
"vector": [18.8359, 15.4973, -28.28221],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.125": {
|
||||
"vector": [-3.22206, -3.30648, 2.38196]
|
||||
},
|
||||
"2.25": {
|
||||
"vector": [28.632, -17.75227, 3.13551],
|
||||
"vector": [18.8359, 15.4973, -28.28221],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.35": {
|
||||
"2.25": {
|
||||
"vector": [27.6681, 12.1849, -18.97431],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.375": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
@ -1361,21 +1190,22 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.1": {
|
||||
"vector": [-0.1, 2.5, 13.3],
|
||||
"vector": [-0.1, -1.5, 10.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.25": {
|
||||
"vector": [-0.9, -3.5, 18.8],
|
||||
"vector": [-1, -1.2, 22.1],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.125": {
|
||||
"vector": [-0.9, -3.5, 18.8]
|
||||
},
|
||||
"2.25": {
|
||||
"vector": [-0.26, 1.67, 7.31],
|
||||
"vector": [-1, -1.2, 22.1],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.35": {
|
||||
"2.25": {
|
||||
"vector": [-0.1, -3.5, 10.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.375": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
@ -1621,33 +1451,42 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.125": {
|
||||
"vector": [16.99, -1.98, 2.69]
|
||||
"vector": [5.2274, 20.401, -3.54905]
|
||||
},
|
||||
"0.325": {
|
||||
"vector": [-3.22206, -3.30648, 2.38196],
|
||||
"vector": [5.7779, -3.3065, 2.38196],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [5.7779, -3.3065, 2.38196],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-3.22, -3.31, 2.38]
|
||||
"vector": [5.7779, -3.3065, 2.38196],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [-3.22, -3.31, 2.38]
|
||||
"vector": [5.7779, -3.3065, 2.38196],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.2": {
|
||||
"vector": [-3.22206, -3.30648, 2.38196],
|
||||
"vector": [5.7779, -3.3065, 2.38196],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.3": {
|
||||
"vector": [-3.22, -3.31, 2.38]
|
||||
"vector": [5.7779, -3.3065, 2.38196],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.5": {
|
||||
"vector": [8.8121, -34.03383, 1.67647]
|
||||
"1.4": {
|
||||
"vector": [46.33526, 34.1097, -55.1921],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.7": {
|
||||
"vector": [30.70796, -27.00128, -12.03297]
|
||||
"1.6": {
|
||||
"vector": [33.06345, 45.06718, -89.58383],
|
||||
"easing": "linear"
|
||||
},
|
||||
"5.3": {
|
||||
"vector": [30.70796, -27.00128, -12.03297]
|
||||
"vector": [33.06345, 45.06718, -89.58383]
|
||||
},
|
||||
"5.8": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -1658,30 +1497,37 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.125": {
|
||||
"vector": [-0.06, 1.39, 2.39]
|
||||
"vector": [-0.06, 1.39, 4.09]
|
||||
},
|
||||
"0.325": {
|
||||
"vector": [-0.9, -1.5, 4.8],
|
||||
"vector": [-0.9, -2.5, 6.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [-0.9, -2.5, 6.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-0.9, -10.5, 4.8]
|
||||
"vector": [-0.9, -11.5, 6.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.0": {
|
||||
"vector": [-0.9, -10.5, 4.8]
|
||||
"vector": [-0.9, -11.5, 6.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.2": {
|
||||
"vector": [-0.9, -1.5, 4.8],
|
||||
"vector": [-0.9, -2.5, 6.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.3": {
|
||||
"vector": [-0.9, -1.5, 4.8]
|
||||
"vector": [-0.9, -2.5, 6.3],
|
||||
"easing": "linear"
|
||||
},
|
||||
"1.7": {
|
||||
"vector": [-4.4, -0.4, 6.9]
|
||||
"1.6": {
|
||||
"vector": [-4.23047, -0.61484, 8.4]
|
||||
},
|
||||
"5.3": {
|
||||
"vector": [-4.4, -0.4, 6.9]
|
||||
"vector": [-4.23047, -0.61484, 8.4]
|
||||
},
|
||||
"5.5": {
|
||||
"vector": [-4.4, -11.5, 7.7],
|
||||
|
|
|
@ -419,30 +419,30 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.5167": {
|
||||
"vector": [-10.23301, -10.25955, 3.51854],
|
||||
"vector": [10.233, 10.2595, 3.51854],
|
||||
"easing": "easeOutQuad"
|
||||
},
|
||||
"0.8833": {
|
||||
"vector": [2.20817, -18.39622, 7.06347],
|
||||
"vector": [-2.2082, 18.3962, 7.06347],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"1.1167": {
|
||||
"vector": [-25.86792, -14.68451, 0.99936],
|
||||
"vector": [25.8679, 14.6845, 0.99936],
|
||||
"easing": "easeInOutQuad"
|
||||
},
|
||||
"1.3": {
|
||||
"vector": [-26.48047, -21.39686, -3.31204]
|
||||
"vector": [26.4805, 21.3969, -3.31204]
|
||||
},
|
||||
"1.4667": {
|
||||
"vector": [-14.31753, -15.08281, -6.04184],
|
||||
"vector": [14.3175, 15.0828, -6.04184],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [-14.31753, -15.08281, -6.04184],
|
||||
"vector": [14.3175, 15.0828, -6.04184],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"1.75": {
|
||||
"vector": [-0.4978, -22.90313, 5.97238]
|
||||
"vector": [0.4978, 22.9031, 5.97238]
|
||||
},
|
||||
"1.9333": {
|
||||
"vector": [0, 0, 18],
|
||||
|
@ -665,16 +665,16 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"2.35": {
|
||||
"vector": [1.1949, 18.48864, -2.92622]
|
||||
"vector": [-1.1949, -18.4886, -2.92622]
|
||||
},
|
||||
"2.45": {
|
||||
"vector": [4.38543, 15.49955, 7.21206]
|
||||
"vector": [-4.33567, -13.68659, 8.05816]
|
||||
},
|
||||
"2.7167": {
|
||||
"vector": [4.38543, 15.49955, 7.21206]
|
||||
"vector": [-4.33567, -13.68659, 8.05816]
|
||||
},
|
||||
"3.0": {
|
||||
"vector": [1.25248, 18.45031, -0.01712]
|
||||
"vector": [-1.2105, -14.92184, 1.86779]
|
||||
},
|
||||
"3.2167": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -685,18 +685,18 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"2.45": {
|
||||
"vector": [0.42345, 2.24153, -3.94724]
|
||||
"vector": [0.42345, 2.24153, -4.94724]
|
||||
},
|
||||
"2.55": {
|
||||
"vector": [0.42, 2.24, -3.25],
|
||||
"vector": [0.42, 2.24, -4.25],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"2.7167": {
|
||||
"vector": [0.42, 2.24, -3.25],
|
||||
"vector": [0.42, 2.24, -4.25],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"2.8833": {
|
||||
"vector": [0.42, 2.24, -6.45],
|
||||
"vector": [0.42, 2.24, -7.45],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"3.2167": {
|
||||
|
@ -923,34 +923,34 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.5333": {
|
||||
"vector": [-10.23301, -10.25955, 3.51854],
|
||||
"vector": [10.233, 10.2595, 3.51854],
|
||||
"easing": "easeOutQuad"
|
||||
},
|
||||
"0.9": {
|
||||
"vector": [2.20817, -18.39622, 7.06347],
|
||||
"vector": [-2.2082, 18.3962, 7.06347],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"1.1333": {
|
||||
"vector": [-25.86792, -14.68451, 0.99936],
|
||||
"vector": [25.8679, 14.6845, 0.99936],
|
||||
"easing": "easeInOutQuad"
|
||||
},
|
||||
"1.3167": {
|
||||
"vector": [-26.48047, -21.39686, -3.31204]
|
||||
"vector": [26.4805, 21.3969, -3.31204]
|
||||
},
|
||||
"1.4833": {
|
||||
"vector": [-14.31753, -15.08281, -6.04184],
|
||||
"vector": [14.3175, 15.0828, -6.04184],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"1.5667": {
|
||||
"vector": [-14.31753, -15.08281, -6.04184],
|
||||
"vector": [14.3175, 15.0828, -6.04184],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"1.7333": {
|
||||
"vector": [4.67258, -14.84218, -5.84346],
|
||||
"vector": [-4.6726, 14.8422, -5.84346],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"2.05": {
|
||||
"vector": [16.33545, -11.71775, -9.83624],
|
||||
"vector": [-16.3355, 11.7178, -9.83624],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"2.3": {
|
||||
|
|
|
@ -393,64 +393,64 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.5667": {
|
||||
"vector": [23.76699, -10.25955, 3.51854],
|
||||
"vector": [-23.767, 10.2595, 3.51854],
|
||||
"easing": "easeOutQuad"
|
||||
},
|
||||
"0.8333": {
|
||||
"vector": [7.91868, -26.40156, -38.05763],
|
||||
"vector": [-6.6691, 35.19997, -33.13891],
|
||||
"easing": "linear"
|
||||
},
|
||||
"0.9667": {
|
||||
"vector": [1.80318, -46.73371, -21.59127]
|
||||
"vector": [2.26755, 54.83907, -14.45566]
|
||||
},
|
||||
"1.15": {
|
||||
"vector": [20.31232, -51.51215, -24.79233]
|
||||
"vector": [-17.88908, 61.09757, -21.04953]
|
||||
},
|
||||
"1.2333": {
|
||||
"vector": [10.28121, -44.51965, -13.55683]
|
||||
"vector": [-7.35039, 53.44333, -8.17226]
|
||||
},
|
||||
"1.3": {
|
||||
"vector": [14.55032, -23.40856, -0.72828]
|
||||
"vector": [-14.2423, 28.06613, 1.11675]
|
||||
},
|
||||
"1.3667": {
|
||||
"vector": [2.81649, -23.73622, -1.68109]
|
||||
"vector": [-2.60924, 25.83237, -0.30296]
|
||||
},
|
||||
"1.3833": {
|
||||
"vector": [3.5619, -22.04452, -2.75543]
|
||||
"vector": [-3.18454, 26.26856, -0.05303]
|
||||
},
|
||||
"1.4167": {
|
||||
"vector": [4.67363, -23.73622, -1.68109]
|
||||
"vector": [-4.47631, 25.87553, -0.37251]
|
||||
},
|
||||
"1.45": {
|
||||
"vector": [4.79544, -22.02191, -2.71842]
|
||||
"vector": [-4.63817, 24.16442, -1.42053]
|
||||
},
|
||||
"1.5333": {
|
||||
"vector": [7.72777, -22.9743, -2.14213]
|
||||
"vector": [-7.56357, 25.17985, -0.95355]
|
||||
},
|
||||
"1.6": {
|
||||
"vector": [4.67363, -23.73622, -1.68109]
|
||||
"vector": [-4.6736, 23.7362, -1.68109]
|
||||
},
|
||||
"1.65": {
|
||||
"vector": [4.67363, -23.73622, -1.68109]
|
||||
"vector": [-4.6736, 23.7362, -1.68109]
|
||||
},
|
||||
"1.8167": {
|
||||
"vector": [-6.78199, -4.07081, 10.69071]
|
||||
"vector": [6.782, 4.0708, 10.69071]
|
||||
},
|
||||
"1.9667": {
|
||||
"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.75": {
|
||||
"vector": [16.56356, -9.00013, 11.40462]
|
||||
"vector": [-16.5636, 9.0001, 11.40462]
|
||||
},
|
||||
"3.05": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -1045,45 +1045,45 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.25": {
|
||||
"vector": [-3.81928, -8.59364, -9.17363]
|
||||
"vector": [3.8193, 8.5936, -9.17363]
|
||||
},
|
||||
"0.3333": {
|
||||
"vector": [0, 1.5, 1]
|
||||
"vector": [0, -1.5, 1]
|
||||
},
|
||||
"0.4167": {
|
||||
"vector": [0, 1.5, 1]
|
||||
"vector": [0, -1.5, 1]
|
||||
},
|
||||
"0.5": {
|
||||
"vector": [9.1979, -5.79583, 8.71524]
|
||||
"vector": [-9.1979, 5.7958, 8.71524]
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [10.8863, -6.69443, 6.90149]
|
||||
"vector": [-10.8863, 6.6944, 6.90149]
|
||||
},
|
||||
"0.6667": {
|
||||
"vector": [10.8863, -6.69443, 6.90149]
|
||||
"vector": [-10.8863, 6.6944, 6.90149]
|
||||
},
|
||||
"1.0417": {
|
||||
"vector": [0, 1.5, 1],
|
||||
"vector": [0, -1.5, 1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"1.1667": {
|
||||
"vector": [0, 1.5, 1],
|
||||
"vector": [0, -1.5, 1],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"1.4167": {
|
||||
"vector": [-5.02824, -8.21825, 9.86653]
|
||||
"vector": [5.0282, 8.2183, 9.86653]
|
||||
},
|
||||
"1.5833": {
|
||||
"vector": [-2.02824, -8.21825, 9.86653]
|
||||
"vector": [2.0282, 8.2183, 9.86653]
|
||||
},
|
||||
"1.9167": {
|
||||
"vector": [3.97176, -8.21825, 9.86653]
|
||||
"vector": [-3.9718, 8.2183, 9.86653]
|
||||
},
|
||||
"2.0417": {
|
||||
"vector": [3.97176, -8.21825, 9.86653]
|
||||
"vector": [-3.9718, 8.2183, 9.86653]
|
||||
},
|
||||
"2.25": {
|
||||
"vector": [-3.81928, -8.59364, -9.17363]
|
||||
"vector": [3.8193, 8.5936, -9.17363]
|
||||
},
|
||||
"2.4583": {
|
||||
"vector": [0, 0, 0],
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
},
|
||||
"animation.taser.reload": {
|
||||
"loop": "hold_on_last_frame",
|
||||
"animation_length": 2.75,
|
||||
"animation_length": 2.5833,
|
||||
"override_previous_animation": true,
|
||||
"bones": {
|
||||
"0": {
|
||||
|
@ -117,34 +117,45 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.4583": {
|
||||
"vector": [-20.90869, -15.21456, -16.89238],
|
||||
"vector": [17.28178, 11.81938, -13.74589],
|
||||
"easing": "easeOutBack"
|
||||
},
|
||||
"0.5833": {
|
||||
"vector": [-17.89, -13.29, -10.54],
|
||||
"vector": [17.89, 13.29, -10.54],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"0.7083": {
|
||||
"vector": [-16.88, -7.03, -16.89]
|
||||
},
|
||||
"0.9167": {
|
||||
"vector": [-19.00328, -3.7608, -32.92722]
|
||||
"vector": [-15.26666, -7.21079, -32.09116]
|
||||
},
|
||||
"1.4583": {
|
||||
"vector": [-20.90869, -15.21456, -16.89238],
|
||||
"1.3333": {
|
||||
"vector": [11.33836, 15.57679, -32.68369],
|
||||
"easing": "easeOutBack"
|
||||
},
|
||||
"1.9167": {
|
||||
"vector": [-20.90869, -15.21456, -16.89238],
|
||||
"easing": "easeOutBack"
|
||||
"1.5833": {
|
||||
"vector": [21.25681, 14.51031, -31.92152]
|
||||
},
|
||||
"1.625": {
|
||||
"vector": [22.15477, 15.58476, -35.05004]
|
||||
},
|
||||
"1.6667": {
|
||||
"vector": [24.59206, 11.83166, -28.91263]
|
||||
},
|
||||
"1.75": {
|
||||
"vector": [28.1312, 15.12708, -33.43052]
|
||||
},
|
||||
"1.8333": {
|
||||
"vector": [32.67296, 7.36719, -31.31941],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.0": {
|
||||
"vector": [31.94221, 8.54088, -32.21219]
|
||||
},
|
||||
"2.0833": {
|
||||
"vector": [-20.90869, -15.21456, -16.89238],
|
||||
"vector": [35.21697, 9.07234, -33.53801],
|
||||
"easing": "easeOutBack"
|
||||
},
|
||||
"2.25": {
|
||||
"vector": [-20.90869, -15.21456, -16.89238],
|
||||
"easing": "easeOutBack"
|
||||
"vector": [10.49188, 18.26991, -36.52254]
|
||||
},
|
||||
"2.4167": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -155,34 +166,33 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.4167": {
|
||||
"vector": [-0.19579, -2.08768, -5.4753],
|
||||
"vector": [-0.19579, -2.08768, -5.5753],
|
||||
"easing": "easeOutBack"
|
||||
},
|
||||
"0.5417": {
|
||||
"vector": [0, -1.82, -10.4],
|
||||
"easing": "easeInCirc"
|
||||
"vector": [0, -1.82, -11.4],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.6667": {
|
||||
"vector": [0.6, -1.87, -9.4]
|
||||
"0.7083": {
|
||||
"vector": [6.6, -1.87, 0.6]
|
||||
},
|
||||
"0.9167": {
|
||||
"vector": [7.55491, -9.57868, 6.1249]
|
||||
},
|
||||
"1.4583": {
|
||||
"vector": [10, -9.37, 7.72],
|
||||
"1.3333": {
|
||||
"vector": [10, -9.37, 6.62],
|
||||
"easing": "easeInOutBack"
|
||||
},
|
||||
"1.9167": {
|
||||
"vector": [0, -1.9, -10],
|
||||
"easing": "easeInOutExpo"
|
||||
"1.8333": {
|
||||
"vector": [2.6, -1.9, -12.4],
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.0": {
|
||||
"vector": [2.8, -1.9, -9.8]
|
||||
},
|
||||
"2.0833": {
|
||||
"vector": [0, -1.9, -6.75],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.25": {
|
||||
"vector": [0, -1.9, -6.75],
|
||||
"easing": "easeOutBack"
|
||||
"vector": [3, -1.9, -10.2],
|
||||
"easing": "easeInOutExpo"
|
||||
},
|
||||
"2.4167": {
|
||||
"vector": [0, 0, 0]
|
||||
|
@ -200,10 +210,10 @@
|
|||
"1.25": {
|
||||
"vector": [-380, 0, 0]
|
||||
},
|
||||
"1.4583": {
|
||||
"1.3333": {
|
||||
"vector": [-30.68206, -27.03402, 52.54628]
|
||||
},
|
||||
"1.9167": {
|
||||
"1.8333": {
|
||||
"vector": [0, 0, 0]
|
||||
},
|
||||
"2.0833": {
|
||||
|
@ -275,12 +285,12 @@
|
|||
"1.2083": {
|
||||
"vector": [-109.12621, -239.05802, -69.27181]
|
||||
},
|
||||
"1.4583": {
|
||||
"1.3333": {
|
||||
"vector": [10, -9, 13]
|
||||
},
|
||||
"1.9167": {
|
||||
"1.8333": {
|
||||
"vector": [0, 0, -2.09375],
|
||||
"easing": "easeInOutExpo"
|
||||
"easing": "linear"
|
||||
},
|
||||
"2.0833": {
|
||||
"vector": [0, 0, 0],
|
||||
|
|
|
@ -350,10 +350,10 @@
|
|||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.475": {
|
||||
"vector": [-10.44338, -1.43014, -23.74802]
|
||||
"vector": [-4.94338, -1.43014, -23.74802]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-14.84614, -2.5832, -32.03895]
|
||||
"vector": [-17.34614, -2.5832, -32.03895]
|
||||
},
|
||||
"0.75": {
|
||||
"vector": [-11.70611, -1.01407, -21.29215]
|
||||
|
@ -369,7 +369,7 @@
|
|||
"vector": [-4.12653, -4.72822, -56.55102]
|
||||
},
|
||||
"1.45": {
|
||||
"vector": [-10.49798, -4.62582, -54.17175]
|
||||
"vector": [-15.97623, -3.32012, -47.27787]
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [-7.97951, -3.57005, -43.60547]
|
||||
|
@ -409,7 +409,7 @@
|
|||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.45": {
|
||||
"vector": [-0.22251, -1.08196, 0.69958]
|
||||
"vector": [-0.32433, -0.86096, 0.75862]
|
||||
},
|
||||
"0.55": {
|
||||
"vector": [-0.68854, 0.72525, 1.50234]
|
||||
|
@ -428,7 +428,7 @@
|
|||
"vector": [-0.18308, 0.71818, 0.12707]
|
||||
},
|
||||
"1.45": {
|
||||
"vector": [-0.78727, 1.01829, -0.03871]
|
||||
"vector": [-1.14582, 1.33855, 0.09868]
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [-0.02559, 0.30589, 0.02749]
|
||||
|
@ -467,51 +467,53 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.125": {
|
||||
"vector": [-6.39437, 3.04891, 4.4876],
|
||||
"vector": [6.3944, -3.0489, 4.4876],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.175": {
|
||||
"vector": [-6.39437, 3.04891, 4.4876],
|
||||
"vector": [6.3944, -3.0489, 4.4876],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [11.60017, 7.29676, 7.14605],
|
||||
"vector": [-11.6002, -7.2968, 7.14605],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [11.60017, 7.29676, 7.14605]
|
||||
"vector": [-11.6002, -7.2968, 7.14605],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [11.60017, 7.29676, 7.14605]
|
||||
"vector": [-11.6002, -7.2968, 7.14605],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"1.75": {
|
||||
"vector": [-9.14164, -8.74812, 11.2864],
|
||||
"vector": [9.1416, 8.7481, 11.2864],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"1.975": {
|
||||
"vector": [-17.43269, 2.9275, 3.55312],
|
||||
"vector": [17.4327, -2.9275, 3.55312],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"2.075": {
|
||||
"vector": [-17.43269, 2.9275, 3.55312]
|
||||
"vector": [17.4327, -2.9275, 3.55312]
|
||||
},
|
||||
"2.175": {
|
||||
"vector": [-16.72239, -0.1378, 7.56709],
|
||||
"vector": [16.7224, 0.1378, 7.56709],
|
||||
"easing": "easeInElastic"
|
||||
},
|
||||
"2.35": {
|
||||
"vector": [-21.08472, -5.11542, 4.19639],
|
||||
"vector": [21.0847, 5.1154, 4.19639],
|
||||
"easing": "easeOutCubic"
|
||||
},
|
||||
"2.425": {
|
||||
"vector": [-17.15069, -17.13983, 8.15222],
|
||||
"vector": [17.1507, 17.1398, 8.15222],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"2.5": {
|
||||
"vector": [2.66341, -14.57317, 12.87392],
|
||||
"vector": [-2.6634, 14.5732, 12.87392],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"2.85": {
|
||||
"2.65": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
@ -560,7 +562,7 @@
|
|||
"vector": [-0.1, 0.8, 1.4],
|
||||
"easing": "easeInOutSine"
|
||||
},
|
||||
"2.85": {
|
||||
"2.65": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
@ -783,10 +785,10 @@
|
|||
"easing": "easeInElastic"
|
||||
},
|
||||
"0.475": {
|
||||
"vector": [-10.44338, -1.43014, -23.74802]
|
||||
"vector": [-4.94338, -1.43014, -23.74802]
|
||||
},
|
||||
"0.6": {
|
||||
"vector": [-14.84614, -2.5832, -32.03895]
|
||||
"vector": [-17.34614, -2.5832, -32.03895]
|
||||
},
|
||||
"0.75": {
|
||||
"vector": [-11.70611, -1.01407, -21.29215]
|
||||
|
@ -802,7 +804,7 @@
|
|||
"vector": [-4.12653, -4.72822, -56.55102]
|
||||
},
|
||||
"1.45": {
|
||||
"vector": [-10.97623, -3.32012, -47.27787]
|
||||
"vector": [-15.97623, -3.32012, -47.27787]
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [-8.39511, -2.42895, -35.67626]
|
||||
|
@ -831,7 +833,7 @@
|
|||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.45": {
|
||||
"vector": [-0.22251, -1.08196, 0.69958]
|
||||
"vector": [-0.32433, -0.86096, 0.75862]
|
||||
},
|
||||
"0.55": {
|
||||
"vector": [-0.68854, 0.72525, 1.50234]
|
||||
|
@ -850,7 +852,7 @@
|
|||
"vector": [-0.18308, 0.71818, 0.12707]
|
||||
},
|
||||
"1.45": {
|
||||
"vector": [-0.78727, 1.01829, -0.03871]
|
||||
"vector": [-1.14582, 1.33855, 0.09868]
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [-0.02559, 0.30589, 0.02749]
|
||||
|
@ -873,27 +875,29 @@
|
|||
"vector": [0, 0, 0]
|
||||
},
|
||||
"0.125": {
|
||||
"vector": [-6.39437, 3.04891, 4.4876],
|
||||
"vector": [6.3944, -3.0489, 4.4876],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.175": {
|
||||
"vector": [-6.39437, 3.04891, 4.4876],
|
||||
"vector": [6.3944, -3.0489, 4.4876],
|
||||
"easing": "easeOutSine"
|
||||
},
|
||||
"0.3": {
|
||||
"vector": [11.60017, 7.29676, 7.14605],
|
||||
"vector": [-11.6002, -7.2968, 7.14605],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"0.4": {
|
||||
"vector": [11.60017, 7.29676, 7.14605]
|
||||
"vector": [-11.6002, -7.2968, 7.14605],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"1.55": {
|
||||
"vector": [11.60017, 7.29676, 7.14605]
|
||||
"vector": [-11.6002, -7.2968, 7.14605],
|
||||
"easing": "easeInSine"
|
||||
},
|
||||
"1.7": {
|
||||
"vector": [-10.40772, -0.25647, -0.25117]
|
||||
"vector": [10.4077, 0.2565, -0.25117]
|
||||
},
|
||||
"1.925": {
|
||||
"1.825": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
@ -923,7 +927,7 @@
|
|||
"1.7": {
|
||||
"vector": [1.23123, -2.81852, 2.50813]
|
||||
},
|
||||
"1.925": {
|
||||
"1.825": {
|
||||
"vector": [0, 0, 0],
|
||||
"easing": "easeInElastic"
|
||||
}
|
||||
|
|
|
@ -43,11 +43,11 @@
|
|||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-3.68438, -5.38594, 17.88516],
|
||||
"rotation": [65.60852, -18.30276, -6.2349],
|
||||
"rotation": [114.39148, 18.30276, 173.7651],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-4.68438, -5.38594, 15.88516],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [-5.68438, -5.38594, 15.88516],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 0], "uv_size": [3, 12]},
|
||||
"east": {"uv": [0, 0], "uv_size": [4, 12]},
|
||||
|
@ -63,11 +63,11 @@
|
|||
"name": "Lefthand",
|
||||
"parent": "0",
|
||||
"pivot": [4.5, -7.2, 4.6],
|
||||
"rotation": [41.0146, 17.66046, -9.54013],
|
||||
"rotation": [138.9854, -17.66046, 170.45987],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [2, -7.2, 2.6],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [2.5, -7.2, 2.6],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [7, 12], "uv_size": [3, 12]},
|
||||
"east": {"uv": [8, 0], "uv_size": [4, 12]},
|
||||
|
|
|
@ -12385,11 +12385,11 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "magazine",
|
||||
"pivot": [4.67388, -7.52896, -3.36163],
|
||||
"rotation": [40.2742, 5.14257, -25.37987],
|
||||
"pivot": [5.22388, -6.9063, -3.36163],
|
||||
"rotation": [93.65784, -50.30329, -126.39785],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [2.67388, -7.52896, -5.36163],
|
||||
"origin": [3.22388, -6.9063, -5.36163],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [127, 127], "uv_size": [1, 1]},
|
||||
|
@ -12406,7 +12406,7 @@
|
|||
"name": "Righthand",
|
||||
"parent": "gun",
|
||||
"pivot": [-3.52302, -3.72921, 12.12641],
|
||||
"rotation": [79.68197, -12.90104, 3.96763],
|
||||
"rotation": [100.31803, 12.90104, -176.03237],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-5.52302, -3.72921, 10.12641],
|
||||
|
|
|
@ -4083,7 +4083,7 @@
|
|||
"name": "Righthand",
|
||||
"parent": "gun",
|
||||
"pivot": [-6.2, -5.5, 4.4],
|
||||
"rotation": [64.32487, -27.9632, 12.70316],
|
||||
"rotation": [115.67513, 27.9632, -167.29684],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-8.2, -5.5, 2.4],
|
||||
|
@ -6326,10 +6326,10 @@
|
|||
"name": "Lefthand",
|
||||
"parent": "rocket",
|
||||
"pivot": [7.2, -5, 8.8],
|
||||
"rotation": [73.96235, 47.17694, -0.46022],
|
||||
"rotation": [106.03765, -47.17694, 179.53978],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [4.5, -5, 6.8],
|
||||
"origin": [5.25, -5, 6.8],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 0], "uv_size": [4, 12]},
|
||||
|
|
|
@ -9340,12 +9340,12 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "magazine",
|
||||
"pivot": [6.8, -6.9, -0.8],
|
||||
"rotation": [43.71938, 30.52461, -17.53888],
|
||||
"pivot": [5.30781, -6.25937, -0.8],
|
||||
"rotation": [89.98848, -41.932, -125.17414],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [5.2, -6.9, -2.55],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [3.30781, -6.25937, -2.8],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 0], "uv_size": [3, 12]},
|
||||
"east": {"uv": [0, 0], "uv_size": [4, 12]},
|
||||
|
@ -10916,12 +10916,12 @@
|
|||
{
|
||||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-3.2, -5.7, 11.9],
|
||||
"rotation": [67.68798, -14.81107, 2.40023],
|
||||
"pivot": [-2.94781, -5.33059, 11.00561],
|
||||
"rotation": [112.31202, 14.81107, -177.59977],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-4.2, -4.7, 9.9],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [-4.94781, -5.33059, 9.00561],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [7, 12], "uv_size": [3, 12]},
|
||||
"east": {"uv": [8, 0], "uv_size": [4, 12]},
|
||||
|
|
|
@ -7380,11 +7380,11 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "magzine",
|
||||
"pivot": [5.24559, -8.54155, 2.35912],
|
||||
"rotation": [48.92112, 13.13514, -24.32604],
|
||||
"pivot": [5.24559, -8.04155, 1.10912],
|
||||
"rotation": [72.79916, -39.78478, -103.12114],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [3.24559, -8.54155, 0.35912],
|
||||
"origin": [3.24559, -8.04155, -0.89088],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [0, 120], "uv_size": [1, 1]},
|
||||
|
@ -8071,7 +8071,7 @@
|
|||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-4.60882, -3.88091, 16.51741],
|
||||
"rotation": [78.76735, -19.20433, 3.1514],
|
||||
"rotation": [101.23265, 19.20433, -176.8486],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-6.60882, -3.88091, 14.51741],
|
||||
|
|
|
@ -7845,12 +7845,12 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "0",
|
||||
"pivot": [4.9625, -5.86562, -2.54844],
|
||||
"rotation": [54.40074, 25.37317, -8.56985],
|
||||
"pivot": [5.4625, -5.86562, -2.54844],
|
||||
"rotation": [125.59926, -25.37317, 171.43015],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [3.3625, -5.86562, -4.29844],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [3.5125, -5.86562, -4.54844],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 0], "uv_size": [3, 12]},
|
||||
"east": {"uv": [0, 0], "uv_size": [4, 12]},
|
||||
|
@ -9054,12 +9054,12 @@
|
|||
{
|
||||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-4.16953, -5.97344, 12.65703],
|
||||
"rotation": [60.65725, -17.96209, -1.75744],
|
||||
"pivot": [-4.16953, -5.22344, 12.40703],
|
||||
"rotation": [119.34275, 17.96209, 178.24256],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-5.16953, -4.97344, 10.65703],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [-6.16953, -5.22344, 10.40703],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [7, 12], "uv_size": [3, 12]},
|
||||
"east": {"uv": [8, 0], "uv_size": [4, 12]},
|
||||
|
|
|
@ -4660,12 +4660,12 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "0",
|
||||
"pivot": [6.15, -4.4, -0.5],
|
||||
"rotation": [54.26155, 16.13646, -17.18389],
|
||||
"pivot": [5.15, -6.4, -0.5],
|
||||
"rotation": [125.73845, -16.13646, 162.81611],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [3.15, -4.4, -3.5],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [3.15, -6.4, -2.5],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [12, 0], "uv_size": [3, 12]},
|
||||
"east": {"uv": [0, 0], "uv_size": [4, 12]},
|
||||
|
@ -4681,11 +4681,11 @@
|
|||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-3.39609, -3.68672, 12.7],
|
||||
"rotation": [76.54796, -8.74418, 14.70579],
|
||||
"rotation": [103.45204, 8.74418, -165.29421],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-4.39609, -3.68672, 10.7],
|
||||
"size": [3, 12, 4],
|
||||
"origin": [-5.39609, -3.68672, 10.7],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [7, 12], "uv_size": [3, 12]},
|
||||
"east": {"uv": [8, 0], "uv_size": [4, 12]},
|
||||
|
|
|
@ -168,7 +168,7 @@
|
|||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-2.4, -2.9, 11.5],
|
||||
"rotation": [83.35832, -7.15102, 2.26708],
|
||||
"rotation": [96.64168, 7.15102, -177.73292],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-4.4, -2.9, 9.5],
|
||||
|
@ -187,12 +187,14 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "0",
|
||||
"pivot": [2, -6.3, 10],
|
||||
"rotation": [72.10193, 11.91276, -3.81397],
|
||||
"pivot": [2.2, -6.3, 9.6],
|
||||
"rotation": [109.69635, -4.47536, 178.48092],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [0, -6.3, 8],
|
||||
"origin": [0.6, -6.3, 7.9],
|
||||
"size": [4, 12, 4],
|
||||
"pivot": [2.6, -0.3, 9.9],
|
||||
"rotation": [0, 17, 0],
|
||||
"uv": {
|
||||
"north": {"uv": [1.25, 32], "uv_size": [-1.25, -2]},
|
||||
"east": {"uv": [1.25, 32], "uv_size": [-1.25, -2]},
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
"name": "Righthand",
|
||||
"parent": "0",
|
||||
"pivot": [-3.60896, -3.08702, 11.65688],
|
||||
"rotation": [74.44675, -12.23285, 4.07292],
|
||||
"rotation": [105.55325, 12.23285, -175.92708],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-5.60896, -3.08702, 9.65688],
|
||||
|
@ -272,6 +272,7 @@
|
|||
"name": "kuaimanji",
|
||||
"parent": "gun",
|
||||
"pivot": [0, 2.93447, -3.7579],
|
||||
"rotation": [0, 0, 0],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [-0.73965, 2.82862, -3.79579],
|
||||
|
@ -9158,11 +9159,11 @@
|
|||
{
|
||||
"name": "Lefthand",
|
||||
"parent": "magazine",
|
||||
"pivot": [3.17388, -7.98989, -2.30538],
|
||||
"rotation": [54.87027, 8.78995, -15.8892],
|
||||
"pivot": [3.92388, -7.98989, -2.30538],
|
||||
"rotation": [125.12973, -8.78995, 164.1108],
|
||||
"cubes": [
|
||||
{
|
||||
"origin": [1.17388, -7.98989, -4.30538],
|
||||
"origin": [1.92388, -7.98989, -4.30538],
|
||||
"size": [4, 12, 4],
|
||||
"uv": {
|
||||
"north": {"uv": [124, 0], "uv_size": [4, 12]},
|
||||
|
|
Loading…
Add table
Reference in a new issue