添加Target,添加动画和模型资源

This commit is contained in:
Light_Quanta 2025-03-27 02:34:24 +08:00
parent 649ba27765
commit ce35973766
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
142 changed files with 2281260 additions and 26 deletions

View file

@ -0,0 +1,27 @@
package com.atsuishio.superbwarfare.client.layer;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.entity.TargetEntity;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.renderer.GeoRenderer;
import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
public class TargetLayer extends GeoRenderLayer<TargetEntity> {
private static final ResourceLocation LAYER = ModUtils.loc("textures/entity/target_e.png");
public TargetLayer(GeoRenderer<TargetEntity> entityRenderer) {
super(entityRenderer);
}
@Override
public void render(PoseStack poseStack, TargetEntity animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) {
RenderType glowRenderType = RenderType.eyes(LAYER);
getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 0xFFFFFFFF);
}
}

View file

@ -0,0 +1,24 @@
package com.atsuishio.superbwarfare.client.model.entity;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.entity.TargetEntity;
import net.minecraft.resources.ResourceLocation;
import software.bernie.geckolib.model.GeoModel;
public class TargetModel extends GeoModel<TargetEntity> {
@Override
public ResourceLocation getAnimationResource(TargetEntity entity) {
return ModUtils.loc("animations/target.animation.json");
}
@Override
public ResourceLocation getModelResource(TargetEntity entity) {
return ModUtils.loc("geo/target.geo.json");
}
@Override
public ResourceLocation getTextureResource(TargetEntity entity) {
return ModUtils.loc("textures/entity/target.png");
}
}

View file

@ -0,0 +1,45 @@
package com.atsuishio.superbwarfare.client.renderer.entity;
import com.atsuishio.superbwarfare.client.layer.TargetLayer;
import com.atsuishio.superbwarfare.client.model.entity.TargetModel;
import com.atsuishio.superbwarfare.entity.TargetEntity;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.EntityRendererProvider;
import net.minecraft.resources.ResourceLocation;
import org.jetbrains.annotations.Nullable;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.renderer.GeoEntityRenderer;
public class TargetRenderer extends GeoEntityRenderer<TargetEntity> {
public TargetRenderer(EntityRendererProvider.Context renderManager) {
super(renderManager, new TargetModel());
this.shadowRadius = 0f;
this.addRenderLayer(new TargetLayer(this));
}
@Override
public RenderType getRenderType(TargetEntity animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable));
}
@Override
public void preRender(PoseStack poseStack, TargetEntity animatable, BakedGeoModel model, @Nullable MultiBufferSource bufferSource, @Nullable VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, int colour) {
float scale = 1f;
this.scaleHeight = scale;
this.scaleWidth = scale;
super.preRender(poseStack, animatable, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, colour);
}
@Override
protected float getDeathMaxRotation(TargetEntity entityLivingBaseIn) {
return 0.0F;
}
@Override
public boolean shouldShowName(TargetEntity animatable) {
return animatable.hasCustomName();
}
}

View file

@ -0,0 +1,241 @@
package com.atsuishio.superbwarfare.entity;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.capability.ModCapabilities;
import com.atsuishio.superbwarfare.init.ModItems;
import com.atsuishio.superbwarfare.init.ModSounds;
import com.atsuishio.superbwarfare.tools.FormatTool;
import com.atsuishio.superbwarfare.tools.SoundTool;
import net.minecraft.commands.arguments.EntityAnchorArgument;
import net.minecraft.core.BlockPos;
import net.minecraft.core.NonNullList;
import net.minecraft.network.chat.Component;
import net.minecraft.network.syncher.EntityDataAccessor;
import net.minecraft.network.syncher.EntityDataSerializers;
import net.minecraft.network.syncher.SynchedEntityData;
import net.minecraft.sounds.SoundSource;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.damagesource.DamageSource;
import net.minecraft.world.damagesource.DamageTypes;
import net.minecraft.world.entity.*;
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.entity.projectile.ThrownPotion;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
import net.minecraft.world.phys.Vec3;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.neoforge.event.entity.living.LivingDeathEvent;
import org.jetbrains.annotations.NotNull;
import software.bernie.geckolib.animatable.GeoEntity;
import software.bernie.geckolib.animatable.instance.AnimatableInstanceCache;
import software.bernie.geckolib.animation.AnimationState;
import software.bernie.geckolib.animation.*;
import software.bernie.geckolib.util.GeckoLibUtil;
@EventBusSubscriber(modid = ModUtils.MODID)
public class TargetEntity extends LivingEntity implements GeoEntity {
public static final EntityDataAccessor<Integer> DOWN_TIME = SynchedEntityData.defineId(TargetEntity.class, EntityDataSerializers.INT);
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
public TargetEntity(EntityType<TargetEntity> type, Level world) {
super(type, world);
this.noCulling = true;
}
@Override
protected void defineSynchedData(SynchedEntityData.@NotNull Builder builder) {
super.defineSynchedData(builder);
builder.define(DOWN_TIME, 0);
}
@Override
public @NotNull Iterable<ItemStack> getArmorSlots() {
return NonNullList.withSize(1, ItemStack.EMPTY);
}
@Override
public @NotNull ItemStack getItemBySlot(@NotNull EquipmentSlot pSlot) {
return ItemStack.EMPTY;
}
@Override
public void setItemSlot(@NotNull EquipmentSlot pSlot, @NotNull ItemStack pStack) {
}
@Override
public boolean causeFallDamage(float l, float d, @NotNull DamageSource source) {
return false;
}
@Override
public boolean shouldRenderAtSqrDistance(double pDistance) {
return true;
}
@Override
public boolean hurt(DamageSource source, float amount) {
if (source.is(DamageTypes.IN_FIRE)
|| source.getDirectEntity() instanceof ThrownPotion
|| source.getDirectEntity() instanceof AreaEffectCloud
|| source.is(DamageTypes.FALL)
|| source.is(DamageTypes.CACTUS)
|| source.is(DamageTypes.DROWN)
|| source.is(DamageTypes.LIGHTNING_BOLT)
|| source.is(DamageTypes.FALLING_ANVIL)
|| source.is(DamageTypes.DRAGON_BREATH)
|| source.is(DamageTypes.WITHER)
|| source.is(DamageTypes.WITHER_SKULL)
|| source.is(DamageTypes.MAGIC)
|| this.entityData.get(DOWN_TIME) > 0) {
return false;
}
if (!this.level().isClientSide()) {
this.level().playSound(null, BlockPos.containing(this.getX(), this.getY(), this.getZ()), ModSounds.HIT.get(), SoundSource.BLOCKS, 1, 1);
} else {
this.level().playLocalSound(this.getX(), this.getY(), this.getZ(), ModSounds.HIT.get(), SoundSource.BLOCKS, 1, 1, false);
}
return super.hurt(source, amount);
}
@SubscribeEvent
public static void onTargetDown(LivingDeathEvent event) {
var entity = event.getEntity();
var sourceEntity = event.getSource().getEntity();
if (entity instanceof TargetEntity targetEntity) {
event.setCanceled(true);
targetEntity.setHealth(targetEntity.getMaxHealth());
if (sourceEntity == null) return;
if (sourceEntity instanceof Player player) {
player.displayClientMessage(Component.translatable("tips.superbwarfare.target.down",
FormatTool.format1D((entity.position()).distanceTo((sourceEntity.position()))), "m"), true);
SoundTool.playLocalSound(player, ModSounds.TARGET_DOWN.get(), 1, 1);
targetEntity.entityData.set(DOWN_TIME, 40);
}
}
}
@Override
public boolean isPickable() {
return this.entityData.get(DOWN_TIME) == 0;
}
@Override
public void die(@NotNull DamageSource source) {
super.die(source);
}
@Override
public @NotNull InteractionResult interact(Player player, @NotNull InteractionHand hand) {
if (player.isShiftKeyDown()) {
if (!this.level().isClientSide()) {
this.discard();
}
if (!player.getAbilities().instabuild) {
player.addItem(new ItemStack(ModItems.TARGET_DEPLOYER.get()));
}
} else {
var cap = player.getCapability(ModCapabilities.PLAYER_VARIABLE, null);
if (cap != null && !cap.zoom) {
this.lookAt(EntityAnchorArgument.Anchor.EYES, new Vec3((player.getX()), this.getY(), (player.getZ())));
this.setXRot(0);
this.xRotO = this.getXRot();
this.entityData.set(DOWN_TIME, 0);
}
}
return InteractionResult.sidedSuccess(this.level().isClientSide());
}
@Override
public void tick() {
super.tick();
if (this.entityData.get(DOWN_TIME) > 0) {
this.entityData.set(DOWN_TIME, this.entityData.get(DOWN_TIME) - 1);
}
}
@Override
public @NotNull Vec3 getDeltaMovement() {
return new Vec3(0, 0, 0);
}
@Override
public boolean isPushable() {
return false;
}
@Override
public @NotNull HumanoidArm getMainArm() {
return HumanoidArm.RIGHT;
}
@Override
protected void doPush(@NotNull Entity entityIn) {
}
@Override
protected void pushEntities() {
}
@Override
public void setNoGravity(boolean ignored) {
super.setNoGravity(true);
}
@Override
public void aiStep() {
super.aiStep();
this.updateSwingTime();
this.setNoGravity(true);
}
public static AttributeSupplier.Builder createAttributes() {
return Mob.createMobAttributes()
.add(Attributes.MOVEMENT_SPEED, 0)
.add(Attributes.MAX_HEALTH, 40)
.add(Attributes.ARMOR, 0)
.add(Attributes.ATTACK_DAMAGE, 0)
.add(Attributes.FOLLOW_RANGE, 16)
.add(Attributes.KNOCKBACK_RESISTANCE, 10)
.add(Attributes.FLYING_SPEED, 0);
}
@Override
protected void tickDeath() {
++this.deathTime;
if (this.deathTime >= 100) {
this.spawnAtLocation(new ItemStack(ModItems.TARGET_DEPLOYER.get()));
this.remove(RemovalReason.KILLED);
}
}
private PlayState movementPredicate(AnimationState<TargetEntity> event) {
if (this.entityData.get(DOWN_TIME) > 0) {
return event.setAndContinue(RawAnimation.begin().thenPlay("animation.target.down"));
}
return event.setAndContinue(RawAnimation.begin().thenLoop("animation.target.idle"));
}
@Override
public void registerControllers(AnimatableManager.ControllerRegistrar data) {
data.add(new AnimationController<>(this, "movement", 0, this::movementPredicate));
}
@Override
public AnimatableInstanceCache getAnimatableInstanceCache() {
return this.cache;
}
}

View file

@ -4,6 +4,7 @@ import com.atsuishio.superbwarfare.block.BarbedWireBlock;
import com.atsuishio.superbwarfare.config.server.MiscConfig;
import com.atsuishio.superbwarfare.config.server.ProjectileConfig;
import com.atsuishio.superbwarfare.entity.ICustomKnockback;
import com.atsuishio.superbwarfare.entity.TargetEntity;
import com.atsuishio.superbwarfare.init.*;
import com.atsuishio.superbwarfare.network.message.ClientIndicatorMessage;
import com.atsuishio.superbwarfare.network.message.ClientMotionSyncMessage;
@ -128,8 +129,7 @@ public class ProjectileEntity extends Projectile implements IEntityWithComplexSp
if (entity.equals(this.shooter)) continue;
if (entity.equals(this.shooter.getVehicle())) continue;
// TODO target entity
// if (entity instanceof TargetEntity && entity.getEntityData().get(TargetEntity.DOWN_TIME) > 0) continue;
if (entity instanceof TargetEntity && entity.getEntityData().get(TargetEntity.DOWN_TIME) > 0) continue;
EntityResult result = this.getHitResult(entity, startVec, endVec);
if (result == null) continue;
@ -225,7 +225,7 @@ public class ProjectileEntity extends Projectile implements IEntityWithComplexSp
}
@Override
protected void defineSynchedData(SynchedEntityData.Builder builder) {
protected void defineSynchedData(SynchedEntityData.@NotNull Builder builder) {
builder.define(COLOR_R, 1.0f)
.define(COLOR_G, 222 / 255f)
.define(COLOR_B, 39 / 255f);
@ -267,10 +267,9 @@ public class ProjectileEntity extends Projectile implements IEntityWithComplexSp
if (!this.beast) {
this.bypassArmorRate -= 0.2F;
if (this.bypassArmorRate < 0.8F) {
// TODO target
// if (result != null && !(((EntityHitResult) result).getEntity() instanceof TargetEntity target && target.getEntityData().get(TargetEntity.DOWN_TIME) > 0)) {
// break;
// }
if (result != null && !(((EntityHitResult) result).getEntity() instanceof TargetEntity target && target.getEntityData().get(TargetEntity.DOWN_TIME) > 0)) {
break;
}
}
}
}
@ -424,7 +423,7 @@ public class ProjectileEntity extends Projectile implements IEntityWithComplexSp
if (!this.shooter.level().isClientSide() && this.shooter instanceof ServerPlayer serverPlayer) {
var holder = score == 10 ? Holder.direct(ModSounds.HEADSHOT.get()) : Holder.direct(ModSounds.INDICATION.get());
serverPlayer.connection.send(new ClientboundSoundPacket(holder, SoundSource.PLAYERS, player.getX(), player.getY(), player.getZ(), 1f, 1f, player.level().random.nextLong()));
PacketDistributor.sendToPlayer(player, new ClientIndicatorMessage(score == 10 ? 1 : 0, 5));
PacketDistributor.sendToPlayer(serverPlayer, new ClientIndicatorMessage(score == 10 ? 1 : 0, 5));
}
ItemStack stack = player.getOffhandItem();
@ -482,9 +481,7 @@ public class ProjectileEntity extends Projectile implements IEntityWithComplexSp
if (beast && entity instanceof LivingEntity living) {
if (living.isDeadOrDying()) return;
// TODO target entity
// if (living instanceof TargetEntity) return;
if (living instanceof TargetEntity) return;
if (this.shooter instanceof ServerPlayer player) {
PacketDistributor.sendToPlayer(player, new ClientIndicatorMessage(0, 5));

View file

@ -1,6 +1,7 @@
package com.atsuishio.superbwarfare.init;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.entity.TargetEntity;
import com.atsuishio.superbwarfare.entity.projectile.LaserEntity;
import com.atsuishio.superbwarfare.entity.projectile.ProjectileEntity;
import net.minecraft.core.registries.BuiltInRegistries;
@ -18,10 +19,10 @@ public class ModEntities {
public static final DeferredRegister<EntityType<?>> REGISTRY = DeferredRegister.create(BuiltInRegistries.ENTITY_TYPE, ModUtils.MODID);
// // Living Entities
// public static final DeferredHolder<EntityType<?>, EntityType<TargetEntity>> TARGET = register("target",
// EntityType.Builder.<TargetEntity>of(TargetEntity::new, MobCategory.CREATURE).setTrackingRange(64).setUpdateInterval(3).setCustomClientFactory(TargetEntity::new).fireImmune().sized(0.875f, 2f));
// public static final DeferredHolder<EntityType<?>, EntityType<SenpaiEntity>> SENPAI = register("senpai",
// Living Entities
public static final DeferredHolder<EntityType<?>, EntityType<TargetEntity>> TARGET = register("target",
EntityType.Builder.of(TargetEntity::new, MobCategory.CREATURE).setTrackingRange(64).setUpdateInterval(3).fireImmune().sized(0.875f, 2f));
// public static final DeferredHolder<EntityType<?>, EntityType<SenpaiEntity>> SENPAI = register("senpai",
// EntityType.Builder.<SenpaiEntity>of(SenpaiEntity::new, MobCategory.MONSTER).setTrackingRange(64).setUpdateInterval(3).setCustomClientFactory(SenpaiEntity::new)
// .sized(0.6f, 2f));
//
@ -30,7 +31,7 @@ public class ModEntities {
// EntityType.Builder.<MortarEntity>of(MortarEntity::new, MobCategory.MISC).setTrackingRange(64).setUpdateInterval(3).setCustomClientFactory(MortarEntity::new).fireImmune().sized(0.8f, 1.4f));
public static final DeferredHolder<EntityType<?>, EntityType<LaserEntity>> LASER = register("laser",
EntityType.Builder.<LaserEntity>of(LaserEntity::new, MobCategory.MISC).sized(0.1f, 0.1f).fireImmune().setUpdateInterval(1));
// public static final DeferredHolder<EntityType<?>, EntityType<FlareDecoyEntity>> FLARE_DECOY = register("flare_decoy",
// public static final DeferredHolder<EntityType<?>, EntityType<FlareDecoyEntity>> FLARE_DECOY = register("flare_decoy",
// EntityType.Builder.<FlareDecoyEntity>of(FlareDecoyEntity::new, MobCategory.MISC).setTrackingRange(64).setUpdateInterval(1).setCustomClientFactory(FlareDecoyEntity::new).sized(0.5f, 0.5f));
// public static final DeferredHolder<EntityType<?>, EntityType<ClaymoreEntity>> CLAYMORE = register("claymore",
// EntityType.Builder.<ClaymoreEntity>of(ClaymoreEntity::new, MobCategory.MISC).setTrackingRange(64).setUpdateInterval(1).sized(0.5f, 0.5f));
@ -49,8 +50,8 @@ public class ModEntities {
// EntityType.Builder.<RpgRocketEntity>of(RpgRocketEntity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(false).setTrackingRange(64).setUpdateInterval(1).setCustomClientFactory(RpgRocketEntity::new).sized(0.5f, 0.5f));
// public static final DeferredHolder<EntityType<?>, EntityType<MortarShellEntity>> MORTAR_SHELL = register("mortar_shell",
// EntityType.Builder.<MortarShellEntity>of(MortarShellEntity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(false).setTrackingRange(64).setUpdateInterval(1).setCustomClientFactory(MortarShellEntity::new).sized(0.5f, 0.5f));
public static final DeferredHolder<EntityType<?>, EntityType<ProjectileEntity>> PROJECTILE = register("projectile",
EntityType.Builder.<ProjectileEntity>of(ProjectileEntity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(false).setTrackingRange(64).noSave().noSummon().sized(0.25f, 0.25f));
public static final DeferredHolder<EntityType<?>, EntityType<ProjectileEntity>> PROJECTILE = register("projectile",
EntityType.Builder.<ProjectileEntity>of(ProjectileEntity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(false).setTrackingRange(64).noSave().noSummon().sized(0.25f, 0.25f));
// public static final DeferredHolder<EntityType<?>, EntityType<CannonShellEntity>> CANNON_SHELL = register("cannon_shell",
// EntityType.Builder.<CannonShellEntity>of(CannonShellEntity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(false).setTrackingRange(64).setUpdateInterval(1).setCustomClientFactory(CannonShellEntity::new).sized(0.5f, 0.5f));
// public static final DeferredHolder<EntityType<?>, EntityType<GunGrenadeEntity>> GUN_GRENADE = register("gun_grenade",
@ -110,7 +111,7 @@ public static final DeferredHolder<EntityType<?>, EntityType<ProjectileEntity>>
@SubscribeEvent
public static void registerAttributes(EntityAttributeCreationEvent event) {
// event.put(TARGET.get(), TargetEntity.createAttributes().build());
event.put(TARGET.get(), TargetEntity.createAttributes().build());
// event.put(SENPAI.get(), SenpaiEntity.createAttributes().build());
}
}

View file

@ -2,6 +2,7 @@ package com.atsuishio.superbwarfare.init;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.client.renderer.entity.LaserEntityRenderer;
import com.atsuishio.superbwarfare.client.renderer.entity.TargetRenderer;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
@ -18,7 +19,7 @@ public class ModEntityRenderers {
// event.registerEntityRenderer(ModEntities.C_4.get(), C4Renderer::new);
// event.registerEntityRenderer(ModEntities.TASER_BULLET.get(), TaserBulletProjectileRenderer::new);
// event.registerEntityRenderer(ModEntities.GUN_GRENADE.get(), GunGrenadeRenderer::new);
// event.registerEntityRenderer(ModEntities.TARGET.get(), TargetRenderer::new);
event.registerEntityRenderer(ModEntities.TARGET.get(), TargetRenderer::new);
// event.registerEntityRenderer(ModEntities.RPG_ROCKET.get(), RpgRocketRenderer::new);
// event.registerEntityRenderer(ModEntities.HELI_ROCKET.get(), HeliRocketRenderer::new);
// event.registerEntityRenderer(ModEntities.MORTAR_SHELL.get(), MortarShellRenderer::new);

View file

@ -115,7 +115,7 @@ public class ModItems {
// public static final DeferredHolder<Item, Item> MONITOR = ITEMS.register("monitor", Monitor::new);
//
// public static final DeferredHolder<Item, Item> DETONATOR = ITEMS.register("detonator", Detonator::new);
// public static final DeferredHolder<Item, Item> TARGET_DEPLOYER = ITEMS.register("target_deployer", TargetDeployer::new);
public static final DeferredHolder<Item, Item> TARGET_DEPLOYER = ITEMS.register("target_deployer", TargetDeployer::new);
// public static final DeferredHolder<Item, Item> KNIFE = ITEMS.register("knife", Knife::new);
// public static final DeferredHolder<Item, Item> HAMMER = ITEMS.register("hammer", Hammer::new);
public static final DeferredHolder<Item, Item> CROWBAR = ITEMS.register("crowbar", Crowbar::new);

View file

@ -0,0 +1,89 @@
package com.atsuishio.superbwarfare.item;
import com.atsuishio.superbwarfare.entity.TargetEntity;
import com.atsuishio.superbwarfare.init.ModEntities;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.stats.Stats;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.InteractionResultHolder;
import net.minecraft.world.entity.MobSpawnType;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.context.UseOnContext;
import net.minecraft.world.level.ClipContext;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.LiquidBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.gameevent.GameEvent;
import net.minecraft.world.phys.BlockHitResult;
import net.minecraft.world.phys.HitResult;
import org.jetbrains.annotations.NotNull;
import java.util.Objects;
public class TargetDeployer extends Item {
public TargetDeployer() {
super(new Properties());
}
@Override
public @NotNull InteractionResult useOn(UseOnContext pContext) {
Level level = pContext.getLevel();
if (!(level instanceof ServerLevel)) {
return InteractionResult.SUCCESS;
} else {
ItemStack itemstack = pContext.getItemInHand();
BlockPos blockpos = pContext.getClickedPos();
Direction direction = pContext.getClickedFace();
BlockState blockstate = level.getBlockState(blockpos);
BlockPos pos;
if (blockstate.getCollisionShape(level, blockpos).isEmpty()) {
pos = blockpos;
} else {
pos = blockpos.relative(direction);
}
if (ModEntities.TARGET.get().spawn((ServerLevel) level, itemstack, pContext.getPlayer(), pos, MobSpawnType.SPAWN_EGG, true, !Objects.equals(blockpos, pos) && direction == Direction.UP) != null) {
itemstack.shrink(1);
level.gameEvent(pContext.getPlayer(), GameEvent.ENTITY_PLACE, blockpos);
}
return InteractionResult.CONSUME;
}
}
@Override
public @NotNull InteractionResultHolder<ItemStack> use(@NotNull Level pLevel, Player pPlayer, @NotNull InteractionHand pHand) {
ItemStack itemstack = pPlayer.getItemInHand(pHand);
BlockHitResult blockhitresult = getPlayerPOVHitResult(pLevel, pPlayer, ClipContext.Fluid.SOURCE_ONLY);
if (blockhitresult.getType() != HitResult.Type.BLOCK) {
return InteractionResultHolder.pass(itemstack);
} else if (!(pLevel instanceof ServerLevel)) {
return InteractionResultHolder.success(itemstack);
} else {
BlockPos blockpos = blockhitresult.getBlockPos();
if (!(pLevel.getBlockState(blockpos).getBlock() instanceof LiquidBlock)) {
return InteractionResultHolder.pass(itemstack);
} else if (pLevel.mayInteract(pPlayer, blockpos) && pPlayer.mayUseItemAt(blockpos, blockhitresult.getDirection(), itemstack)) {
TargetEntity entity = ModEntities.TARGET.get().spawn((ServerLevel) pLevel, itemstack, pPlayer, blockpos, MobSpawnType.SPAWN_EGG, false, false);
if (entity == null) {
return InteractionResultHolder.pass(itemstack);
} else {
if (!pPlayer.getAbilities().instabuild) {
itemstack.shrink(1);
}
pPlayer.awardStat(Stats.ITEM_USED.get(this));
pLevel.gameEvent(pPlayer, GameEvent.ENTITY_PLACE, entity.position());
return InteractionResultHolder.consume(itemstack);
}
} else {
return InteractionResultHolder.fail(itemstack);
}
}
}
}

View file

@ -13,6 +13,7 @@ import net.minecraft.server.level.ServerPlayer;
import net.minecraft.sounds.SoundSource;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.Level;
import net.neoforged.neoforge.network.PacketDistributor;
import net.neoforged.neoforge.network.handling.IPayloadContext;
import org.jetbrains.annotations.NotNull;
@ -49,14 +50,11 @@ public record LaserShootMessage(
if (headshot) {
entity.hurt(ModDamageTypes.causeLaserHeadshotDamage(level.registryAccess(), player, player), (float) (2 * damage));
player.level().playSound(null, player.blockPosition(), ModSounds.HEADSHOT.get(), SoundSource.VOICE, 0.1f, 1);
// TODO indicator
// ModUtils.PACKET_HANDLER.send(PacketDistributor.PLAYER.with(() -> player), new ClientIndicatorMessage(1, 5));
PacketDistributor.sendToPlayer(player, new ClientIndicatorMessage(1, 5));
} else {
entity.hurt(ModDamageTypes.causeLaserDamage(level.registryAccess(), player, player), (float) damage);
player.level().playSound(null, player.blockPosition(), ModSounds.INDICATION.get(), SoundSource.VOICE, 0.1f, 1);
// ModUtils.PACKET_HANDLER.send(PacketDistributor.PLAYER.with(() -> player), new ClientIndicatorMessage(0, 5));
PacketDistributor.sendToPlayer(player, new ClientIndicatorMessage(0, 5));
}
entity.invulnerableTime = 0;
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,312 @@
{
"format_version": "1.8.0",
"animations": {
"animation.annihilator.idle": {
"animation_length": 0.25,
"bones": {
"glow1": {
"scale": 0
},
"light1": {
"scale": [
1,
1,
0
]
},
"glow2": {
"scale": 0
},
"light2": {
"scale": [
1,
1,
0
]
},
"glow3": {
"scale": 0
},
"light3": {
"scale": [
1,
1,
0
]
},
"laser1": {
"scale": [
0,
0,
1
]
},
"laser2": {
"scale": [
0,
0,
1
]
},
"laser3": {
"scale": [
0,
0,
1
]
}
}
},
"animation.annihilator.fire": {
"animation_length": 1,
"bones": {
"glow1": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
0
],
"0.9917": [
0,
0,
0
]
}
},
"light1": {
"scale": {
"0.0": [
1,
1,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
1,
1,
0
]
}
},
"glow2": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
0
],
"0.9917": [
0,
0,
0
]
}
},
"light2": {
"scale": {
"0.0": [
1,
1,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
1,
1,
0
]
}
},
"glow3": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
0
],
"0.9917": [
0,
0,
0
]
}
},
"light3": {
"scale": {
"0.0": [
1,
1,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
1,
1,
0
]
}
},
"laser1": {
"scale": {
"0.0": [
0,
0,
1
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
1
],
"0.9917": [
0,
0,
1
]
}
},
"laser2": {
"scale": {
"0.0": [
0,
0,
1
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
1
],
"0.9917": [
0,
0,
1
]
}
},
"laser3": {
"scale": {
"0.0": [
0,
0,
1
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
1
],
"0.9917": [
0,
0,
1
]
}
}
}
}
}
}

View file

@ -0,0 +1,343 @@
{
"format_version": "1.8.0",
"animations": {
"animation.bocek.idle": {
"loop": true,
"animation_length": 1,
"bones": {
"r": {
"rotation": {
"vector": [
0,
0,
0
]
}
}
}
},
"animation.bocek.draw": {
"animation_length": 1,
"bones": {
"anim": {
"rotation": {
"0.1667": {
"vector": [
27.21312,
-47.42646,
-2.0218
]
},
"0.2917": {
"vector": [
12.5,
-15,
0
]
},
"0.4167": {
"vector": [
3.48268,
0.40464,
8.20687
]
},
"0.5833": {
"vector": [
0,
0,
-2
]
},
"0.7083": {
"vector": [
0,
0,
0
]
}
},
"position": {
"0.1667": {
"vector": [
5,
-27.3,
5
]
},
"0.4167": {
"vector": [
0,
0,
-1.65
]
},
"0.5": {
"vector": [
0,
0,
0.93
]
},
"0.7083": {
"vector": [
0,
0,
0
]
}
}
}
}
},
"animation.bocek.run": {
"loop": true,
"animation_length": 0.8333,
"bones": {
"anim": {
"rotation": {
"0.0": {
"vector": [
10,
-10,
5
]
},
"0.2083": {
"vector": [
5,
-4,
1
]
},
"0.4167": {
"vector": [
10,
-2,
-7.5
]
},
"0.625": {
"vector": [
5,
-6,
-10
]
},
"0.8333": {
"vector": [
10,
-10,
5
]
}
},
"position": {
"0.0": {
"vector": [
2.49619,
-2.07196,
0.17365
]
},
"0.2083": {
"vector": [
-0.25,
0.5,
0
],
"easing": "easeInSine"
},
"0.4167": {
"vector": [
-2.4969,
-2.11525,
0.13864
],
"easing": "easeOutSine"
},
"0.625": {
"vector": [
-0.25,
0.5,
0
],
"easing": "easeInSine"
},
"0.8333": {
"vector": [
2.49619,
-2.07196,
0.17365
]
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [
-0.3,
-0.3,
0.3
]
},
"0.2083": {
"vector": [
0.3,
0,
-0.3
]
},
"0.4167": {
"vector": [
-0.3,
0.3,
0.3
]
},
"0.5833": {
"vector": [
0.3,
0,
-0.3
]
},
"0.7917": {
"vector": [
-0.3,
-0.3,
0.3
]
}
}
}
}
},
"animation.bocek.run_fast": {
"loop": true,
"animation_length": 0.7,
"bones": {
"anim": {
"rotation": {
"0.0": {
"vector": [
-17.24597,
-28.12341,
15.3498
]
},
"0.175": {
"vector": [
-18.69703,
-20.6475,
6.54519
]
},
"0.35": {
"vector": [
-11.13053,
-13.31405,
-12.81665
]
},
"0.525": {
"vector": [
-18.90638,
-22.63801,
-4.37758
]
},
"0.7": {
"vector": [
-17.24597,
-28.12341,
15.3498
]
}
},
"position": {
"0.0": {
"vector": [
9.01918,
1.00725,
2.02529
]
},
"0.175": {
"vector": [
4.45879,
3.05461,
0.6762
],
"easing": "easeInSine"
},
"0.35": {
"vector": [
-0.89903,
2.10978,
-0.3762
],
"easing": "easeOutSine"
},
"0.525": {
"vector": [
3.85879,
3.90156,
0.83854
],
"easing": "easeInSine"
},
"0.7": {
"vector": [
9.01918,
1.00725,
2.02529
]
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [
-0.3,
-0.3,
0.3
]
},
"0.175": {
"vector": [
0.3,
0,
-0.3
]
},
"0.35": {
"vector": [
-0.3,
0.3,
0.3
]
},
"0.525": {
"vector": [
0.3,
0,
-0.3
]
},
"0.7": {
"vector": [
-0.3,
-0.3,
0.3
]
}
}
}
}
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,8 @@
{
"format_version": "1.8.0",
"animations": {
"animation.c4.idle": {
"animation_length": 0.5
}
}
}

View file

@ -0,0 +1,30 @@
{
"format_version": "1.8.0",
"animations": {
"animation.cannon_shell.idle": {
"loop": true,
"animation_length": 0.5,
"bones": {
"bone": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.5": {
"vector": [
0,
360,
0
]
}
}
}
}
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,232 @@
{
"format_version": "1.8.0",
"animations": {
"animation.claymore.idle": {
"animation_length": 0.5,
"bones": {
"claymore": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.5": {
"vector": [
0,
0,
0
]
}
}
}
}
},
"animation.claymore.fire": {
"animation_length": 0.6,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.2": {
"vector": [
-7.5,
0,
0
],
"easing": "easeInOutQuad"
},
"0.4": {
"vector": [
22.5,
0,
0
],
"easing": "easeInQuint"
},
"0.6": {
"vector": [
0,
0,
0
],
"easing": "easeOutQuart"
}
},
"position": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.2": {
"vector": [
0,
1.9,
0
],
"easing": "easeInOutQuad"
},
"0.4": {
"vector": [
0,
-18.1,
0
],
"easing": "easeInQuint"
},
"0.6": {
"vector": [
0,
0,
0
],
"easing": "easeOutQuart"
}
}
},
"Righthand": {
"rotation": {
"0.0": {
"vector": [
-74.87647,
7.24305,
-178.04845
]
},
"0.6": {
"vector": [
-74.87647,
7.24305,
-178.04845
]
}
},
"position": {
"0.0": {
"vector": [
-1,
-10,
6
]
},
"0.6": {
"vector": [
-1,
-10,
6
]
}
}
},
"Lefthand": {
"rotation": {
"0.0": {
"vector": [
-74.87647,
-7.24305,
178.04845
]
},
"0.6": {
"vector": [
-74.87647,
-7.24305,
178.04845
]
}
},
"position": {
"0.0": {
"vector": [
1,
-9.9813,
6
]
},
"0.6": {
"vector": [
1,
-9.9813,
6
]
}
}
},
"claymore": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.2": {
"vector": [
0,
0,
0
]
},
"0.4": {
"vector": [
20,
0,
0
]
},
"0.6": {
"vector": [
0,
0,
0
]
}
},
"position": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.2": {
"vector": [
0,
0,
0
]
},
"0.4": {
"vector": [
0,
-0.25,
-1.25
]
},
"0.6": {
"vector": [
0,
0,
0
]
}
}
}
}
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,235 @@
{
"format_version": "1.8.0",
"animations": {
"animation.container.open": {
"loop": "hold_on_last_frame",
"animation_length": 1,
"bones": {
"front": {
"rotation": {
"0.5": {
"vector": [
0,
0,
0
]
},
"0.7583": {
"vector": [
94,
0,
0
],
"easing": "easeInSine"
},
"0.85": {
"vector": [
89.09,
0,
0
]
},
"0.9083": {
"vector": [
94,
0,
0
],
"easing": "easeInSine"
}
}
},
"back": {
"rotation": {
"0.5": {
"vector": [
0,
0,
0
]
},
"0.7583": {
"vector": [
-94,
0,
0
],
"easing": "easeInSine"
},
"0.85": {
"vector": [
-89.09,
0,
0
]
},
"0.9083": {
"vector": [
-94,
0,
0
]
}
}
},
"leftr": {
"rotation": {
"0.4417": {
"vector": [
0,
0,
0
]
},
"0.6583": {
"vector": [
0,
-60,
0
]
}
}
},
"leftl": {
"rotation": {
"0.4417": {
"vector": [
0,
0,
0
]
},
"0.6583": {
"vector": [
0,
60,
0
]
}
}
},
"rightr": {
"rotation": {
"0.4417": {
"vector": [
0,
0,
0
]
},
"0.6583": {
"vector": [
0,
-60,
0
]
}
}
},
"rightl": {
"rotation": {
"0.4417": {
"vector": [
0,
0,
0
]
},
"0.6583": {
"vector": [
0,
60,
0
]
}
}
},
"topb": {
"rotation": {
"0.1833": {
"vector": [
0,
0,
0
]
},
"0.3833": {
"vector": [
90,
0,
0
]
},
"0.5": {
"vector": [
90,
0,
0
]
},
"0.7583": {
"vector": [
-75.5,
0,
0
],
"easing": "easeInSine"
}
}
},
"topt": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.2": {
"vector": [
-90,
0,
0
]
}
}
},
"topf": {
"rotation": {
"0.1833": {
"vector": [
0,
0,
0
]
},
"0.3833": {
"vector": [
-90,
0,
0
]
},
"0.5": {
"vector": [
-90,
0,
0
]
},
"0.7583": {
"vector": [
75.5,
0,
0
],
"easing": "easeInSine"
}
}
}
}
}
},
"geckolib_format_version": 2
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,71 @@
{
"format_version": "1.8.0",
"animations": {
"animation.drone.idle": {
"loop": true
},
"animation.drone.fly": {
"loop": true,
"animation_length": 0.125,
"bones": {
"wing": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.125": [
0,
360,
0
]
}
},
"wing2": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.125": [
0,
-360,
0
]
}
},
"wing3": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.125": [
0,
-360,
0
]
}
},
"wing4": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.125": [
0,
360,
0
]
}
}
}
}
},
"geckolib_format_version": 2
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,757 @@
{
"format_version": "1.8.0",
"animations": {
"animation.jvm.idle": {
"loop": "hold_on_last_frame",
"animation_length": 10.1,
"bones": {
"wing1": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing2": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing3": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing4": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing5": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing6": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing7": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing8": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"body": {
"rotation": {
"0.0": [
0,
0,
0
],
"10.0": [
0,
21600,
0
]
}
},
"wing9": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing10": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing11": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"wing12": {
"rotation": {
"0.2667": [
0,
0,
0
],
"0.3167": [
0,
105,
0
]
}
},
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.3333": [
0,
0,
0
],
"0.3833": [
1.5,
1.5,
1.5
],
"0.4": [
1,
1,
1
],
"0.5333": [
1.07048,
1.07048,
1.07048
],
"0.6167": [
1.1,
1.1,
1.1
],
"0.8": [
0.99564,
0.99564,
0.99564
],
"0.8833": [
0.95632,
0.95632,
0.95632
],
"0.9": [
0.955,
0.955,
0.955
],
"1.1167": [
1.01085,
1.01085,
1.01085
],
"1.2833": [
1.05,
1.05,
1.05
],
"1.5": [
1.0079,
1.0079,
1.0079
],
"1.7": [
0.97,
0.97,
0.97
],
"1.9167": [
1.005,
1.005,
1.005
],
"2.1333": [
1.04,
1.04,
1.04
],
"2.2833": [
0.97737,
0.97737,
0.97737
],
"2.3667": [
0.955,
0.955,
0.955
],
"2.5833": [
1.01085,
1.01085,
1.01085
],
"2.75": [
1.05,
1.05,
1.05
],
"2.9667": [
1.0079,
1.0079,
1.0079
],
"3.1667": [
0.97,
0.97,
0.97
],
"3.3833": [
1.005,
1.005,
1.005
],
"3.6": [
1.04,
1.04,
1.04
],
"3.6833": [
1.00185,
1.00185,
1.00185
],
"3.7333": [
0.95134,
0.95134,
0.95134
],
"3.75": [
0.94107,
0.94107,
0.94107
],
"3.7667": [
0.94129,
0.94129,
0.94129
],
"3.7833": [
0.955,
0.955,
0.955
],
"3.8": [
0.96853,
0.96853,
0.96853
],
"4.0167": [
1.00672,
1.00672,
1.00672
],
"4.1333": [
1.02876,
1.02876,
1.02876
],
"4.15": [
1.03647,
1.03647,
1.03647
],
"4.1667": [
1.05,
1.05,
1.05
],
"4.1833": [
1.06006,
1.06006,
1.06006
],
"4.4": [
1.00033,
1.00033,
1.00033
],
"4.5333": [
0.9592,
0.9592,
0.9592
],
"4.5667": [
0.95994,
0.95994,
0.95994
],
"4.5833": [
0.97,
0.97,
0.97
],
"4.6": [
0.98259,
0.98259,
0.98259
],
"4.8167": [
1.00534,
1.00534,
1.00534
],
"4.9833": [
1.02089,
1.02089,
1.02089
],
"5.0": [
1.02741,
1.02741,
1.02741
],
"5.0167": [
1.04,
1.04,
1.04
],
"5.0333": [
1.05377,
1.05377,
1.05377
],
"5.25": [
1.05274,
1.05274,
1.05274
],
"5.3667": [
1.04,
1.04,
1.04
],
"5.45": [
1.00185,
1.00185,
1.00185
],
"5.5": [
0.95134,
0.95134,
0.95134
],
"5.5167": [
0.94107,
0.94107,
0.94107
],
"5.5333": [
0.94129,
0.94129,
0.94129
],
"5.55": [
0.955,
0.955,
0.955
],
"5.5667": [
0.96853,
0.96853,
0.96853
],
"5.7833": [
1.00672,
1.00672,
1.00672
],
"5.9": [
1.02876,
1.02876,
1.02876
],
"5.9167": [
1.03647,
1.03647,
1.03647
],
"5.9333": [
1.05,
1.05,
1.05
],
"5.95": [
1.06006,
1.06006,
1.06006
],
"6.1667": [
1.00033,
1.00033,
1.00033
],
"6.3": [
0.9592,
0.9592,
0.9592
],
"6.3333": [
0.95994,
0.95994,
0.95994
],
"6.35": [
0.97,
0.97,
0.97
],
"6.3667": [
0.98259,
0.98259,
0.98259
],
"6.5833": [
1.00534,
1.00534,
1.00534
],
"6.75": [
1.02089,
1.02089,
1.02089
],
"6.7667": [
1.02741,
1.02741,
1.02741
],
"6.7833": [
1.04,
1.04,
1.04
],
"6.8": [
1.05562,
1.05562,
1.05562
],
"7.0": [
1.04056,
1.04056,
1.04056
],
"7.0167": [
1.04,
1.04,
1.04
],
"7.1": [
1.00185,
1.00185,
1.00185
],
"7.15": [
0.95134,
0.95134,
0.95134
],
"7.1667": [
0.94107,
0.94107,
0.94107
],
"7.1833": [
0.94129,
0.94129,
0.94129
],
"7.2": [
0.955,
0.955,
0.955
],
"7.2167": [
0.96853,
0.96853,
0.96853
],
"7.4333": [
1.00672,
1.00672,
1.00672
],
"7.55": [
1.02876,
1.02876,
1.02876
],
"7.5667": [
1.03647,
1.03647,
1.03647
],
"7.5833": [
1.05,
1.05,
1.05
],
"7.6": [
1.06006,
1.06006,
1.06006
],
"7.8167": [
1.00033,
1.00033,
1.00033
],
"7.95": [
0.9592,
0.9592,
0.9592
],
"7.9833": [
0.95994,
0.95994,
0.95994
],
"8.0": [
0.97,
0.97,
0.97
],
"8.0167": [
0.98259,
0.98259,
0.98259
],
"8.2333": [
1.00534,
1.00534,
1.00534
],
"8.4": [
1.02089,
1.02089,
1.02089
],
"8.4167": [
1.02741,
1.02741,
1.02741
],
"8.4333": [
1.04,
1.04,
1.04
],
"8.45": [
1.05529,
1.05529,
1.05529
],
"8.6667": [
1.04055,
1.04055,
1.04055
],
"8.6833": [
1.04,
1.04,
1.04
],
"8.7667": [
1.00185,
1.00185,
1.00185
],
"8.8167": [
0.95134,
0.95134,
0.95134
],
"8.8333": [
0.94107,
0.94107,
0.94107
],
"8.85": [
0.94129,
0.94129,
0.94129
],
"8.8667": [
0.955,
0.955,
0.955
],
"8.8833": [
0.96853,
0.96853,
0.96853
],
"9.1": [
1.00672,
1.00672,
1.00672
],
"9.2167": [
1.02876,
1.02876,
1.02876
],
"9.2333": [
1.03647,
1.03647,
1.03647
],
"9.25": [
1.05,
1.05,
1.05
],
"9.2667": [
1.06006,
1.06006,
1.06006
],
"9.4833": [
1.00033,
1.00033,
1.00033
],
"9.6167": [
0.9592,
0.9592,
0.9592
],
"9.65": [
0.95994,
0.95994,
0.95994
],
"9.6667": [
0.97,
0.97,
0.97
],
"9.6833": [
0.98259,
0.98259,
0.98259
],
"9.9": [
1.00534,
1.00534,
1.00534
],
"10.0667": [
1.02089,
1.02089,
1.02089
],
"10.0833": [
1.02741,
1.02741,
1.02741
],
"10.1": [
1.04,
1.04,
1.04
]
}
}
}
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,52 @@
{
"format_version": "1.8.0",
"animations": {
"animation.lt.fire": {
"loop": "hold_on_last_frame",
"animation_length": 1,
"bones": {
"laser": {
"scale": {
"0.0": [
0,
0,
1
],
"0.0083": [
1.3,
1.3,
1
],
"0.1333": [
1.3,
1.3,
1
],
"0.2667": [
0,
0,
1
],
"0.9917": [
0,
0,
1
]
}
}
}
},
"animation.lt.idle": {
"loop": true,
"bones": {
"laser": {
"scale": [
0,
0,
1
]
}
}
}
}
}

View file

@ -0,0 +1,140 @@
{
"format_version": "1.8.0",
"animations": {
"animation.lav.idle": {
"animation_length": 0.25,
"bones": {
"flare": {
"scale": 0
},
"flare2": {
"scale": 0
}
}
},
"animation.lav.fire": {
"animation_length": 0.4,
"bones": {
"barrel2": {
"position": {
"0.0": [
0,
0,
0
],
"0.0417": {
"pre": [
0,
0,
6.1
],
"post": [
0,
0,
6.1
],
"lerp_mode": "catmullrom"
},
"0.1": {
"post": [
0,
0,
6.26563
],
"lerp_mode": "catmullrom"
},
"0.1833": [
0,
0,
3
],
"0.275": [
0,
0,
0
]
}
},
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
8,
8,
8
],
"0.05": [
11,
11,
11
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.15": [
0,
0,
0
]
}
},
"flare2": {
"scale": 0
}
}
},
"animation.lav.fire2": {
"animation_length": 0.4,
"bones": {
"flare": {
"scale": 0
},
"flare2": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
8,
8,
8
],
"0.05": [
11,
11,
11
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.15": [
0,
0,
0
]
}
}
}
}
}
}

View file

@ -0,0 +1,894 @@
{
"format_version": "1.8.0",
"animations": {
"animation.lunge_mine.idle": {
"loop": true
},
"animation.lunge_mine.draw": {
"animation_length": 0.7417,
"bones": {
"bone": {
"rotation": {
"0.0": {
"post": [
26.18822,
-56.98899,
3.86091
],
"lerp_mode": "catmullrom"
},
"0.3667": {
"post": [
-2.95569,
-6.46738,
-5.26869
],
"lerp_mode": "catmullrom"
},
"0.6": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
1.1,
-9.55,
0.8
],
"lerp_mode": "catmullrom"
},
"0.2667": {
"post": [
2.18,
-1.99,
0.46
],
"lerp_mode": "catmullrom"
},
"0.4583": {
"post": [
-0.16,
-2.77,
0.17
],
"lerp_mode": "catmullrom"
},
"0.6": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
}
}
},
"animation.lunge_mine.fire": {
"animation_length": 0.8083,
"bones": {
"bone": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0917": {
"post": [
21.80037,
-8.76229,
-6.05976
],
"lerp_mode": "catmullrom"
},
"0.1667": {
"post": [
42.23058,
20.37034,
-12.98807
],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [
25.36398,
24.23112,
-2.69135
],
"lerp_mode": "catmullrom"
},
"0.3": {
"post": [
25.36398,
24.23112,
-2.69135
],
"lerp_mode": "catmullrom"
},
"0.4": {
"post": [
29.83183,
32.2484,
-2.43932
],
"lerp_mode": "catmullrom"
},
"0.5167": {
"post": [
-2.07662,
11.48149,
20.78602
],
"lerp_mode": "catmullrom"
},
"0.6333": {
"post": [
1.13,
3.43,
-0.56
],
"lerp_mode": "catmullrom"
},
"0.75": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0667": {
"post": [
0.85011,
-2.53343,
4.70433
],
"lerp_mode": "catmullrom"
},
"0.1667": {
"post": [
-1,
-5,
18
],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [
0,
-2.8,
-11
],
"lerp_mode": "catmullrom"
},
"0.3": {
"post": [
0,
-2.8,
-18
],
"lerp_mode": "catmullrom"
},
"0.4": {
"post": [
-1.15597,
1.26922,
3.59812
],
"lerp_mode": "catmullrom"
},
"0.475": {
"post": [
0.75,
-0.83,
8.2
],
"lerp_mode": "catmullrom"
},
"0.5833": {
"post": [
2.10672,
-2.59908,
3.24101
],
"lerp_mode": "catmullrom"
},
"0.675": {
"post": [
-0.31,
-0.39,
1.14
],
"lerp_mode": "catmullrom"
},
"0.75": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
},
"Lefthand": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0833": {
"post": [
0,
0,
-28
],
"lerp_mode": "catmullrom"
},
"0.1667": {
"post": [
21.60303,
-7.04703,
-64.39908
],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [
7.22562,
40.45246,
-29.2706
],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [
7.22562,
40.45246,
-29.2706
],
"lerp_mode": "catmullrom"
},
"0.4917": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.1667": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.25": {
"post": [
0,
0,
11
],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [
0,
0,
11
],
"lerp_mode": "catmullrom"
},
"0.4917": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
},
"Righthand": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.1167": [
-11.15654,
26.8833,
-24.92971
],
"0.25": [
-20.3978,
-1.14941,
-47.67977
],
"0.375": [
-20.3978,
-1.14941,
-47.67977
],
"0.4917": [
0,
0,
0
]
},
"position": {
"0.0": [
0,
0,
0
],
"0.25": [
0,
0,
7
],
"0.375": [
0,
0,
7
],
"0.4917": [
0,
0,
0
]
}
},
"camera": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.1": {
"post": [
1.25,
-1,
-2
],
"lerp_mode": "catmullrom"
},
"0.2083": {
"post": [
1.25,
-0.75,
1.05
],
"lerp_mode": "catmullrom"
},
"0.3": {
"post": [
1.91,
-1.57,
-3.13
],
"lerp_mode": "catmullrom"
},
"0.3333": {
"post": [
-2.08,
0.85,
3.57
],
"lerp_mode": "catmullrom"
},
"0.4417": {
"post": [
1.04,
-1.31,
-0.57
],
"lerp_mode": "catmullrom"
},
"0.5667": {
"post": [
-0.13,
0.13,
0.22
],
"lerp_mode": "catmullrom"
},
"0.75": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
}
}
},
"animation.lunge_mine.run": {
"loop": true,
"animation_length": 0.8,
"bones": {
"0": {
"rotation": {
"0.0": {
"post": [
-14.82442,
-57.81517,
38.62375
],
"lerp_mode": "catmullrom"
},
"0.2": {
"post": [
-16.82442,
-57.81517,
38.62375
],
"lerp_mode": "catmullrom"
},
"0.4": {
"post": [
-14.82442,
-57.81517,
38.62375
],
"lerp_mode": "catmullrom"
},
"0.6": {
"post": [
-12.82442,
-57.81517,
38.62375
],
"lerp_mode": "catmullrom"
},
"0.8": {
"post": [
-14.82442,
-57.81517,
38.62375
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
6.5,
-4,
0
],
"lerp_mode": "catmullrom"
},
"0.2": {
"post": [
4.75,
-3.5,
0
],
"lerp_mode": "catmullrom"
},
"0.4": {
"post": [
3.5,
-4,
0
],
"lerp_mode": "catmullrom"
},
"0.6": {
"post": [
4.75,
-3.5,
0
],
"lerp_mode": "catmullrom"
},
"0.8": {
"post": [
6.5,
-4,
0
],
"lerp_mode": "catmullrom"
}
}
},
"bone": {
"rotation": {
"0.0": {
"post": [
-0.07442,
-37.06517,
-10.12625
],
"lerp_mode": "catmullrom"
},
"0.2": {
"post": [
-4.07442,
-34.06517,
-11.12625
],
"lerp_mode": "catmullrom"
},
"0.4": {
"post": [
-0.07442,
-37.06517,
-10.12625
],
"lerp_mode": "catmullrom"
},
"0.6": {
"post": [
3.92558,
-40.06517,
-9.12625
],
"lerp_mode": "catmullrom"
},
"0.8": {
"post": [
-0.07442,
-37.06517,
-10.12625
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
-1.5,
-0.5,
0
],
"lerp_mode": "catmullrom"
},
"0.2": {
"post": [
0,
0.75,
0
],
"lerp_mode": "catmullrom"
},
"0.4": {
"post": [
1.25,
-0.5,
0
],
"lerp_mode": "catmullrom"
},
"0.6": {
"post": [
0,
0.75,
0
],
"lerp_mode": "catmullrom"
},
"0.8": {
"post": [
-1.5,
-0.5,
0
],
"lerp_mode": "catmullrom"
}
}
},
"camera": {
"rotation": {
"0.0": [
-0.3,
-0.3,
0.3
],
"0.2": [
0.3,
0,
-0.3
],
"0.4": [
-0.3,
0.3,
0.3
],
"0.6": [
0.3,
0,
-0.3
],
"0.8": [
-0.3,
-0.3,
0.3
]
}
}
}
},
"animation.lunge_mine.sprint": {
"animation_length": 5.25,
"bones": {
"bone": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0833": {
"post": [
20.67113,
4.11365,
-1.59869
],
"lerp_mode": "catmullrom"
},
"0.2667": {
"post": [
26.15692,
29.69646,
-7.29644
],
"lerp_mode": "catmullrom"
},
"0.7083": {
"post": [
26.39213,
28.79003,
-7.38092
],
"lerp_mode": "catmullrom"
},
"1.2167": {
"post": [
25.41791,
27.98291,
-7.33538
],
"lerp_mode": "catmullrom"
},
"1.7917": {
"post": [
27.49865,
28.37732,
-7.38515
],
"lerp_mode": "catmullrom"
},
"2.3167": {
"post": [
26.39213,
28.79003,
-7.38092
],
"lerp_mode": "catmullrom"
},
"2.825": {
"post": [
25.41791,
27.98291,
-7.33538
],
"lerp_mode": "catmullrom"
},
"3.4417": {
"post": [
27.49865,
28.37732,
-7.38515
],
"lerp_mode": "catmullrom"
},
"3.925": {
"post": [
26.39213,
28.79003,
-7.38092
],
"lerp_mode": "catmullrom"
},
"4.4333": {
"post": [
25.41791,
27.98291,
-7.33538
],
"lerp_mode": "catmullrom"
},
"4.975": {
"post": [
26.15692,
29.69646,
-7.29644
],
"lerp_mode": "catmullrom"
},
"5.15": {
"post": [
20.67113,
4.11365,
-1.59869
],
"lerp_mode": "catmullrom"
},
"5.25": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.175": {
"post": [
-2.65,
0.65,
0.7
],
"lerp_mode": "catmullrom"
},
"0.3167": {
"post": [
-2.3,
0.65,
0.7
],
"lerp_mode": "catmullrom"
},
"1.025": {
"post": [
-1.98,
0.45,
0.7
],
"lerp_mode": "catmullrom"
},
"1.3917": {
"post": [
-2.14,
0.7,
0.7
],
"lerp_mode": "catmullrom"
},
"1.7917": {
"post": [
-2.16,
0.61,
0.7
],
"lerp_mode": "catmullrom"
},
"2.6333": {
"post": [
-1.98,
0.45,
0.7
],
"lerp_mode": "catmullrom"
},
"3.0": {
"post": [
-2.14,
0.7,
0.7
],
"lerp_mode": "catmullrom"
},
"3.4417": {
"post": [
-2.16,
0.61,
0.7
],
"lerp_mode": "catmullrom"
},
"4.2417": {
"post": [
-1.98,
0.45,
0.7
],
"lerp_mode": "catmullrom"
},
"4.6083": {
"post": [
-2.14,
0.7,
0.7
],
"lerp_mode": "catmullrom"
},
"4.9417": {
"post": [
-2.3,
0.65,
0.7
],
"lerp_mode": "catmullrom"
},
"5.075": {
"post": [
-2.65,
0.65,
0.7
],
"lerp_mode": "catmullrom"
},
"5.25": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
}
}
}
},
"geckolib_format_version": 2
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,384 @@
{
"format_version": "1.8.0",
"animations": {
"animation.minigun.idle": {
"animation_length": 0.5,
"bones": {
"0": {
"rotation": {
"vector": [
0,
0,
0
]
}
}
}
},
"animation.minigun.draw": {
"animation_length": 2,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [
27.21312,
-47.42646,
-2.0218
]
},
"0.2917": {
"vector": [
12.5,
-15,
0
]
},
"0.7083": {
"vector": [
3.48268,
0.40464,
8.20687
]
},
"1.2083": {
"vector": [
0,
0,
-2
]
},
"1.4167": {
"vector": [
0,
0,
0
]
}
},
"position": {
"0.0": {
"vector": [
3,
-17.3,
0
]
},
"0.7083": {
"vector": [
0,
0,
-1.65
]
},
"0.9167": {
"vector": [
0,
0,
0.93
]
},
"1.4167": {
"vector": [
0,
0,
0
]
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.7083": {
"vector": [
0,
0,
0
]
},
"1.0833": {
"vector": [
0.25,
-0.5,
0.5
],
"easing": "easeInSine"
},
"1.4583": {
"vector": [
0,
0,
0
],
"easing": "easeOutSine"
}
}
}
}
},
"animation.minigun.run": {
"loop": true,
"animation_length": 0.7917,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [
-9.99453,
-38.25629,
32.22539
]
},
"0.2083": {
"vector": [
-20.17856,
-38.52165,
43.13309
],
"easing": "easeInSine"
},
"0.4167": {
"vector": [
-9.99453,
-38.25629,
32.22539
],
"easing": "easeOutSine"
},
"0.5833": {
"vector": [
-1.34315,
-36.55987,
21.85195
],
"easing": "easeInSine"
},
"0.7917": {
"vector": [
-9.99453,
-38.25629,
32.22539
],
"easing": "easeOutSine"
}
},
"position": {
"0.0": {
"vector": [
12.5,
-2,
1
]
},
"0.2083": {
"vector": [
10.75,
-1.75,
1
],
"easing": "easeInSine"
},
"0.4167": {
"vector": [
9.5,
-2,
1
],
"easing": "easeOutSine"
},
"0.5833": {
"vector": [
10.75,
-1.75,
1
],
"easing": "easeInSine"
},
"0.7917": {
"vector": [
12.5,
-2,
1
],
"easing": "easeOutSine"
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [
-0.3,
-0.3,
0.3
]
},
"0.2083": {
"vector": [
0.3,
0,
-0.3
]
},
"0.4167": {
"vector": [
-0.3,
0.3,
0.3
]
},
"0.5833": {
"vector": [
0.3,
0,
-0.3
]
},
"0.7917": {
"vector": [
-0.3,
-0.3,
0.3
]
}
}
}
}
},
"animation.minigun.run_fast": {
"loop": true,
"animation_length": 0.7,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [
-20.28841,
-26.3552,
5.35029
]
},
"0.175": {
"vector": [
-27.9856,
-28.6052,
14.64973
],
"easing": "linear"
},
"0.35": {
"vector": [
-20.28841,
-26.3552,
5.35029
],
"easing": "linear"
},
"0.525": {
"vector": [
-14.36141,
-23.13847,
-3.20665
],
"easing": "linear"
},
"0.7": {
"vector": [
-20.28841,
-26.3552,
5.35029
]
}
},
"position": {
"0.0": {
"vector": [
15.5,
1,
1
]
},
"0.175": {
"vector": [
12.75,
2.25,
1
],
"easing": "easeInSine"
},
"0.35": {
"vector": [
10.5,
1,
1
],
"easing": "easeInSine"
},
"0.525": {
"vector": [
12.75,
2.25,
1
],
"easing": "easeInSine"
},
"0.7": {
"vector": [
15.5,
1,
1
]
}
}
},
"camera": {
"rotation": {
"0.0": {
"vector": [
-0.3,
-0.3,
0.3
]
},
"0.175": {
"vector": [
0.3,
0,
-0.3
]
},
"0.35": {
"vector": [
-0.3,
0.3,
0.3
]
},
"0.525": {
"vector": [
0.3,
0,
-0.3
]
},
"0.7": {
"vector": [
-0.3,
-0.3,
0.3
]
}
}
}
}
}
},
"geckolib_format_version": 2
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,162 @@
{
"format_version": "1.8.0",
"animations": {
"animation.mk42.idle": {
"loop": true,
"bones": {
"flare": {
"scale": {
"vector": [
0,
0,
0
]
}
}
}
},
"animation.mk42.fire": {
"loop": "hold_on_last_frame",
"animation_length": 1.5,
"bones": {
"paoguan": {
"position": {
"0.0": [
0,
0,
0
],
"0.0167": [
0,
0,
11
],
"0.2917": [
0,
0,
0
],
"0.6583": [
0,
0,
0
]
}
},
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
50,
40,
50
],
"0.05": [
50,
40,
50
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"bone": {
"position": {
"0.0": [
0,
0,
0
],
"0.05": [
0.1477,
0,
0.175
],
"0.1": [
-0.07,
0,
-0.09
],
"0.15": [
0,
0,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.0083": [
4,
8,
7.5
],
"0.05": [
-2,
-4,
-2.5
],
"0.0917": [
1,
2,
1.25
],
"0.1333": [
-0.5,
-1,
-0.625
],
"0.175": [
0.25,
0.5,
0.31
],
"0.2167": [
-0.12,
-0.24,
-0.15
],
"0.2583": [
0.06,
0.12,
0.075
],
"0.3": [
-0.03,
-0.6,
-0.0375
],
"0.3417": [
0,
0,
0
]
}
}
}
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,371 @@
{
"format_version": "1.8.0",
"animations": {
"animation.mle1934.idle": {
"loop": true,
"bones": {
"flare": {
"scale": {
"vector": [
0,
0,
0
]
}
},
"flare2": {
"scale": {
"vector": [
0,
0,
0
]
}
}
}
},
"animation.mle1934.fire": {
"loop": "hold_on_last_frame",
"animation_length": 1,
"bones": {
"bone": {
"position": {
"0.0": [
0,
0,
0
],
"0.05": [
0.1477,
0,
0.175
],
"0.1": [
-0.07,
0,
-0.09
],
"0.15": [
0,
0,
0
]
}
},
"paoguan2": {
"position": {
"0.0": [
0,
0,
0
],
"0.05": [
0,
0,
11
],
"0.4917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"flare2": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
50,
40,
50
],
"0.05": [
50,
40,
50
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.0083": [
4,
8,
7.5
],
"0.05": [
-2,
-4,
-2.5
],
"0.0917": [
1,
2,
1.25
],
"0.1333": [
-0.5,
-1,
-0.625
],
"0.175": [
0.25,
0.5,
0.31
],
"0.2167": [
-0.12,
-0.24,
-0.15
],
"0.2583": [
0.06,
0.12,
0.075
],
"0.3": [
-0.03,
-0.6,
-0.0375
],
"0.3417": [
0,
0,
0
]
}
}
}
},
"animation.mle1934.salvo_fire": {
"loop": "hold_on_last_frame",
"animation_length": 1,
"bones": {
"paoguan": {
"position": {
"0.0": [
0,
0,
0
],
"0.05": [
0,
0,
11
],
"0.4917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"bone": {
"position": {
"0.0": [
0,
0,
0
],
"0.05": [
0.1477,
0,
0.175
],
"0.1": [
-0.07,
0,
-0.09
],
"0.15": [
0,
0,
0
]
}
},
"paoguan2": {
"position": {
"0.0": [
0,
0,
0
],
"0.05": [
0,
0,
11
],
"0.4917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
50,
40,
50
],
"0.05": [
50,
40,
50
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"flare2": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
50,
40,
50
],
"0.05": [
50,
40,
50
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.6667": [
0,
0,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.0083": [
4,
8,
7.5
],
"0.05": [
-2,
-4,
-2.5
],
"0.0917": [
1,
2,
1.25
],
"0.1333": [
-0.5,
-1,
-0.625
],
"0.175": [
0.25,
0.5,
0.31
],
"0.2167": [
-0.12,
-0.24,
-0.15
],
"0.2583": [
0.06,
0.12,
0.075
],
"0.3": [
-0.03,
-0.6,
-0.0375
],
"0.3417": [
0,
0,
0
]
}
}
}
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,145 @@
{
"format_version": "1.8.0",
"animations": {
"animation.mortar.idle": {
"loop": true,
"bones": {
"mortar": {
"position": {
"vector": [
0,
0,
0
]
}
},
"shell": {
"scale": {
"vector": [
0,
0,
0
]
}
},
"flare": {
"scale": {
"vector": [
0,
0,
0
],
"easing": "easeOutQuad"
}
}
}
},
"animation.mortar.fire": {
"loop": "hold_on_last_frame",
"animation_length": 1.5,
"bones": {
"shell": {
"position": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.375": {
"vector": [
0,
0,
0
]
},
"0.875": {
"vector": [
0,
-20,
0
],
"easing": "easeInQuad"
}
},
"scale": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.1667": {
"vector": [
1,
1,
1
],
"easing": "easeInSine"
},
"0.2917": {
"vector": [
0.8,
0.8,
0.8
],
"easing": "easeOutSine"
},
"0.375": {
"vector": [
1,
1,
1
],
"easing": "easeInSine"
}
}
},
"flare": {
"scale": {
"1.0": {
"vector": [
0,
0,
0
],
"easing": "easeOutQuad"
},
"1.0083": {
"vector": [
1200,
1200,
1200
]
},
"1.0583": {
"vector": [
1200,
1200,
1200
]
},
"1.0833": {
"vector": [
1,
1,
1
],
"easing": "easeOutQuad"
},
"1.1": {
"vector": [
0,
0,
0
]
}
}
}
}
}
},
"geckolib_format_version": 2
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,29 @@
{
"format_version": "1.8.0",
"animations": {
"animation.pad.idle": {
"animation_length": 1,
"bones": {
"0": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"1.0": {
"vector": [
0,
0,
0
]
}
}
}
}
}
},
"geckolib_format_version": 2
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,10 @@
{
"format_version": "1.8.0",
"animations": {
"animation.rpg.idle": {
"loop": true,
"animation_length": 0.25833
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,421 @@
{
"format_version": "1.8.0",
"animations": {
"animation.rpg.idle": {
"loop": "hold_on_last_frame",
"animation_length": 6,
"bones": {
"wing1": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing2": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing3": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing4": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing5": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing6": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing7": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"wing8": {
"rotation": {
"0.2417": [
0,
0,
0
],
"0.6": [
0,
67.5,
0
]
}
},
"body": {
"rotation": {
"0.0": [
0,
0,
0
],
"6.0": [
0,
10800,
0
]
}
},
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.5": [
0,
0,
0
],
"0.5417": [
1.5,
1.5,
1.5
],
"0.5667": [
0.6,
0.6,
0.6
],
"0.675": [
0.75,
0.75,
0.75
],
"0.7833": [
1.1,
1.1,
1.1
],
"0.8917": [
1.05121,
1.05121,
1.05121
],
"1.0": [
0.86056,
0.86056,
0.86056
],
"1.0583": [
0.775,
0.775,
0.775
],
"1.1667": [
0.97562,
0.97562,
0.97562
],
"1.275": [
0.90085,
0.90085,
0.90085
],
"1.3833": [
1.04249,
1.04249,
1.04249
],
"1.4417": [
1.22,
1.22,
1.22
],
"1.55": [
1.03425,
1.03425,
1.03425
],
"1.6583": [
0.8379,
0.8379,
0.8379
],
"1.7667": [
0.98218,
0.98218,
0.98218
],
"1.8583": [
0.68,
0.68,
0.68
],
"1.9583": [
0.75,
0.75,
0.75
],
"2.0667": [
1.1,
1.1,
1.1
],
"2.175": [
1.05121,
1.05121,
1.05121
],
"2.2833": [
0.86056,
0.86056,
0.86056
],
"2.3417": [
0.775,
0.775,
0.775
],
"2.45": [
0.97562,
0.97562,
0.97562
],
"2.5583": [
0.90085,
0.90085,
0.90085
],
"2.6667": [
1.04249,
1.04249,
1.04249
],
"2.725": [
1.22,
1.22,
1.22
],
"2.8333": [
1.03425,
1.03425,
1.03425
],
"2.9417": [
0.8379,
0.8379,
0.8379
],
"3.05": [
0.98218,
0.98218,
0.98218
],
"3.1417": [
0.68,
0.68,
0.68
],
"3.2417": [
0.75,
0.75,
0.75
],
"3.35": [
1.1,
1.1,
1.1
],
"3.4583": [
1.05121,
1.05121,
1.05121
],
"3.5667": [
0.86056,
0.86056,
0.86056
],
"3.625": [
0.775,
0.775,
0.775
],
"3.7333": [
0.97562,
0.97562,
0.97562
],
"3.8417": [
0.90085,
0.90085,
0.90085
],
"3.95": [
1.04249,
1.04249,
1.04249
],
"4.0083": [
1.22,
1.22,
1.22
],
"4.1167": [
1.03425,
1.03425,
1.03425
],
"4.225": [
0.8379,
0.8379,
0.8379
],
"4.3333": [
0.98218,
0.98218,
0.98218
],
"4.425": [
0.68,
0.68,
0.68
],
"4.5333": [
0.75,
0.75,
0.75
],
"4.6417": [
1.1,
1.1,
1.1
],
"4.75": [
1.05121,
1.05121,
1.05121
],
"4.8583": [
0.86056,
0.86056,
0.86056
],
"4.9167": [
0.775,
0.775,
0.775
],
"5.025": [
0.97562,
0.97562,
0.97562
],
"5.1333": [
0.90085,
0.90085,
0.90085
],
"5.2417": [
1.04249,
1.04249,
1.04249
],
"5.3": [
1.22,
1.22,
1.22
],
"5.4083": [
1.03425,
1.03425,
1.03425
],
"5.5167": [
0.8379,
0.8379,
0.8379
],
"5.625": [
0.98218,
0.98218,
0.98218
],
"5.7167": [
0.68,
0.68,
0.68
]
}
}
}
}
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,106 @@
{
"format_version": "1.8.0",
"animations": {
"animation.speedboat.idle": {
"animation_length": 0.1,
"bones": {
"flare": {
"scale": 0
}
}
},
"animation.speedboat.fire": {
"loop": "hold_on_last_frame",
"animation_length": 0.15,
"bones": {
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
8,
8,
8
],
"0.05": [
8,
8,
8
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.15": [
0,
0,
0
]
}
},
"gun": {
"position": {
"0.0": [
0,
0,
0
],
"0.0083": [
-0.035,
0.05,
0.1
],
"0.05": [
0.035,
-0.025,
0
],
"0.075": [
-0.04,
0.05,
0.05
],
"0.0917": [
0,
0,
0
],
"0.15": [
0,
0,
0
]
}
},
"action": {
"position": {
"0.0": [
0,
0,
0
],
"0.0083": [
0,
0,
0.85
],
"0.0667": [
0,
0,
0
]
}
}
}
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,83 @@
{
"format_version": "1.8.0",
"animations": {
"animation.target.idle": {
"loop": true,
"animation_length": 0.0417
},
"animation.target.down": {
"loop": "hold_on_last_frame",
"animation_length": 2,
"bones": {
"ba": {
"rotation": {
"0.0": {
"vector": [
0,
0,
0
]
},
"0.125": {
"vector": [
-90,
0,
0
],
"easing": "easeOutCubic"
},
"0.25": {
"vector": [
-80,
0,
0
],
"easing": "easeOutSine"
},
"0.375": {
"vector": [
-90,
0,
0
],
"easing": "easeInCubic"
},
"0.5": {
"vector": [
-88,
0,
0
],
"easing": "easeOutSine"
},
"0.625": {
"vector": [
-90,
0,
0
],
"easing": "easeInCubic"
},
"1.5": {
"vector": [
-90,
0,
0
],
"easing": "linear"
},
"2.0": {
"vector": [
0,
0,
0
],
"easing": "easeInOutSine"
}
}
}
}
}
},
"geckolib_format_version": 2
}

View file

@ -0,0 +1,887 @@
{
"format_version": "1.8.0",
"animations": {
"animation.taser.idle": {
"loop": true,
"animation_length": 2
},
"animation.taser.fire": {
"animation_length": 0.0417
},
"animation.taser.reload": {
"loop": "hold_on_last_frame",
"animation_length": 2.5833,
"override_previous_animation": true,
"bones": {
"0": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.1667": {
"post": [
8.55,
-3.98,
1.84
],
"lerp_mode": "catmullrom"
},
"0.3333": {
"post": [
0.25,
-22.25,
-24
],
"lerp_mode": "catmullrom"
},
"0.4167": {
"post": [
-7.25,
-22.25,
-24
],
"lerp_mode": "catmullrom"
},
"0.5": {
"post": [
-5.25,
-22.26,
-24
],
"lerp_mode": "catmullrom"
},
"0.625": {
"post": [
-0.85,
-23.64,
-13.1
],
"lerp_mode": "catmullrom"
},
"0.9167": {
"post": [
-7.23,
-25.8,
-17.02
],
"lerp_mode": "catmullrom"
},
"1.25": {
"post": [
0.54,
-26.71,
-25.61
],
"lerp_mode": "catmullrom"
},
"1.6667": {
"post": [
-0.88143,
-25.34825,
-26.46108
],
"lerp_mode": "catmullrom"
},
"1.9167": {
"post": [
-9.00432,
-21.76626,
-16.2001
],
"lerp_mode": "catmullrom"
},
"2.0": {
"post": [
-5.73837,
-24.77408,
-20.77127
],
"lerp_mode": "catmullrom"
},
"2.0833": {
"post": [
-6.38588,
-29.58558,
-1.50662
],
"lerp_mode": "catmullrom"
},
"2.3333": {
"post": [
-0.11112,
-2.35652,
10.98841
],
"lerp_mode": "catmullrom"
},
"2.4583": {
"post": [
-0.0016,
-0.13105,
-1.38954
],
"lerp_mode": "catmullrom"
},
"2.5833": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
},
"position": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.4167": {
"post": [
0,
0.25,
3.25
],
"lerp_mode": "catmullrom"
},
"0.4583": {
"post": [
0.17,
0.43,
0.64
],
"lerp_mode": "catmullrom"
},
"0.5417": {
"post": [
-0.06,
0.56,
2.21016
],
"lerp_mode": "catmullrom"
},
"0.75": {
"post": [
-0.29,
0.3,
2.09
],
"lerp_mode": "catmullrom"
},
"1.0417": {
"post": [
-0.25,
0.53,
1.95
],
"lerp_mode": "catmullrom"
},
"1.4167": {
"post": [
-0.3,
0.70547,
2
],
"lerp_mode": "catmullrom"
},
"1.9167": {
"post": [
-0.2,
0.35,
1.5
],
"lerp_mode": "catmullrom"
},
"2.0": {
"post": [
-0.92461,
0.40317,
1.28968
],
"lerp_mode": "catmullrom"
},
"2.0833": {
"post": [
-1.31413,
0.00682,
2.2102
],
"lerp_mode": "catmullrom"
},
"2.2917": {
"post": [
0,
-0.25,
-1
],
"lerp_mode": "catmullrom"
},
"2.375": {
"post": [
0,
0.2,
0.93
],
"lerp_mode": "catmullrom"
},
"2.5833": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
},
"Lefthand": {
"rotation": {
"0.0833": [
0,
0,
0
],
"0.4167": [
-31.86957,
-19.37363,
82.48453
],
"0.5": [
-31.86957,
-19.37363,
82.48453
],
"0.9167": [
-15.26666,
-7.21079,
-32.09116
],
"1.3333": [
-11.99301,
13.76329,
-22.8141
],
"1.5": [
-11.99301,
13.76329,
-22.8141
],
"1.5833": [
-28.82126,
-23.56361,
62.7473
],
"1.625": [
-27.43413,
-24.53569,
58.73275
],
"1.6667": [
-33.07026,
-26.56442,
69.10617
],
"1.75": [
-28.78617,
-30.44277,
61.77328
],
"1.8333": [
-42.377,
-33.41831,
75.18478
],
"2.0": [
-40.19312,
-33.04337,
72.40808
],
"2.0833": [
-31.86957,
-19.37363,
82.48453
],
"2.25": [
-9.57051,
-10.79639,
27.95699
],
"2.4167": [
0,
0,
0
]
},
"position": {
"0.0833": [
0,
0,
0
],
"0.4167": [
-0.19579,
0.61232,
-3.5753
],
"0.5": [
0,
-1.82,
-14.4
],
"0.7083": [
6.6,
-1.87,
0.6
],
"0.9167": [
7.55491,
-9.57868,
6.1249
],
"1.3333": [
9.45,
-8.82,
6.62
],
"1.5": [
9.45,
-8.82,
6.62
],
"1.8333": [
-0.9,
1.1,
-8.4
],
"2.0": [
-0.9,
1.1,
-6.4
],
"2.0833": [
-0.19579,
0.61232,
-5.5753
],
"2.4167": [
0,
0,
0
]
}
},
"head": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.4167": [
0,
0,
0
],
"1.25": [
-380,
0,
0
],
"1.3333": [
-30.68206,
-27.03402,
52.54628
],
"1.5": [
-30.68206,
-27.03402,
52.54628
],
"1.8333": [
0,
0,
0
],
"2.0833": [
0,
0,
0
]
},
"position": {
"0.0": [
0,
0,
0
],
"0.4167": [
0.0441,
0.16396,
-0.02671
],
"0.4583": [
0.26827,
0.95056,
-1.6981
],
"0.5": [
-0.36805,
1.03264,
-6.9702
],
"0.5417": [
-1.4502,
0.88538,
-14.51111
],
"0.5833": [
-3.04715,
1.19976,
-21.54721
],
"0.625": [
-4.25545,
0.3486,
-27.45078
],
"0.6667": [
-5.50466,
-2.79569,
-33.3676
],
"0.7083": [
-6.97396,
-6.91091,
-39.16939
],
"0.75": [
-8.75181,
-12.66452,
-44.72621
],
"0.7917": [
-10.84411,
-20.08928,
-49.88713
],
"0.8333": [
-13.34003,
-29.71342,
-54.55761
],
"0.875": [
-16.22188,
-40.6649,
-58.75257
],
"0.9167": [
-19.65388,
-53.69834,
-62.25089
],
"0.9583": [
-26.60318,
-67.42803,
-66.09012
],
"1.0": [
-35.3251,
-86.10628,
-69.13573
],
"1.0417": [
-45.47726,
-106.73784,
-71.55172
],
"1.0833": [
-57.82789,
-132.39146,
-73.01751
],
"1.125": [
-72.39921,
-162.95675,
-73.13111
],
"1.1667": [
-89.34055,
-197.99001,
-72.07032
],
"1.2083": [
-109.12621,
-239.05802,
-69.27181
],
"1.3333": [
10,
-9,
13
],
"1.5": [
10,
-9,
13
],
"1.8333": [
0,
0,
-2.09375
],
"2.0833": [
0,
0,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.3333": [
0,
0,
-2
],
"0.4167": [
1,
1,
1
],
"0.5417": [
-0.5,
-1,
-1
],
"0.6667": [
0.25,
0,
-2
],
"1.1667": [
0.59,
0,
-0.82
],
"1.625": [
0.33,
0.67,
-1.2
],
"2.0": [
0,
1,
-1.3
],
"2.0417": [
-1,
-2,
1
],
"2.125": [
1,
1,
0.2
],
"2.1667": [
0.5,
-1,
0.8
],
"2.3333": [
-0.125,
0,
-0.5
],
"2.5833": [
0,
0,
0
]
}
}
},
"sound_effects": {
"0.0": {
"effect": "taserreload"
}
}
},
"animation.taser.draw": {
"animation_length": 0.5833,
"bones": {
"0": {
"rotation": {
"0.0": [
27.21312,
-47.42646,
-2.0218
],
"0.0833": [
12.5,
-15,
0
],
"0.2083": [
3.48268,
0.40464,
8.20687
],
"0.4167": [
0,
0,
-2
],
"0.5": [
0,
0,
0
]
},
"position": {
"0.0": [
3,
-17.3,
0
],
"0.2083": [
0,
0,
-1.65
],
"0.2917": [
0,
0,
0.93
],
"0.5": [
0,
0,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
0,
0,
0
],
"0.2083": [
0,
0,
0
],
"0.2917": [
0.25,
-0.5,
0.5
],
"0.4167": [
0,
0,
0
]
}
}
}
},
"animation.taser.run": {
"loop": true,
"animation_length": 0.8,
"bones": {
"0": {
"rotation": {
"0.0": [
4.74287,
-58.94632,
9.89514
],
"0.2": [
-8.55104,
-59.60571,
19.61648
],
"0.4": [
-8.58141,
-58.99717,
19.60323
],
"0.6": [
-0.82277,
-58.8651,
9.93666
],
"0.8": [
4.74287,
-58.94632,
9.89514
]
},
"position": {
"0.0": [
5.5,
-3,
0
],
"0.2": [
3.75,
-2.5,
0
],
"0.4": [
2.5,
-3,
0
],
"0.6": [
4.25,
-2.5,
0
],
"0.8": [
5.5,
-3,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
-0.3,
-0.3,
0.3
],
"0.2": [
0.3,
0,
-0.3
],
"0.4": [
-0.3,
0.3,
0.3
],
"0.6": [
0.3,
0,
-0.3
],
"0.8": [
-0.3,
-0.3,
0.3
]
}
}
}
},
"animation.taser.run_fast": {
"loop": true,
"animation_length": 0.7,
"bones": {
"0": {
"rotation": {
"0.0": [
-64.40359,
6.54216,
-8.29677
],
"0.175": [
-63.64549,
6.90094,
-2.09726
],
"0.35": [
-64.40359,
6.54216,
-8.29677
],
"0.525": [
-65.4022,
6.21514,
-14.3956
],
"0.7": [
-64.40359,
6.54216,
-8.29677
]
},
"position": {
"0.0": [
-3.5,
2,
0
],
"0.175": [
-4.5,
4,
0
],
"0.35": [
-5.5,
2,
0
],
"0.525": [
-4.5,
4,
0
],
"0.7": [
-3.5,
2,
0
]
}
},
"camera": {
"rotation": {
"0.0": [
-0.3,
-0.3,
0.3
],
"0.175": [
0.3,
0,
-0.3
],
"0.35": [
-0.3,
0.3,
0.3
],
"0.525": [
0.3,
0,
-0.3
],
"0.7": [
-0.3,
-0.3,
0.3
]
}
}
}
}
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,334 @@
{
"format_version": "1.8.0",
"animations": {
"animation.yx100.idle": {
"loop": true,
"animation_length": 0.5,
"bones": {
"glow": {
"scale": 0
},
"flare": {
"scale": 0
}
}
},
"animation.yx100.fire": {
"loop": "hold_on_last_frame",
"animation_length": 2,
"bones": {
"bone": {
"position": {
"0.0": [
0,
0,
0
],
"0.0083": [
0,
0,
9.25
],
"0.0917": {
"pre": [
0,
0,
5.64
],
"post": [
0,
0,
5.64
],
"lerp_mode": "catmullrom"
},
"0.175": {
"post": [
0,
0,
2.65
],
"lerp_mode": "catmullrom"
},
"0.3": {
"post": [
0,
0,
0.62
],
"lerp_mode": "catmullrom"
},
"0.4833": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"2.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
},
"barrelroot": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0417": {
"post": [
-1.86,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0917": {
"post": [
-2,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.175": {
"post": [
-0.38,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.2833": {
"post": [
1.34,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [
0.88,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.4667": {
"post": [
-0.24,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.6333": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
},
"bone5": {
"rotation": {
"0.0": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0417": {
"post": [
1.86,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.0917": {
"post": [
2,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.175": {
"post": [
0.38,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.2833": {
"post": [
-1.34,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.375": {
"post": [
-0.88,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.4667": {
"post": [
0.24,
0,
0
],
"lerp_mode": "catmullrom"
},
"0.6333": {
"post": [
0,
0,
0
],
"lerp_mode": "catmullrom"
}
}
},
"glow": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
1,
1,
1
],
"0.1917": [
1,
1,
1
],
"0.5": [
0,
0,
0
],
"0.9917": [
0,
0,
0
],
"2.0": [
0,
0,
0
]
}
},
"flare": {
"scale": 0
}
}
},
"animation.yx100.idle2": {
"loop": true,
"animation_length": 0.5,
"bones": {
"flare": {
"scale": 0
}
}
},
"animation.yx100.fire2": {
"loop": "hold_on_last_frame",
"animation_length": 0.5,
"bones": {
"glow": {
"scale": 0
},
"flare": {
"scale": {
"0.0": [
0,
0,
0
],
"0.0083": [
8,
8,
8
],
"0.05": [
11,
11,
11
],
"0.075": [
1,
1,
1
],
"0.0917": [
0,
0,
0
],
"0.15": [
0,
0,
0
]
}
},
"action": {
"position": {
"0.0": [
0,
0,
0
],
"0.0417": {
"pre": [
0,
0,
4.1
],
"post": [
0,
0,
6.1
],
"lerp_mode": "catmullrom"
},
"0.1167": [
0,
0,
0
]
}
}
}
}
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,423 @@
{
"format_version": "1.12.0",
"minecraft:geometry": [
{
"description": {
"identifier": "geometry.c4",
"texture_width": 32,
"texture_height": 32,
"visible_bounds_width": 2,
"visible_bounds_height": 1.5,
"visible_bounds_offset": [
0,
0.25,
0
]
},
"bones": [
{
"name": "c4",
"pivot": [
0,
0,
0
],
"cubes": [
{
"origin": [
-7,
0,
-5
],
"size": [
15,
3,
11
],
"uv": {
"north": {
"uv": [
14,
14
],
"uv_size": [
14,
3
]
},
"east": {
"uv": [
14,
20
],
"uv_size": [
11,
3
]
},
"south": {
"uv": [
14,
17
],
"uv_size": [
14,
3
]
},
"west": {
"uv": [
21,
0
],
"uv_size": [
11,
3
]
},
"up": {
"uv": [
0,
0
],
"uv_size": [
14,
11
]
},
"down": {
"uv": [
0,
22
],
"uv_size": [
14,
-11
]
}
}
},
{
"origin": [
-6,
3,
-4
],
"size": [
2,
1,
9
],
"uv": {
"north": {
"uv": [
11,
23
],
"uv_size": [
2,
1
]
},
"east": {
"uv": [
21,
12
],
"uv_size": [
9,
1
]
},
"south": {
"uv": [
23,
11
],
"uv_size": [
2,
1
]
},
"west": {
"uv": [
21,
13
],
"uv_size": [
9,
1
]
},
"up": {
"uv": [
21,
3
],
"uv_size": [
2,
9
]
},
"down": {
"uv": [
0,
31
],
"uv_size": [
2,
-9
]
}
}
}
]
},
{
"name": "button_group",
"parent": "c4",
"pivot": [
-2,
3,
-3
],
"cubes": [
{
"origin": [
-2,
3,
-3
],
"size": [
7,
1,
7
],
"uv": {
"north": {
"uv": [
2,
22
],
"uv_size": [
7,
1
]
},
"east": {
"uv": [
2,
23
],
"uv_size": [
7,
1
]
},
"south": {
"uv": [
23,
3
],
"uv_size": [
7,
1
]
},
"west": {
"uv": [
23,
4
],
"uv_size": [
7,
1
]
},
"up": {
"uv": [
14,
0
],
"uv_size": [
7,
7
]
},
"down": {
"uv": [
14,
14
],
"uv_size": [
7,
-7
]
}
}
}
]
},
{
"name": "triggers",
"parent": "c4",
"pivot": [
0,
0,
0
],
"cubes": [
{
"origin": [
-2,
1,
-6
],
"size": [
5,
1,
1
],
"uv": {
"north": {
"uv": [
9,
22
],
"uv_size": [
5,
1
]
},
"east": {
"uv": [
15,
23
],
"uv_size": [
1,
1
]
},
"south": {
"uv": [
23,
5
],
"uv_size": [
5,
1
]
},
"west": {
"uv": [
16,
23
],
"uv_size": [
1,
1
]
},
"up": {
"uv": [
23,
6
],
"uv_size": [
5,
1
]
},
"down": {
"uv": [
23,
8
],
"uv_size": [
5,
-1
]
}
}
},
{
"origin": [
-6,
1,
-6
],
"size": [
2,
1,
1
],
"uv": {
"north": {
"uv": [
23,
8
],
"uv_size": [
2,
1
]
},
"east": {
"uv": [
13,
23
],
"uv_size": [
1,
1
]
},
"south": {
"uv": [
9,
23
],
"uv_size": [
2,
1
]
},
"west": {
"uv": [
14,
23
],
"uv_size": [
1,
1
]
},
"up": {
"uv": [
23,
9
],
"uv_size": [
2,
1
]
},
"down": {
"uv": [
23,
11
],
"uv_size": [
2,
-1
]
}
}
}
]
}
]
}
]
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,265 @@
{
"format_version": "1.12.0",
"minecraft:geometry": [
{
"description": {
"identifier": "geometry.unknown",
"texture_width": 32,
"texture_height": 32,
"visible_bounds_width": 2,
"visible_bounds_height": 2.5,
"visible_bounds_offset": [
0,
0.75,
0
]
},
"bones": [
{
"name": "claymore",
"pivot": [
0,
0,
0
]
},
{
"name": "bone",
"parent": "claymore",
"pivot": [
0,
0,
0
],
"rotation": [
0,
180,
0
],
"cubes": [
{
"origin": [
-3.5,
2.75,
-0.5
],
"size": [
7,
5,
2
],
"uv": [
0,
0
]
},
{
"origin": [
-2,
7,
0
],
"size": [
4,
1,
1
],
"uv": [
0,
14
]
},
{
"origin": [
2,
7.75,
0
],
"size": [
1,
1,
1
],
"uv": [
14,
7
]
},
{
"origin": [
-3,
7.75,
0
],
"size": [
1,
1,
1
],
"uv": [
6,
7
]
},
{
"origin": [
3,
-0.65,
-0.2
],
"size": [
0,
4,
1
],
"pivot": [
3,
2.6,
0.3
],
"rotation": [
-45,
0,
0
],
"uv": [
0,
15
]
},
{
"origin": [
3,
-0.9,
0.05
],
"size": [
0,
4,
1
],
"pivot": [
3,
2.6,
0.3
],
"rotation": [
45,
0,
0
],
"uv": [
14,
13
]
},
{
"origin": [
-3,
-0.9,
0.05
],
"size": [
0,
4,
1
],
"pivot": [
-3,
2.6,
0.3
],
"rotation": [
45,
0,
0
],
"uv": [
10,
13
]
},
{
"origin": [
-3,
-0.65,
-0.2
],
"size": [
0,
4,
1
],
"pivot": [
-3,
2.6,
0.3
],
"rotation": [
-45,
0,
0
],
"uv": [
12,
13
]
},
{
"origin": [
-5.11836,
2.75,
-1.41865
],
"size": [
2,
5,
2
],
"pivot": [
-5.61836,
1.75,
0.08135
],
"rotation": [
0,
-22.5,
0
],
"uv": [
0,
7
]
},
{
"origin": [
2.81179,
2.75,
-0.95984
],
"size": [
2,
5,
2
],
"pivot": [
4.31179,
1.75,
-0.45984
],
"rotation": [
0,
22.5,
0
],
"uv": [
8,
7
]
}
]
}
]
}
]
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,974 @@
{
"format_version": "1.12.0",
"minecraft:geometry": [
{
"description": {
"identifier": "geometry.rpg",
"texture_width": 64,
"texture_height": 64,
"visible_bounds_width": 91,
"visible_bounds_height": 8,
"visible_bounds_offset": [
0,
2,
0
]
},
"bones": [
{
"name": "bone",
"pivot": [
0,
19.5,
0
]
},
{
"name": "body",
"parent": "bone",
"pivot": [
0,
-18.5,
0
],
"rotation": [
90,
0,
0
]
},
{
"name": "bone5",
"parent": "body",
"pivot": [
-0.00215,
-18.54737,
10.23332
],
"cubes": [
{
"origin": [
-0.23997,
-19.18522,
-16.12402
],
"size": [
0.53362,
1.28869,
34.12752
],
"pivot": [
0.02684,
-18.54066,
3.13474
],
"rotation": [
0,
0,
90
],
"uv": {
"north": {
"uv": [
9,
12
],
"uv_size": [
1,
1
]
},
"south": {
"uv": [
12,
10
],
"uv_size": [
1,
1
]
},
"up": {
"uv": [
0,
0
],
"uv_size": [
1,
34
]
},
"down": {
"uv": [
1,
34
],
"uv_size": [
1,
-34
]
}
}
},
{
"origin": [
-0.24018,
-19.185,
-16.12402
],
"size": [
0.53362,
1.28869,
34.12752
],
"pivot": [
0.02663,
-18.54066,
9.18974
],
"rotation": [
0,
0,
45
],
"uv": {
"north": {
"uv": [
12,
11
],
"uv_size": [
1,
1
]
},
"south": {
"uv": [
12,
12
],
"uv_size": [
1,
1
]
},
"up": {
"uv": [
2,
0
],
"uv_size": [
1,
34
]
},
"down": {
"uv": [
3,
34
],
"uv_size": [
1,
-34
]
}
}
},
{
"origin": [
-0.24018,
-19.185,
-16.12402
],
"size": [
0.53362,
1.28869,
34.12752
],
"uv": {
"north": {
"uv": [
13,
0
],
"uv_size": [
1,
1
]
},
"south": {
"uv": [
13,
1
],
"uv_size": [
1,
1
]
},
"up": {
"uv": [
4,
0
],
"uv_size": [
1,
34
]
},
"down": {
"uv": [
5,
34
],
"uv_size": [
1,
-34
]
}
}
},
{
"origin": [
-0.24018,
-19.185,
-16.12402
],
"size": [
0.53362,
1.28869,
34.12752
],
"pivot": [
0.02663,
-18.54066,
9.18974
],
"rotation": [
0,
0,
-45
],
"uv": {
"north": {
"uv": [
13,
2
],
"uv_size": [
1,
1
]
},
"south": {
"uv": [
13,
3
],
"uv_size": [
1,
1
]
},
"up": {
"uv": [
6,
0
],
"uv_size": [
1,
34
]
},
"down": {
"uv": [
7,
34
],
"uv_size": [
1,
-34
]
}
}
}
]
},
{
"name": "bone6",
"parent": "body",
"pivot": [
0.02663,
-18.54066,
2.15849
],
"cubes": [
{
"origin": [
-0.14088,
-19.80743,
16.19012
],
"size": [
0.33501,
2.53354,
1.73175
],
"uv": {
"east": {
"uv": [
8,
0
],
"uv_size": [
2,
3
]
},
"south": {
"uv": [
10,
8
],
"uv_size": [
1,
3
]
},
"west": {
"uv": [
8,
3
],
"uv_size": [
2,
3
]
},
"up": {
"uv": [
10,
11
],
"uv_size": [
1,
2
]
},
"down": {
"uv": [
11,
13
],
"uv_size": [
1,
-2
]
}
}
},
{
"origin": [
-0.14088,
-19.12759,
15.42042
],
"size": [
0.33501,
1.78854,
1.79175
],
"pivot": [
0.02662,
-18.54019,
16.62249
],
"rotation": [
45,
0,
0
],
"uv": {
"north": {
"uv": [
12,
0
],
"uv_size": [
1,
2
]
},
"east": {
"uv": [
10,
0
],
"uv_size": [
2,
2
]
},
"west": {
"uv": [
10,
2
],
"uv_size": [
2,
2
]
},
"up": {
"uv": [
12,
2
],
"uv_size": [
1,
2
]
}
}
},
{
"origin": [
-0.14088,
-19.80743,
16.19012
],
"size": [
0.33501,
2.53354,
1.73175
],
"pivot": [
0.02662,
-18.54019,
16.62249
],
"rotation": [
0,
0,
90
],
"uv": {
"east": {
"uv": [
8,
6
],
"uv_size": [
2,
3
]
},
"south": {
"uv": [
11,
8
],
"uv_size": [
1,
3
]
},
"west": {
"uv": [
8,
9
],
"uv_size": [
2,
3
]
},
"up": {
"uv": [
8,
12
],
"uv_size": [
1,
2
]
},
"down": {
"uv": [
12,
10
],
"uv_size": [
1,
-2
]
}
}
},
{
"origin": [
-0.14088,
-19.12759,
15.42042
],
"size": [
0.33501,
1.78854,
1.79175
],
"pivot": [
0.02662,
-18.54019,
16.62249
],
"rotation": [
45,
0,
90
],
"uv": {
"north": {
"uv": [
12,
4
],
"uv_size": [
1,
2
]
},
"east": {
"uv": [
10,
4
],
"uv_size": [
2,
2
]
},
"west": {
"uv": [
10,
6
],
"uv_size": [
2,
2
]
},
"up": {
"uv": [
12,
6
],
"uv_size": [
1,
2
]
}
}
}
]
},
{
"name": "flare",
"parent": "bone",
"pivot": [
0,
-0.47857,
0
],
"cubes": [
{
"origin": [
-16.75,
-0.45,
-0.75
],
"size": [
16,
0,
1.5
],
"uv": {
"up": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
},
"down": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
}
}
},
{
"origin": [
-24.75,
-0.45,
-0.75
],
"size": [
24,
0,
1.5
],
"pivot": [
0,
0,
0
],
"rotation": [
0,
90,
0
],
"uv": {
"up": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
},
"down": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
}
}
},
{
"origin": [
-16.75,
-0.45,
-0.75
],
"size": [
16,
0,
1.5
],
"pivot": [
0,
0,
0
],
"rotation": [
0,
180,
0
],
"uv": {
"up": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
},
"down": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
}
}
},
{
"origin": [
-16,
14.5,
-1
],
"size": [
32,
0,
2
],
"pivot": [
0,
14.5,
0
],
"rotation": [
135,
0,
90
],
"uv": {
"up": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
},
"down": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
}
}
},
{
"origin": [
-16,
14.5,
-1
],
"size": [
32,
0,
2
],
"pivot": [
0,
14.5,
0
],
"rotation": [
-135,
0,
90
],
"uv": {
"up": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
},
"down": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
}
}
},
{
"origin": [
-24.75,
-0.45,
-0.75
],
"size": [
24,
0,
1.5
],
"pivot": [
0,
0,
0
],
"rotation": [
0,
-90,
0
],
"uv": {
"up": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
},
"down": {
"uv": [
40,
64
],
"uv_size": [
-34,
-4
]
}
}
},
{
"origin": [
-2.75,
-0.45,
-2.75
],
"size": [
5.5,
0,
5.5
],
"pivot": [
0,
-0.45,
0
],
"rotation": [
0,
-45,
0
],
"uv": {
"up": {
"uv": [
8,
64
],
"uv_size": [
-4,
-4
]
},
"down": {
"uv": [
8,
64
],
"uv_size": [
-4,
-4
]
}
}
},
{
"origin": [
-2.5,
1.3,
-2.5
],
"size": [
5,
0,
5
],
"pivot": [
0,
1.3,
0
],
"rotation": [
90,
-45,
0
],
"uv": {
"up": {
"uv": [
8,
64
],
"uv_size": [
-4,
-4
]
},
"down": {
"uv": [
8,
64
],
"uv_size": [
-4,
-4
]
}
}
},
{
"origin": [
-2.5,
1.3,
-2.5
],
"size": [
5,
0,
5
],
"pivot": [
0,
1.3,
0
],
"rotation": [
90,
45,
0
],
"uv": {
"up": {
"uv": [
8,
64
],
"uv_size": [
-4,
-4
]
},
"down": {
"uv": [
8,
64
],
"uv_size": [
-4,
-4
]
}
}
}
]
}
]
}
]
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more