This commit is contained in:
Atsuihsio 2024-07-16 15:34:26 +08:00
parent a5ff397852
commit c5f91ec561
42 changed files with 1684 additions and 1707 deletions

View file

@ -44,7 +44,7 @@ public class AbekiriItemModel extends GeoModel<Abekiri> {
double zp = 0; double zp = 0;
zp = player.getPersistentData().getDouble("zoom_pos_z"); zp = player.getPersistentData().getDouble("zoom_pos_z");
gun.setPosX(2.5f * (float) p); gun.setPosX(2.45f * (float) p);
gun.setPosY(1.7f * (float) p - (float) (0.4f * zp)); gun.setPosY(1.7f * (float) p - (float) (0.4f * zp));
@ -117,5 +117,13 @@ public class AbekiriItemModel extends GeoModel<Abekiri> {
move.setRotY(Mth.DEG_TO_RAD * (float) yRot); move.setRotY(Mth.DEG_TO_RAD * (float) yRot);
move.setRotZ(2.7f * (float) m + Mth.DEG_TO_RAD * (float) zRot); move.setRotZ(2.7f * (float) m + Mth.DEG_TO_RAD * (float) zRot);
CoreGeoBone camera = getAnimationProcessor().getBone("camera");
player.getPersistentData().putDouble("camera_rot_x", Mth.RAD_TO_DEG * camera.getRotX());
player.getPersistentData().putDouble("camera_rot_y", Mth.RAD_TO_DEG * camera.getRotY());
player.getPersistentData().putDouble("camera_rot_z", Mth.RAD_TO_DEG * camera.getRotZ());
} }
} }

View file

@ -40,7 +40,6 @@ public class Ntw20Model extends GeoModel<Ntw20> {
CoreGeoBone body = getAnimationProcessor().getBone("body"); CoreGeoBone body = getAnimationProcessor().getBone("body");
CoreGeoBone jing = getAnimationProcessor().getBone("jing"); CoreGeoBone jing = getAnimationProcessor().getBone("jing");
CoreGeoBone base = getAnimationProcessor().getBone("base"); CoreGeoBone base = getAnimationProcessor().getBone("base");
CoreGeoBone lh = getAnimationProcessor().getBone("lh");
CoreGeoBone rex = getAnimationProcessor().getBone("rex"); CoreGeoBone rex = getAnimationProcessor().getBone("rex");
Player player = Minecraft.getInstance().player; Player player = Minecraft.getInstance().player;
@ -68,9 +67,6 @@ public class Ntw20Model extends GeoModel<Ntw20> {
shen.setRotZ(-0.01f * (float) (fp + 1.3 * fr)); shen.setRotZ(-0.01f * (float) (fp + 1.3 * fr));
} }
action.setPosZ(3 * (float) fp);
lh.setPosZ(-3 * (float) fp);
shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).recoilHorizon * fp)); shen.setPosX(0.5f * (float)fr * (float)((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).recoilHorizon * fp));
double p = player.getPersistentData().getDouble("zoom_pos"); double p = player.getPersistentData().getDouble("zoom_pos");

View file

@ -66,7 +66,7 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
} }
float times = 250f / fps; float times = 250f / fps;
cb.setRotZ(cb.getRotZ() + times * 0.03f * (float) (stack.getOrCreateTag().getDouble("crot"))); cb.setRotZ(cb.getRotZ() + times * 0.03f * (float) (stack.getOrCreateTag().getDouble("chamber_rot")));
CoreGeoBone holo = getAnimationProcessor().getBone("holo"); CoreGeoBone holo = getAnimationProcessor().getBone("holo");
if (gun.getPosX() > 1.8) { if (gun.getPosX() > 1.8) {

View file

@ -168,7 +168,7 @@ public class RpgRocketEntity extends ThrowableItemProjectile {
} }
} }
if (this.tickCount > 1) { if (this.tickCount > 1) {
this.setDeltaMovement(new Vec3((1.03 * this.getDeltaMovement().x()), (1.03 * this.getDeltaMovement().y() - 0.05), (1.03 * this.getDeltaMovement().z()))); this.setDeltaMovement(new Vec3((1.03 * this.getDeltaMovement().x()), (1.03 * this.getDeltaMovement().y() - 0.02), (1.03 * this.getDeltaMovement().z())));
if (!this.level().isClientSide() && this.level() instanceof ServerLevel serverLevel) { if (!this.level().isClientSide() && this.level() instanceof ServerLevel serverLevel) {
ParticleTool.sendParticle(serverLevel, ParticleTypes.SMOKE, this.getX(), this.getY(), this.getZ(), 2, 0, 0, 0, 0, true); ParticleTool.sendParticle(serverLevel, ParticleTypes.SMOKE, this.getX(), this.getY(), this.getZ(), 2, 0, 0, 0, 0, true);

View file

@ -137,18 +137,10 @@ public class GunEventHandler {
} }
if (stack.getItem() == TargetModItems.SENTINEL.get()) { if (stack.getItem() == TargetModItems.SENTINEL.get()) {
stack.getOrCreateTag().putBoolean("zoom_fire", (player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).zooming);
stack.getCapability(ForgeCapabilities.ENERGY).ifPresent( stack.getCapability(ForgeCapabilities.ENERGY).ifPresent(
iEnergyStorage -> iEnergyStorage.extractEnergy(3000, false) iEnergyStorage -> iEnergyStorage.extractEnergy(3000, false)
); );
stack.getOrCreateTag().putDouble("chamber_rot", 20);
// if (stack.getOrCreateTag().getDouble("power") > 3000) {
// stack.getOrCreateTag().putDouble("power", stack.getOrCreateTag().getDouble("power") - 3000);
// } else {
// stack.getOrCreateTag().putDouble("power", 0);
// }
stack.getOrCreateTag().putDouble("crot", 20);
} }
int zoom_add_cooldown = 0; int zoom_add_cooldown = 0;

View file

@ -151,16 +151,6 @@ public class AK47Item extends GunItem implements GeoItem, AnimatedItem {
TooltipTool.addGunTips(list, stack); TooltipTool.addGunTips(list, stack);
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -146,16 +146,6 @@ public class Aa12Item extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -95,11 +95,11 @@ public class Abekiri extends GunItem implements GeoItem, AnimatedItem {
} }
if (stack.getOrCreateTag().getBoolean("is_empty_reloading")) { if (stack.getOrCreateTag().getBoolean("is_empty_reloading")) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ab.reload2")); return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ab.reload_empty"));
} }
if (stack.getOrCreateTag().getBoolean("is_normal_reloading")) { if (stack.getOrCreateTag().getBoolean("is_normal_reloading")) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ab.reload")); return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ab.reload_normal"));
} }
if (player.isSprinting() && player.onGround() && player.getPersistentData().getDouble("noRun") == 0) { if (player.isSprinting() && player.onGround() && player.getPersistentData().getDouble("noRun") == 0) {
@ -137,16 +137,6 @@ public class Abekiri extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -113,16 +113,6 @@ public class BocekItem extends GunItem implements GeoItem, AnimatedItem {
data.add(idleController); data.add(idleController);
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -132,16 +132,6 @@ public class Devotion extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -7,7 +7,9 @@ import net.mcreator.target.network.TargetModVariables;
import net.mcreator.target.tools.EnchantmentCategoryTool; import net.mcreator.target.tools.EnchantmentCategoryTool;
import net.mcreator.target.tools.GunsTool; import net.mcreator.target.tools.GunsTool;
import net.mcreator.target.tools.ItemNBTTool; import net.mcreator.target.tools.ItemNBTTool;
import net.mcreator.target.tools.TooltipTool;
import net.minecraft.core.BlockPos; import net.minecraft.core.BlockPos;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvent;
import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Entity;
@ -15,6 +17,7 @@ import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.item.enchantment.Enchantment;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.BlockState;
@ -22,6 +25,7 @@ import net.minecraftforge.event.entity.player.EntityItemPickupEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod;
import java.util.List;
import java.util.Set; import java.util.Set;
@Mod.EventBusSubscriber @Mod.EventBusSubscriber
@ -83,6 +87,21 @@ public abstract class GunItem extends Item {
} }
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return false;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override
public void appendHoverText(ItemStack stack, Level world, List<Component> list, TooltipFlag flag) {
TooltipTool.addGunTips(list, stack);
}
public Set<SoundEvent> getReloadSound() { public Set<SoundEvent> getReloadSound() {
return Set.of(); return Set.of();
} }

View file

@ -142,16 +142,6 @@ public class Hk416Item extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -132,16 +132,6 @@ public class HuntingRifle extends GunItem implements GeoItem, AnimatedItem {
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -142,16 +142,6 @@ public class M4Item extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -156,16 +156,6 @@ public class M60Item extends GunItem implements GeoItem, AnimatedItem {
return Set.of(TargetModSounds.M_60_RELOAD_EMPTY.get(), TargetModSounds.M_60_RELOAD_NORMAL.get()); return Set.of(TargetModSounds.M_60_RELOAD_EMPTY.get(), TargetModSounds.M_60_RELOAD_NORMAL.get());
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -135,16 +135,6 @@ public class M79Item extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -163,16 +163,6 @@ public class M870Item extends GunItem implements GeoItem, AnimatedItem {
return Set.of(TargetModSounds.M_870_PREPARE_LOAD.get(), TargetModSounds.M_870_LOOP.get()); return Set.of(TargetModSounds.M_870_PREPARE_LOAD.get(), TargetModSounds.M_870_LOOP.get());
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -143,16 +143,6 @@ public class M98bItem extends GunItem implements GeoItem, AnimatedItem {
TooltipTool.addGunTips(list, stack); TooltipTool.addGunTips(list, stack);
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -179,16 +179,6 @@ public class MarlinItem extends GunItem implements GeoItem, AnimatedItem {
return Set.of(TargetModSounds.MARLIN_LOOP.get(), TargetModSounds.MARLIN_PREPARE.get(), TargetModSounds.MARLIN_END.get()); return Set.of(TargetModSounds.MARLIN_LOOP.get(), TargetModSounds.MARLIN_PREPARE.get(), TargetModSounds.MARLIN_END.get());
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -156,16 +156,6 @@ public class Minigun extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -152,16 +152,6 @@ public class Mk14Item extends GunItem implements GeoItem, AnimatedItem {
return Set.of(TargetModSounds.MK_14_RELOAD_EMPTY.get(), TargetModSounds.MK_14_RELOAD_NORMAL.get()); return Set.of(TargetModSounds.MK_14_RELOAD_EMPTY.get(), TargetModSounds.MK_14_RELOAD_NORMAL.get());
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -20,6 +20,7 @@ import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvent;
import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionHand;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.EquipmentSlot;
import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.Attribute;
@ -31,6 +32,7 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
import net.minecraftforge.client.extensions.common.IClientItemExtensions; import net.minecraftforge.client.extensions.common.IClientItemExtensions;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import software.bernie.geckolib.animatable.GeoItem; import software.bernie.geckolib.animatable.GeoItem;
import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache; import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache;
import software.bernie.geckolib.core.animation.AnimatableManager; import software.bernie.geckolib.core.animation.AnimatableManager;
@ -85,7 +87,7 @@ public class Ntw20 extends GunItem implements GeoItem, AnimatedItem {
transformType = type; transformType = type;
} }
private PlayState idlePredicate(AnimationState event) { private PlayState fireAnimPredicate(AnimationState event) {
LocalPlayer player = Minecraft.getInstance().player; LocalPlayer player = Minecraft.getInstance().player;
if (player == null) return PlayState.STOP; if (player == null) return PlayState.STOP;
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
@ -93,10 +95,6 @@ public class Ntw20 extends GunItem implements GeoItem, AnimatedItem {
if (this.animationProcedure.equals("empty")) { if (this.animationProcedure.equals("empty")) {
if (stack.getOrCreateTag().getInt("draw_time") < 29) {
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.ntw_20.draw"));
}
if ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).zooming && stack.getOrCreateTag().getInt("bolt_action_anim") > 0) { if ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).zooming && stack.getOrCreateTag().getInt("bolt_action_anim") > 0) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ntw_20.shift2")); return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ntw_20.shift2"));
} }
@ -117,7 +115,26 @@ public class Ntw20 extends GunItem implements GeoItem, AnimatedItem {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ntw_20.reload_normal")); return event.setAndContinue(RawAnimation.begin().thenPlay("animation.ntw_20.reload_normal"));
} }
if (player.isSprinting() && player.onGround() && player.getPersistentData().getDouble("noRun") == 0) { return event.setAndContinue(RawAnimation.begin().thenLoop("animation.ntw_20.idle"));
}
return PlayState.STOP;
}
private PlayState idlePredicate(AnimationState event) {
LocalPlayer player = Minecraft.getInstance().player;
if (player == null) return PlayState.STOP;
ItemStack stack = player.getMainHandItem();
if (!stack.is(TargetModTags.Items.GUN)) return PlayState.STOP;
if (this.animationProcedure.equals("empty")) {
if (stack.getOrCreateTag().getInt("draw_time") < 29) {
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.ntw_20.draw"));
}
if (player.isSprinting() && player.onGround()
&& player.getPersistentData().getDouble("noRun") == 0
&& !(stack.getOrCreateTag().getBoolean("is_normal_reloading") || stack.getOrCreateTag().getBoolean("is_empty_reloading"))) {
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.ntw_20.run")); return event.setAndContinue(RawAnimation.begin().thenLoop("animation.ntw_20.run"));
} }
@ -126,25 +143,10 @@ public class Ntw20 extends GunItem implements GeoItem, AnimatedItem {
return PlayState.STOP; return PlayState.STOP;
} }
private PlayState procedurePredicate(AnimationState event) {
if (transformType != null && transformType.firstPerson()) {
if (!this.animationProcedure.equals("empty") && event.getController().getAnimationState() == AnimationController.State.STOPPED) {
event.getController().setAnimation(RawAnimation.begin().thenPlay(this.animationProcedure));
if (event.getController().getAnimationState() == AnimationController.State.STOPPED) {
this.animationProcedure = "empty";
event.getController().forceAnimationReset();
}
} else if (this.animationProcedure.equals("empty")) {
return PlayState.STOP;
}
}
return PlayState.CONTINUE;
}
@Override @Override
public void registerControllers(AnimatableManager.ControllerRegistrar data) { public void registerControllers(AnimatableManager.ControllerRegistrar data) {
var procedureController = new AnimationController<>(this, "procedureController", 0, this::procedurePredicate); var fireAnimController = new AnimationController<>(this, "fireAnimController", 1, this::fireAnimPredicate);
data.add(procedureController); data.add(fireAnimController);
var idleController = new AnimationController<>(this, "idleController", 4, this::idlePredicate); var idleController = new AnimationController<>(this, "idleController", 4, this::idlePredicate);
data.add(idleController); data.add(idleController);
} }
@ -155,16 +157,6 @@ public class Ntw20 extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public void appendHoverText(ItemStack stack, Level world, List<Component> list, TooltipFlag flag) { public void appendHoverText(ItemStack stack, Level world, List<Component> list, TooltipFlag flag) {
TooltipTool.addGunTips(list, stack); TooltipTool.addGunTips(list, stack);

View file

@ -131,16 +131,6 @@ public class RpgItem extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -142,16 +142,6 @@ public class RpkItem extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -120,7 +120,7 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
transformType = type; transformType = type;
} }
private PlayState idlePredicate(AnimationState<SentinelItem> event) { private PlayState fireAnimPredicate(AnimationState event) {
LocalPlayer player = Minecraft.getInstance().player; LocalPlayer player = Minecraft.getInstance().player;
if (player == null) return PlayState.STOP; if (player == null) return PlayState.STOP;
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
@ -128,10 +128,6 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
if (this.animationProcedure.equals("empty")) { if (this.animationProcedure.equals("empty")) {
if (stack.getOrCreateTag().getInt("draw_time") < 16) {
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.sentinel.draw"));
}
if ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).zooming && stack.getOrCreateTag().getInt("bolt_action_anim") > 0) { if ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).zooming && stack.getOrCreateTag().getInt("bolt_action_anim") > 0) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.shift2")); return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.shift2"));
} }
@ -156,7 +152,27 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.charge")); return event.setAndContinue(RawAnimation.begin().thenPlay("animation.sentinel.charge"));
} }
if (player.isSprinting() && player.onGround() && player.getPersistentData().getDouble("noRun") == 0) { return event.setAndContinue(RawAnimation.begin().thenLoop("animation.sentinel.idle"));
}
return PlayState.STOP;
}
private PlayState idlePredicate(AnimationState<SentinelItem> event) {
LocalPlayer player = Minecraft.getInstance().player;
if (player == null) return PlayState.STOP;
ItemStack stack = player.getMainHandItem();
if (!stack.is(TargetModTags.Items.GUN)) return PlayState.STOP;
if (this.animationProcedure.equals("empty")) {
if (stack.getOrCreateTag().getInt("draw_time") < 16) {
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.sentinel.draw"));
}
if (player.isSprinting() && player.onGround()
&& player.getPersistentData().getDouble("noRun") == 0
&& !(stack.getOrCreateTag().getBoolean("is_normal_reloading") || stack.getOrCreateTag().getBoolean("is_empty_reloading"))
&& !stack.getOrCreateTag().getBoolean("sentinel_is_charging")) {
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.sentinel.run")); return event.setAndContinue(RawAnimation.begin().thenLoop("animation.sentinel.run"));
} }
@ -182,8 +198,8 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
@Override @Override
public void registerControllers(AnimatableManager.ControllerRegistrar data) { public void registerControllers(AnimatableManager.ControllerRegistrar data) {
var procedureController = new AnimationController<>(this, "procedureController", 0, this::procedurePredicate); var fireAnimController = new AnimationController<>(this, "fireAnimController", 1, this::fireAnimPredicate);
data.add(procedureController); data.add(fireAnimController);
var idleController = new AnimationController<>(this, "idleController", 4, this::idlePredicate); var idleController = new AnimationController<>(this, "idleController", 4, this::idlePredicate);
data.add(idleController); data.add(idleController);
} }
@ -218,8 +234,8 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
} }
); );
if (tag.getDouble("crot") > 0) { if (tag.getDouble("chamber_rot") > 0) {
tag.putDouble("crot", tag.getDouble("crot") - 1); tag.putDouble("chamber_rot", tag.getDouble("chamber_rot") - 1);
} }
} }
@ -233,16 +249,6 @@ public class SentinelItem extends GunItem implements GeoItem, AnimatedItem {
); );
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -139,16 +139,6 @@ public class SksItem extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -145,16 +145,6 @@ public class SvdItem extends GunItem implements GeoItem, AnimatedItem {
return Set.of(TargetModSounds.SVD_RELOAD_EMPTY.get(), TargetModSounds.SVD_RELOAD_NORMAL.get()); return Set.of(TargetModSounds.SVD_RELOAD_EMPTY.get(), TargetModSounds.SVD_RELOAD_NORMAL.get());
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -148,16 +148,6 @@ public class Taser extends GunItem implements GeoItem, AnimatedItem {
data.add(idleController); data.add(idleController);
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -129,7 +129,7 @@ public class Trachelium extends GunItem implements GeoItem, AnimatedItem {
public void registerControllers(AnimatableManager.ControllerRegistrar data) { public void registerControllers(AnimatableManager.ControllerRegistrar data) {
AnimationController<Trachelium> procedureController = new AnimationController<>(this, "procedureController", 0, this::procedurePredicate); AnimationController<Trachelium> procedureController = new AnimationController<>(this, "procedureController", 0, this::procedurePredicate);
data.add(procedureController); data.add(procedureController);
AnimationController<Trachelium> idleController = new AnimationController<>(this, "idleController", 6, this::idlePredicate); AnimationController<Trachelium> idleController = new AnimationController<>(this, "idleController", 3, this::idlePredicate);
data.add(idleController); data.add(idleController);
} }
@ -138,11 +138,6 @@ public class Trachelium extends GunItem implements GeoItem, AnimatedItem {
return this.cache; return this.cache;
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);
@ -155,11 +150,6 @@ public class Trachelium extends GunItem implements GeoItem, AnimatedItem {
return map; return map;
} }
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return slotChanged;
}
@Override @Override
public void appendHoverText(ItemStack stack, @Nullable Level level, List<Component> list, TooltipFlag flag) { public void appendHoverText(ItemStack stack, @Nullable Level level, List<Component> list, TooltipFlag flag) {
list.add(Component.translatable("des.target.trachelium_1").withStyle(ChatFormatting.GRAY).withStyle(ChatFormatting.ITALIC)); list.add(Component.translatable("des.target.trachelium_1").withStyle(ChatFormatting.GRAY).withStyle(ChatFormatting.ITALIC));

View file

@ -159,16 +159,6 @@ public class VectorItem extends GunItem implements GeoItem, AnimatedItem {
return Set.of(TargetModSounds.VECTOR_RELOAD_NORMAL.get(), TargetModSounds.VECTOR_RELOAD_EMPTY.get()); return Set.of(TargetModSounds.VECTOR_RELOAD_NORMAL.get(), TargetModSounds.VECTOR_RELOAD_EMPTY.get());
} }
@Override
public boolean onEntitySwing(ItemStack stack, LivingEntity entity) {
return true;
}
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return false;
}
@Override @Override
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) { public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack) {
Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack); Multimap<Attribute, AttributeModifier> map = super.getAttributeModifiers(slot, stack);

View file

@ -115,7 +115,33 @@
}, },
"animation.ntw_20.fire": { "animation.ntw_20.fire": {
"loop": "hold_on_last_frame", "loop": "hold_on_last_frame",
"animation_length": 0.7917 "animation_length": 0.7917,
"bones": {
"action": {
"position": {
"0.0": {
"vector": [0, 0, 4]
},
"0.3333": {
"vector": [0, 0, 0],
"easing": "easeInBounce",
"easingArgs": [0.1]
}
}
},
"Lefthand": {
"position": {
"0.0": {
"vector": [0, 0, -4]
},
"0.3333": {
"vector": [0, 0, 0],
"easing": "easeInBounce",
"easingArgs": [0.1]
}
}
}
}
}, },
"animation.ntw_20.shift": { "animation.ntw_20.shift": {
"loop": "hold_on_last_frame", "loop": "hold_on_last_frame",
@ -152,10 +178,10 @@
"vector": [1.94405, -2.87655, -4.12958], "vector": [1.94405, -2.87655, -4.12958],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.05": { "1.0": {
"vector": [0.77862, 1.99422, -0.58503] "vector": [0.77862, 1.99422, -0.58503]
}, },
"1.35": { "1.2": {
"vector": [0, 0, 0], "vector": [0, 0, 0],
"easing": "easeOutBack" "easing": "easeOutBack"
} }
@ -188,15 +214,49 @@
"vector": [0.19, -1.8, -1], "vector": [0.19, -1.8, -1],
"easing": "easeInOutSine" "easing": "easeInOutSine"
}, },
"1.15": { "1.1": {
"vector": [-0.02, 0.09, 0.5] "vector": [-0.02, 0.09, 0.5]
}, },
"1.35": { "1.2": {
"vector": [0, 0, 0], "vector": [0, 0, 0],
"easing": "easeOutBack" "easing": "easeOutBack"
} }
} }
}, },
"camera": {
"rotation": {
"0.05": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [1, 1, -1.5]
},
"0.35": {
"vector": [-0.5, -1, -0.5]
},
"0.6": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.7": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.9": {
"vector": [-0.1, -0.2, -2],
"easing": "easeInElastic"
},
"1.0": {
"vector": [0, 0, 1.5]
},
"1.1": {
"vector": [0, 0, -0.75]
},
"1.2": {
"vector": [0, 0, 0]
}
}
},
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -304,40 +364,6 @@
"easing": "easeInElastic" "easing": "easeInElastic"
} }
} }
},
"camera": {
"rotation": {
"0.05": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [1, 1, -1.5]
},
"0.35": {
"vector": [-0.5, -1, -0.5]
},
"0.6": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.7": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.9": {
"vector": [-0.1, -0.2, -2],
"easing": "easeInElastic"
},
"1.0": {
"vector": [0, 0, 1.5]
},
"1.1": {
"vector": [0, 0, -0.75]
},
"1.2": {
"vector": [0, 0, 0]
}
}
} }
}, },
"sound_effects": { "sound_effects": {
@ -426,6 +452,40 @@
} }
} }
}, },
"camera": {
"rotation": {
"0.05": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [1, 1, -1.5]
},
"0.35": {
"vector": [-0.5, -1, -0.5]
},
"0.6": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.7": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.9": {
"vector": [-0.1, -0.2, -2],
"easing": "easeInElastic"
},
"1.0": {
"vector": [0, 0, 1.5]
},
"1.1": {
"vector": [0, 0, -0.75]
},
"1.2": {
"vector": [0, 0, 0]
}
}
},
"Righthand": { "Righthand": {
"rotation": { "rotation": {
"0.0": { "0.0": {
@ -533,40 +593,6 @@
"easing": "easeInElastic" "easing": "easeInElastic"
} }
} }
},
"camera": {
"rotation": {
"0.05": {
"vector": [0, 0, 0]
},
"0.2": {
"vector": [1, 1, -1.5]
},
"0.35": {
"vector": [-0.5, -1, -0.5]
},
"0.6": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.7": {
"vector": [0.2, 1, 3],
"easing": "easeInElastic"
},
"0.9": {
"vector": [-0.1, -0.2, -2],
"easing": "easeInElastic"
},
"1.0": {
"vector": [0, 0, 1.5]
},
"1.1": {
"vector": [0, 0, -0.75]
},
"1.2": {
"vector": [0, 0, 0]
}
}
} }
}, },
"sound_effects": { "sound_effects": {
@ -755,6 +781,99 @@
} }
} }
}, },
"camera": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1": {
"vector": [3, 1, -2]
},
"0.25": {
"vector": [-1, -0.5, 1]
},
"0.45": {
"vector": [1.69, 0, 0]
},
"0.625": {
"vector": [3, 0, 1.5],
"easing": "easeInElastic"
},
"0.675": {
"vector": [4, 1, -2],
"easing": "easeInSine"
},
"0.8": {
"vector": [1, -0.5, 1.5]
},
"0.925": {
"vector": [2.5, 0, 1.2],
"easing": "easeOutSine"
},
"1.225": {
"vector": [3.5, 0, 2],
"easing": "easeInElastic"
},
"1.6": {
"vector": [2.89, 0, 0.12]
},
"1.875": {
"vector": [3.34, 0, 1.5]
},
"2.325": {
"vector": [2.5, 0, 2.2],
"easing": "linear"
},
"2.4": {
"vector": [4.5, -0.7, 1.2],
"easing": "easeInSine"
},
"2.45": {
"vector": [2.6, 0.4, -1.5],
"easing": "easeOutSine"
},
"2.55": {
"vector": [2, 0, 1.5],
"easing": "easeInElastic"
},
"2.8": {
"vector": [0.03, 0.25, -1.18]
},
"2.925": {
"vector": [0, 0, -2],
"easing": "easeInElastic"
},
"3.025": {
"vector": [0.2, 0, 0]
},
"3.15": {
"vector": [1, 2, 1.8]
},
"3.2": {
"vector": [-1.5, -3, -1.5]
},
"3.325": {
"vector": [0.2, 1.5, 3]
},
"3.45": {
"vector": [2, 3, -2],
"easing": "easeInElastic"
},
"3.525": {
"vector": [1, -1, 1.5]
},
"3.625": {
"vector": [0, 0.5, -0.75]
},
"3.725": {
"vector": [0, 0, 0.4],
"easing": "linear"
},
"3.875": {
"vector": [0, 0, 0]
}
}
},
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"0.1": { "0.1": {
@ -1028,99 +1147,6 @@
} }
} }
}, },
"camera": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1": {
"vector": [3, 1, -2]
},
"0.25": {
"vector": [-1, -0.5, 1]
},
"0.45": {
"vector": [1.69, 0, 0]
},
"0.625": {
"vector": [3, 0, 1.5],
"easing": "easeInElastic"
},
"0.675": {
"vector": [4, 1, -2],
"easing": "easeInSine"
},
"0.8": {
"vector": [1, -0.5, 1.5]
},
"0.925": {
"vector": [2.5, 0, 1.2],
"easing": "easeOutSine"
},
"1.225": {
"vector": [3.5, 0, 2],
"easing": "easeInElastic"
},
"1.6": {
"vector": [2.89, 0, 0.12]
},
"1.875": {
"vector": [3.34, 0, 1.5]
},
"2.325": {
"vector": [2.5, 0, 2.2],
"easing": "linear"
},
"2.4": {
"vector": [4.5, -0.7, 1.2],
"easing": "easeInSine"
},
"2.45": {
"vector": [2.6, 0.4, -1.5],
"easing": "easeOutSine"
},
"2.55": {
"vector": [2, 0, 1.5],
"easing": "easeInElastic"
},
"2.8": {
"vector": [0.03, 0.25, -1.18]
},
"2.925": {
"vector": [0, 0, -2],
"easing": "easeInElastic"
},
"3.025": {
"vector": [0.2, 0, 0]
},
"3.15": {
"vector": [1, 2, 1.8]
},
"3.2": {
"vector": [-1.5, -3, -1.5]
},
"3.325": {
"vector": [0.2, 1.5, 3]
},
"3.45": {
"vector": [2, 3, -2],
"easing": "easeInElastic"
},
"3.525": {
"vector": [1, -1, 1.5]
},
"3.625": {
"vector": [0, 0.5, -0.75]
},
"3.725": {
"vector": [0, 0, 0.4],
"easing": "linear"
},
"3.875": {
"vector": [0, 0, 0]
}
}
},
"bullet": { "bullet": {
"position": { "position": {
"0.2": { "0.2": {
@ -1271,6 +1297,76 @@
} }
} }
}, },
"camera": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1": {
"vector": [3, 1, -2]
},
"0.25": {
"vector": [-1, -0.5, 1]
},
"0.45": {
"vector": [1.69, 0, 0]
},
"0.625": {
"vector": [3, 0, 1.5],
"easing": "easeInElastic"
},
"0.675": {
"vector": [4, 1, -2],
"easing": "easeInSine"
},
"0.8": {
"vector": [1, -0.5, 1.5]
},
"0.925": {
"vector": [2.5, 0, 1.2],
"easing": "easeOutSine"
},
"1.225": {
"vector": [3.5, 0, 2],
"easing": "easeInElastic"
},
"1.6": {
"vector": [2.89, 0, 0.12]
},
"1.875": {
"vector": [3.34, 0, 1.5]
},
"2.325": {
"vector": [2.5, 0, 2.2],
"easing": "linear"
},
"2.4": {
"vector": [4.5, -0.7, 1.2],
"easing": "easeInSine"
},
"2.45": {
"vector": [2.6, 0.4, -1.5],
"easing": "easeOutSine"
},
"2.55": {
"vector": [2, 0, 1.5],
"easing": "easeInElastic"
},
"2.675": {
"vector": [0.03, 0.25, -1.18]
},
"2.8": {
"vector": [0, 0, -2],
"easing": "easeInElastic"
},
"2.9": {
"vector": [0.2, 0, 0]
},
"3.0": {
"vector": [0, 0, 0]
}
}
},
"Lefthand": { "Lefthand": {
"rotation": { "rotation": {
"0.1": { "0.1": {
@ -1429,76 +1525,6 @@
"easing": "easeInElastic" "easing": "easeInElastic"
} }
} }
},
"camera": {
"rotation": {
"0.0": {
"vector": [0, 0, 0]
},
"0.1": {
"vector": [3, 1, -2]
},
"0.25": {
"vector": [-1, -0.5, 1]
},
"0.45": {
"vector": [1.69, 0, 0]
},
"0.625": {
"vector": [3, 0, 1.5],
"easing": "easeInElastic"
},
"0.675": {
"vector": [4, 1, -2],
"easing": "easeInSine"
},
"0.8": {
"vector": [1, -0.5, 1.5]
},
"0.925": {
"vector": [2.5, 0, 1.2],
"easing": "easeOutSine"
},
"1.225": {
"vector": [3.5, 0, 2],
"easing": "easeInElastic"
},
"1.6": {
"vector": [2.89, 0, 0.12]
},
"1.875": {
"vector": [3.34, 0, 1.5]
},
"2.325": {
"vector": [2.5, 0, 2.2],
"easing": "linear"
},
"2.4": {
"vector": [4.5, -0.7, 1.2],
"easing": "easeInSine"
},
"2.45": {
"vector": [2.6, 0.4, -1.5],
"easing": "easeOutSine"
},
"2.55": {
"vector": [2, 0, 1.5],
"easing": "easeInElastic"
},
"2.675": {
"vector": [0.03, 0.25, -1.18]
},
"2.8": {
"vector": [0, 0, -2],
"easing": "easeInElastic"
},
"2.9": {
"vector": [0.2, 0, 0]
},
"3.0": {
"vector": [0, 0, 0]
}
}
} }
}, },
"sound_effects": { "sound_effects": {

View file

@ -11,6 +11,10 @@
"visible_bounds_offset": [0, 0.5, 0] "visible_bounds_offset": [0, 0.5, 0]
}, },
"bones": [ "bones": [
{
"name": "camera",
"pivot": [2.97141, 7.56276, 13.47702]
},
{ {
"name": "root", "name": "root",
"pivot": [0, 1, 3] "pivot": [0, 1, 3]

View file

@ -52,13 +52,217 @@
{ {
"name": "rex", "name": "rex",
"parent": "gun", "parent": "gun",
"pivot": [0, 5.35078, -82.76641], "pivot": [0, 5.32344, -82.76641],
"cubes": [ "cubes": [
{ {
"origin": [-9.8154, -4.46462, -82.76641], "origin": [-0.03649, -4.49196, -82.76641],
"size": [19.6308, 19.6308, 0], "size": [0.07299, 19.6308, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": { "uv": {
"south": {"uv": [95.2625, 54.25], "uv_size": [32, 32]} "south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.03649, -4.49196, -82.76641],
"size": [0.07299, 19.6308, 0],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.06892, -4.49196, -82.76641],
"size": [0.13783, 4, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.06892, -4.49196, -82.76641],
"size": [0.13783, 4, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.06892, -4.49196, -82.76641],
"size": [0.13393, 4, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 0],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.06892, -4.49196, -82.76641],
"size": [0.13393, 4, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -180],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
}
]
},
{
"name": "bone173",
"parent": "rex",
"pivot": [0, 5.32344, -82.76641],
"cubes": [
{
"origin": [-0.05329, 4.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 3.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 2.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 1.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 1.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.05329, 4.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.05329, 3.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.05329, 2.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
}
]
},
{
"name": "bone174",
"parent": "rex",
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"cubes": [
{
"origin": [-0.05329, 4.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 3.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 2.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 1.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, -90],
"uv": {
"south": {"uv": [127, 0], "uv_size": [1, 1]}
}
},
{
"origin": [-0.05329, 1.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.05329, 4.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.05329, 3.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
}
},
{
"origin": [-0.05329, 2.18147, -82.76641],
"size": [0.10658, 0.07656, 0],
"pivot": [0, 5.32344, -82.76641],
"rotation": [0, 0, 90],
"uv": {
"south": {"uv": [128, 0], "uv_size": [-1, 1]}
} }
} }
] ]
@ -90,16 +294,7 @@
{ {
"name": "glass2", "name": "glass2",
"parent": "bone102", "parent": "bone102",
"pivot": [0, 5.30781, -5.66641], "pivot": [0, 5.30781, -5.66641]
"cubes": [
{
"origin": [-0.79419, 4.55971, -3.56641],
"size": [1.58838, 1.58838, 0],
"uv": {
"south": {"uv": [96, 96], "uv_size": [32, 32]}
}
}
]
}, },
{ {
"name": "bone104", "name": "bone104",
@ -17797,12 +17992,12 @@
"origin": [2.67388, -7.52896, -5.36163], "origin": [2.67388, -7.52896, -5.36163],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [124, 0], "uv_size": [4, 12]}, "north": {"uv": [127, 127], "uv_size": [1, 1]},
"east": {"uv": [124, 0], "uv_size": [4, 12]}, "east": {"uv": [127, 127], "uv_size": [1, 1]},
"south": {"uv": [124, 0], "uv_size": [4, 12]}, "south": {"uv": [127, 127], "uv_size": [1, 1]},
"west": {"uv": [124, 0], "uv_size": [4, 12]}, "west": {"uv": [127, 127], "uv_size": [1, 1]},
"up": {"uv": [128, 12], "uv_size": [-4, -12]}, "up": {"uv": [128, 128], "uv_size": [-1, -1]},
"down": {"uv": [128, 12], "uv_size": [-4, -12]} "down": {"uv": [128, 128], "uv_size": [-1, -1]}
} }
} }
] ]
@ -18022,12 +18217,12 @@
"origin": [-5.52302, -3.72921, 10.12641], "origin": [-5.52302, -3.72921, 10.12641],
"size": [4, 12, 4], "size": [4, 12, 4],
"uv": { "uv": {
"north": {"uv": [124, 0], "uv_size": [4, 12]}, "north": {"uv": [127, 126.75], "uv_size": [1, 1]},
"east": {"uv": [124, 0], "uv_size": [4, 12]}, "east": {"uv": [127, 126.75], "uv_size": [1, 1]},
"south": {"uv": [124, 0], "uv_size": [4, 12]}, "south": {"uv": [127, 126.75], "uv_size": [1, 1]},
"west": {"uv": [124, 0], "uv_size": [4, 12]}, "west": {"uv": [127, 126.75], "uv_size": [1, 1]},
"up": {"uv": [128, 12], "uv_size": [-4, -12]}, "up": {"uv": [128, 127.75], "uv_size": [-1, -1]},
"down": {"uv": [128, 12], "uv_size": [-4, -12]} "down": {"uv": [128, 127.75], "uv_size": [-1, -1]}
} }
} }
] ]

View file

@ -1803,6 +1803,287 @@
} }
] ]
}, },
{
"name": "guan10",
"parent": "0",
"pivot": [0.00001, 3.53415, -18.61352],
"cubes": [
{
"origin": [-0.3325, 1.4546, -12.83141],
"size": [0.465, 4.36206, 0.465],
"pivot": [-0.1, 3.53563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [59, 12], "uv_size": [0.5, 4.25]},
"east": {"uv": [14, 59], "uv_size": [0.5, 4.25]},
"south": {"uv": [59, 17], "uv_size": [0.5, 4.25]},
"west": {"uv": [20, 59], "uv_size": [0.5, 4.25]}
}
},
{
"origin": [1.84853, 3.53563, -12.93141],
"size": [0.665, 0.15, 0.665],
"pivot": [2.18103, 3.53563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [76, 80], "uv_size": [0.75, 0.25]},
"east": {"uv": [80, 76], "uv_size": [0.75, 0.25]},
"south": {"uv": [77, 80], "uv_size": [0.75, 0.25]},
"west": {"uv": [80, 77], "uv_size": [0.75, 0.25]},
"up": {"uv": [42, 75], "uv_size": [0.75, 0.75]},
"down": {"uv": [75, 42.75], "uv_size": [0.75, -0.75]}
}
},
{
"origin": [-2.51353, 3.53563, -12.93141],
"size": [0.665, 0.15, 0.665],
"pivot": [-2.18103, 3.53563, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [78, 80], "uv_size": [0.75, 0.25]},
"east": {"uv": [80, 78], "uv_size": [0.75, 0.25]},
"south": {"uv": [79, 80], "uv_size": [0.75, 0.25]},
"west": {"uv": [80, 79], "uv_size": [0.75, 0.25]},
"up": {"uv": [75, 43], "uv_size": [0.75, 0.75]},
"down": {"uv": [44, 75.75], "uv_size": [0.75, -0.75]}
}
},
{
"origin": [-1.5325, 5.67413, -13.18141],
"size": [1.965, 0.13471, 1.165],
"pivot": [-0.1, 3.53563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [2, 76], "uv_size": [2, 0.25]},
"east": {"uv": [22, 79], "uv_size": [1.25, 0.25]},
"south": {"uv": [76, 2], "uv_size": [2, 0.25]},
"west": {"uv": [79, 22], "uv_size": [1.25, 0.25]},
"up": {"uv": [56, 42], "uv_size": [2, 1.25]},
"down": {"uv": [56, 52.25], "uv_size": [2, -1.25]}
}
},
{
"origin": [2.26572, 4.11063, -12.88141],
"size": [0.565, 0.5, 0.565],
"pivot": [2.54822, 4.48563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [79, 43], "uv_size": [0.5, 0.5]},
"east": {"uv": [44, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 44], "uv_size": [0.5, 0.5]},
"west": {"uv": [45, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [2.3147, 4.35163, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [2.5972, 4.52663, -12.59891],
"rotation": [0, 0, 45],
"uv": {
"north": {"uv": [79, 41], "uv_size": [0.5, 0.5]},
"east": {"uv": [42, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 42], "uv_size": [0.5, 0.5]},
"west": {"uv": [43, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [2.49148, 10.92638, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [2.77398, 11.10138, -12.59891],
"rotation": [0, 0, -45],
"uv": {
"north": {"uv": [79, 45], "uv_size": [0.5, 0.5]},
"east": {"uv": [46, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 46], "uv_size": [0.5, 0.5]},
"west": {"uv": [47, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-0.2825, 8.64377, -12.88141],
"size": [0.565, 5.35078, 0.565],
"pivot": [0, 11.31916, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [33, 55], "uv_size": [0.5, 5.25]},
"east": {"uv": [46, 55], "uv_size": [0.5, 5.25]},
"south": {"uv": [47, 55], "uv_size": [0.5, 5.25]},
"west": {"uv": [54, 55], "uv_size": [0.5, 5.25]}
}
},
{
"origin": [2.53248, 4.62739, -12.88141],
"size": [0.565, 6.55, 0.565],
"pivot": [2.81498, 7.90239, -12.59891],
"rotation": [0, 0, 0],
"uv": {
"north": {"uv": [28, 54], "uv_size": [0.5, 6.5]},
"east": {"uv": [29, 54], "uv_size": [0.5, 6.5]},
"south": {"uv": [30, 54], "uv_size": [0.5, 6.5]},
"west": {"uv": [31, 54], "uv_size": [0.5, 6.5]}
}
},
{
"origin": [-2.83072, 4.11063, -12.88141],
"size": [0.565, 0.5, 0.565],
"pivot": [-2.54822, 4.48563, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [79, 51], "uv_size": [0.5, 0.5]},
"east": {"uv": [52, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 52], "uv_size": [0.5, 0.5]},
"west": {"uv": [53, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-2.8797, 4.35163, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [-2.5972, 4.52663, -12.59891],
"rotation": [0, 0, -45],
"uv": {
"north": {"uv": [79, 49], "uv_size": [0.5, 0.5]},
"east": {"uv": [50, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 50], "uv_size": [0.5, 0.5]},
"west": {"uv": [51, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-3.09748, 4.62739, -12.88141],
"size": [0.565, 6.55, 0.565],
"pivot": [-2.81498, 7.90239, -12.59891],
"rotation": [0, 0, 0],
"uv": {
"north": {"uv": [54, 45], "uv_size": [0.5, 6.5]},
"east": {"uv": [48, 54], "uv_size": [0.5, 6.5]},
"south": {"uv": [49, 54], "uv_size": [0.5, 6.5]},
"west": {"uv": [52, 54], "uv_size": [0.5, 6.5]}
}
},
{
"origin": [-3.05648, 10.92638, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [-2.77398, 11.10138, -12.59891],
"rotation": [0, 0, 45],
"uv": {
"north": {"uv": [79, 47], "uv_size": [0.5, 0.5]},
"east": {"uv": [48, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 48], "uv_size": [0.5, 0.5]},
"west": {"uv": [49, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-0.4325, 5.67413, -13.18141],
"size": [1.965, 0.13471, 1.165],
"pivot": [0.1, 3.53563, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [76, 3], "uv_size": [2, 0.25]},
"east": {"uv": [79, 23], "uv_size": [1.25, 0.25]},
"south": {"uv": [4, 76], "uv_size": [2, 0.25]},
"west": {"uv": [24, 79], "uv_size": [1.25, 0.25]},
"up": {"uv": [56, 53], "uv_size": [2, 1.25]},
"down": {"uv": [57, 5.25], "uv_size": [2, -1.25]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, 22.5],
"uv": {
"north": {"uv": [46, 13], "uv_size": [1.5, 3.5]},
"south": {"uv": [46, 17], "uv_size": [1.5, 3.5]},
"up": {"uv": [44, 15], "uv_size": [1.5, 3.75]},
"down": {"uv": [44, 22.75], "uv_size": [1.5, -3.75]}
}
},
{
"origin": [-0.36866, 1.54649, -14.44423],
"size": [0.73732, 3.97533, 3.77241],
"pivot": [0.00001, 3.53415, -12.60802],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [53, 22], "uv_size": [0.75, 4]},
"east": {"uv": [9, 26], "uv_size": [3.75, 4]},
"south": {"uv": [53, 54], "uv_size": [0.75, 4]},
"west": {"uv": [26, 14], "uv_size": [3.75, 4]},
"up": {"uv": [1, 55], "uv_size": [0.75, 3.75]},
"down": {"uv": [9, 58.75], "uv_size": [0.75, -3.75]}
}
},
{
"origin": [-0.41866, 1.53285, -13.99423],
"size": [0.70607, 4.07533, 2.73828],
"pivot": [-0.05, 3.52052, -12.55802],
"rotation": [0, 0, 90],
"uv": {
"east": {"uv": [21, 28], "uv_size": [2.75, 4]},
"west": {"uv": [24, 28], "uv_size": [2.75, 4]},
"up": {"uv": [59, 50], "uv_size": [0.75, 2.75]},
"down": {"uv": [59, 55.75], "uv_size": [0.75, -2.75]}
}
},
{
"origin": [-0.25, 1.49796, -14.24423],
"size": [0.5, 4.07533, 0.5],
"pivot": [0, 3.53563, -13.99423],
"rotation": [0, 45, 90],
"uv": {
"north": {"uv": [50, 62], "uv_size": [0.5, 4]},
"west": {"uv": [51, 62], "uv_size": [0.5, 4]},
"up": {"uv": [79, 39], "uv_size": [0.5, 0.5]},
"down": {"uv": [40, 79.5], "uv_size": [0.5, -0.5]}
}
},
{
"origin": [-0.25, 1.49796, -11.50595],
"size": [0.5, 4.07533, 0.5],
"pivot": [0, 3.53563, -11.25595],
"rotation": [0, 45, 90],
"uv": {
"east": {"uv": [52, 62], "uv_size": [0.5, 4]},
"south": {"uv": [53, 62], "uv_size": [0.5, 4]},
"up": {"uv": [79, 40], "uv_size": [0.5, 0.5]},
"down": {"uv": [41, 79.5], "uv_size": [0.5, -0.5]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, -67.5],
"uv": {
"north": {"uv": [46, 21], "uv_size": [1.5, 3.5]},
"south": {"uv": [23, 46], "uv_size": [1.5, 3.5]},
"up": {"uv": [21, 44], "uv_size": [1.5, 3.75]},
"down": {"uv": [44, 26.75], "uv_size": [1.5, -3.75]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, -112.5],
"uv": {
"north": {"uv": [46, 33], "uv_size": [1.5, 3.5]},
"south": {"uv": [46, 37], "uv_size": [1.5, 3.5]},
"up": {"uv": [44, 33], "uv_size": [1.5, 3.75]},
"down": {"uv": [44, 40.75], "uv_size": [1.5, -3.75]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, -22.5],
"uv": {
"north": {"uv": [46, 41], "uv_size": [1.5, 3.5]},
"south": {"uv": [0, 47], "uv_size": [1.5, 3.5]},
"up": {"uv": [44, 41], "uv_size": [1.5, 3.75]},
"down": {"uv": [45, 30.75], "uv_size": [1.5, -3.75]}
}
}
]
},
{ {
"name": "scope", "name": "scope",
"parent": "0", "parent": "0",
@ -1816,16 +2097,7 @@
{ {
"name": "glass2", "name": "glass2",
"parent": "bone102", "parent": "bone102",
"pivot": [0, 9.7164, -3.96641], "pivot": [0, 9.7164, -3.96641]
"cubes": [
{
"origin": [-0.91332, 6.80308, -3.96641],
"size": [1.82664, 1.82664, 0],
"uv": {
"south": {"uv": [96, 96], "uv_size": [32, 32]}
}
}
]
}, },
{ {
"name": "bone104", "name": "bone104",
@ -7429,287 +7701,6 @@
} }
] ]
}, },
{
"name": "guan10",
"parent": "body",
"pivot": [0.00001, 3.53415, -18.61352],
"cubes": [
{
"origin": [-0.3325, 1.4546, -12.83141],
"size": [0.465, 4.36206, 0.465],
"pivot": [-0.1, 3.53563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [59, 12], "uv_size": [0.5, 4.25]},
"east": {"uv": [14, 59], "uv_size": [0.5, 4.25]},
"south": {"uv": [59, 17], "uv_size": [0.5, 4.25]},
"west": {"uv": [20, 59], "uv_size": [0.5, 4.25]}
}
},
{
"origin": [1.84853, 3.53563, -12.93141],
"size": [0.665, 0.15, 0.665],
"pivot": [2.18103, 3.53563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [76, 80], "uv_size": [0.75, 0.25]},
"east": {"uv": [80, 76], "uv_size": [0.75, 0.25]},
"south": {"uv": [77, 80], "uv_size": [0.75, 0.25]},
"west": {"uv": [80, 77], "uv_size": [0.75, 0.25]},
"up": {"uv": [42, 75], "uv_size": [0.75, 0.75]},
"down": {"uv": [75, 42.75], "uv_size": [0.75, -0.75]}
}
},
{
"origin": [-2.51353, 3.53563, -12.93141],
"size": [0.665, 0.15, 0.665],
"pivot": [-2.18103, 3.53563, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [78, 80], "uv_size": [0.75, 0.25]},
"east": {"uv": [80, 78], "uv_size": [0.75, 0.25]},
"south": {"uv": [79, 80], "uv_size": [0.75, 0.25]},
"west": {"uv": [80, 79], "uv_size": [0.75, 0.25]},
"up": {"uv": [75, 43], "uv_size": [0.75, 0.75]},
"down": {"uv": [44, 75.75], "uv_size": [0.75, -0.75]}
}
},
{
"origin": [-1.5325, 5.67413, -13.18141],
"size": [1.965, 0.13471, 1.165],
"pivot": [-0.1, 3.53563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [2, 76], "uv_size": [2, 0.25]},
"east": {"uv": [22, 79], "uv_size": [1.25, 0.25]},
"south": {"uv": [76, 2], "uv_size": [2, 0.25]},
"west": {"uv": [79, 22], "uv_size": [1.25, 0.25]},
"up": {"uv": [56, 42], "uv_size": [2, 1.25]},
"down": {"uv": [56, 52.25], "uv_size": [2, -1.25]}
}
},
{
"origin": [2.26572, 4.21063, -12.88141],
"size": [0.565, 0.4, 0.565],
"pivot": [2.54822, 4.48563, -12.59891],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [79, 43], "uv_size": [0.5, 0.5]},
"east": {"uv": [44, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 44], "uv_size": [0.5, 0.5]},
"west": {"uv": [45, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [2.3147, 4.35163, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [2.5972, 4.52663, -12.59891],
"rotation": [0, 0, 45],
"uv": {
"north": {"uv": [79, 41], "uv_size": [0.5, 0.5]},
"east": {"uv": [42, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 42], "uv_size": [0.5, 0.5]},
"west": {"uv": [43, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [2.49148, 10.92638, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [2.77398, 11.10138, -12.59891],
"rotation": [0, 0, -45],
"uv": {
"north": {"uv": [79, 45], "uv_size": [0.5, 0.5]},
"east": {"uv": [46, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 46], "uv_size": [0.5, 0.5]},
"west": {"uv": [47, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-0.2825, 8.64377, -12.88141],
"size": [0.565, 5.35078, 0.565],
"pivot": [0, 11.31916, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [33, 55], "uv_size": [0.5, 5.25]},
"east": {"uv": [46, 55], "uv_size": [0.5, 5.25]},
"south": {"uv": [47, 55], "uv_size": [0.5, 5.25]},
"west": {"uv": [54, 55], "uv_size": [0.5, 5.25]}
}
},
{
"origin": [2.53248, 4.62739, -12.88141],
"size": [0.565, 6.55, 0.565],
"pivot": [2.81498, 7.90239, -12.59891],
"rotation": [0, 0, 0],
"uv": {
"north": {"uv": [28, 54], "uv_size": [0.5, 6.5]},
"east": {"uv": [29, 54], "uv_size": [0.5, 6.5]},
"south": {"uv": [30, 54], "uv_size": [0.5, 6.5]},
"west": {"uv": [31, 54], "uv_size": [0.5, 6.5]}
}
},
{
"origin": [-2.83072, 4.11063, -12.88141],
"size": [0.565, 0.5, 0.565],
"pivot": [-2.54822, 4.48563, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [79, 51], "uv_size": [0.5, 0.5]},
"east": {"uv": [52, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 52], "uv_size": [0.5, 0.5]},
"west": {"uv": [53, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-2.8797, 4.35163, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [-2.5972, 4.52663, -12.59891],
"rotation": [0, 0, -45],
"uv": {
"north": {"uv": [79, 49], "uv_size": [0.5, 0.5]},
"east": {"uv": [50, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 50], "uv_size": [0.5, 0.5]},
"west": {"uv": [51, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-3.09748, 4.62739, -12.88141],
"size": [0.565, 6.55, 0.565],
"pivot": [-2.81498, 7.90239, -12.59891],
"rotation": [0, 0, 0],
"uv": {
"north": {"uv": [54, 45], "uv_size": [0.5, 6.5]},
"east": {"uv": [48, 54], "uv_size": [0.5, 6.5]},
"south": {"uv": [49, 54], "uv_size": [0.5, 6.5]},
"west": {"uv": [52, 54], "uv_size": [0.5, 6.5]}
}
},
{
"origin": [-3.05648, 10.92638, -12.88141],
"size": [0.565, 0.6, 0.565],
"pivot": [-2.77398, 11.10138, -12.59891],
"rotation": [0, 0, 45],
"uv": {
"north": {"uv": [79, 47], "uv_size": [0.5, 0.5]},
"east": {"uv": [48, 79], "uv_size": [0.5, 0.5]},
"south": {"uv": [79, 48], "uv_size": [0.5, 0.5]},
"west": {"uv": [49, 79], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [-0.4325, 5.67413, -13.18141],
"size": [1.965, 0.13471, 1.165],
"pivot": [0.1, 3.53563, -12.59891],
"rotation": [0, 0, -90],
"uv": {
"north": {"uv": [76, 3], "uv_size": [2, 0.25]},
"east": {"uv": [79, 23], "uv_size": [1.25, 0.25]},
"south": {"uv": [4, 76], "uv_size": [2, 0.25]},
"west": {"uv": [24, 79], "uv_size": [1.25, 0.25]},
"up": {"uv": [56, 53], "uv_size": [2, 1.25]},
"down": {"uv": [57, 5.25], "uv_size": [2, -1.25]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, 22.5],
"uv": {
"north": {"uv": [46, 13], "uv_size": [1.5, 3.5]},
"south": {"uv": [46, 17], "uv_size": [1.5, 3.5]},
"up": {"uv": [44, 15], "uv_size": [1.5, 3.75]},
"down": {"uv": [44, 22.75], "uv_size": [1.5, -3.75]}
}
},
{
"origin": [-0.36866, 1.54649, -14.44423],
"size": [0.73732, 3.97533, 3.77241],
"pivot": [0.00001, 3.53415, -12.60802],
"rotation": [0, 0, 90],
"uv": {
"north": {"uv": [53, 22], "uv_size": [0.75, 4]},
"east": {"uv": [9, 26], "uv_size": [3.75, 4]},
"south": {"uv": [53, 54], "uv_size": [0.75, 4]},
"west": {"uv": [26, 14], "uv_size": [3.75, 4]},
"up": {"uv": [1, 55], "uv_size": [0.75, 3.75]},
"down": {"uv": [9, 58.75], "uv_size": [0.75, -3.75]}
}
},
{
"origin": [-0.41866, 1.53285, -13.99423],
"size": [0.70607, 4.07533, 2.73828],
"pivot": [-0.05, 3.52052, -12.55802],
"rotation": [0, 0, 90],
"uv": {
"east": {"uv": [21, 28], "uv_size": [2.75, 4]},
"west": {"uv": [24, 28], "uv_size": [2.75, 4]},
"up": {"uv": [59, 50], "uv_size": [0.75, 2.75]},
"down": {"uv": [59, 55.75], "uv_size": [0.75, -2.75]}
}
},
{
"origin": [-0.25, 1.49796, -14.24423],
"size": [0.5, 4.07533, 0.5],
"pivot": [0, 3.53563, -13.99423],
"rotation": [0, 45, 90],
"uv": {
"north": {"uv": [50, 62], "uv_size": [0.5, 4]},
"west": {"uv": [51, 62], "uv_size": [0.5, 4]},
"up": {"uv": [79, 39], "uv_size": [0.5, 0.5]},
"down": {"uv": [40, 79.5], "uv_size": [0.5, -0.5]}
}
},
{
"origin": [-0.25, 1.49796, -11.50595],
"size": [0.5, 4.07533, 0.5],
"pivot": [0, 3.53563, -11.25595],
"rotation": [0, 45, 90],
"uv": {
"east": {"uv": [52, 62], "uv_size": [0.5, 4]},
"south": {"uv": [53, 62], "uv_size": [0.5, 4]},
"up": {"uv": [79, 40], "uv_size": [0.5, 0.5]},
"down": {"uv": [41, 79.5], "uv_size": [0.5, -0.5]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, -67.5],
"uv": {
"north": {"uv": [46, 21], "uv_size": [1.5, 3.5]},
"south": {"uv": [23, 46], "uv_size": [1.5, 3.5]},
"up": {"uv": [21, 44], "uv_size": [1.5, 3.75]},
"down": {"uv": [44, 26.75], "uv_size": [1.5, -3.75]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, -112.5],
"uv": {
"north": {"uv": [46, 33], "uv_size": [1.5, 3.5]},
"south": {"uv": [46, 37], "uv_size": [1.5, 3.5]},
"up": {"uv": [44, 33], "uv_size": [1.5, 3.75]},
"down": {"uv": [44, 40.75], "uv_size": [1.5, -3.75]}
}
},
{
"origin": [-0.71866, 1.79649, -14.54423],
"size": [1.43732, 3.47533, 3.87241],
"pivot": [0.00001, 3.53415, -18.61352],
"rotation": [0, 0, -22.5],
"uv": {
"north": {"uv": [46, 41], "uv_size": [1.5, 3.5]},
"south": {"uv": [0, 47], "uv_size": [1.5, 3.5]},
"up": {"uv": [44, 41], "uv_size": [1.5, 3.75]},
"down": {"uv": [45, 30.75], "uv_size": [1.5, -3.75]}
}
}
]
},
{ {
"name": "guan14", "name": "guan14",
"parent": "body", "parent": "body",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 129 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 163 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

View file

@ -16,6 +16,6 @@
"burst": 0, "burst": 0,
"auto": 0, "auto": 0,
"burst_size": 1, "burst_size": 1,
"normal_reload_time": 86, "normal_reload_time": 66,
"empty_reload_time": 102 "empty_reload_time": 83
} }