diff --git a/src/main/java/com/atsuishio/superbwarfare/client/layer/AnnihilatorLayer.java b/src/main/java/com/atsuishio/superbwarfare/client/layer/AnnihilatorLayer.java new file mode 100644 index 000000000..09c204b9d --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/client/layer/AnnihilatorLayer.java @@ -0,0 +1,28 @@ +package com.atsuishio.superbwarfare.client.layer; + +import com.atsuishio.superbwarfare.ModUtils; +import com.atsuishio.superbwarfare.entity.AnnihilatorEntity; +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 AnnihilatorLayer extends GeoRenderLayer { + + private static final ResourceLocation LAYER = ModUtils.loc("textures/entity/annihilator_e.png"); + + public AnnihilatorLayer(GeoRenderer entityRenderer) { + super(entityRenderer); + } + + @Override + public void render(PoseStack poseStack, AnnihilatorEntity animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) { + RenderType glowRenderType = RenderType.energySwirl(LAYER,1,1); + getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 1, 1, 1, 1); + } +} diff --git a/src/main/java/com/atsuishio/superbwarfare/client/model/entity/AnnihilatorModel.java b/src/main/java/com/atsuishio/superbwarfare/client/model/entity/AnnihilatorModel.java new file mode 100644 index 000000000..60992b0c3 --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/client/model/entity/AnnihilatorModel.java @@ -0,0 +1,61 @@ +package com.atsuishio.superbwarfare.client.model.entity; + +import com.atsuishio.superbwarfare.ModUtils; +import com.atsuishio.superbwarfare.entity.AnnihilatorEntity; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.Mth; +import software.bernie.geckolib.constant.DataTickets; +import software.bernie.geckolib.core.animatable.model.CoreGeoBone; +import software.bernie.geckolib.core.animation.AnimationState; +import software.bernie.geckolib.model.GeoModel; +import software.bernie.geckolib.model.data.EntityModelData; + +public class AnnihilatorModel extends GeoModel { + + @Override + public ResourceLocation getAnimationResource(AnnihilatorEntity entity) { + return null; + } + + @Override + public ResourceLocation getModelResource(AnnihilatorEntity entity) { + + return ModUtils.loc("geo/annihilator.geo.json"); + +// Player player = Minecraft.getInstance().player; +// +// int distance = 0; +// +// if (player != null) { +// distance = (int) player.position().distanceTo(entity.position()); +// } +// +// if (distance < 32) { +// return ModUtils.loc("geo/sherman.geo.json"); +// } else if (distance < 64) { +// return ModUtils.loc("geo/sherman_lod1.geo.json"); +// } else { +// return ModUtils.loc("geo/sherman_lod2.geo.json"); +// } + } + + @Override + public ResourceLocation getTextureResource(AnnihilatorEntity entity) { + return ModUtils.loc("textures/entity/annihilator.png"); + } + + @Override + public void setCustomAnimations(AnnihilatorEntity animatable, long instanceId, AnimationState animationState) { + CoreGeoBone bone = getAnimationProcessor().getBone("PaoGuan"); + EntityModelData entityData = animationState.getData(DataTickets.ENTITY_MODEL_DATA); + bone.setRotX((entityData.headPitch()) * Mth.DEG_TO_RAD); + + CoreGeoBone laser1 = getAnimationProcessor().getBone("laser1"); + CoreGeoBone laser2 = getAnimationProcessor().getBone("laser2"); + CoreGeoBone laser3 = getAnimationProcessor().getBone("laser3"); + + laser1.setScaleZ(512); + laser2.setScaleZ(512); + laser3.setScaleZ(512); + } +} diff --git a/src/main/java/com/atsuishio/superbwarfare/client/model/entity/GunGrenadeModel.java b/src/main/java/com/atsuishio/superbwarfare/client/model/entity/GunGrenadeModel.java index 0968b4bba..871b61a9b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/model/entity/GunGrenadeModel.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/model/entity/GunGrenadeModel.java @@ -26,8 +26,8 @@ public class GunGrenadeModel extends GeoModel { @Override public void setCustomAnimations(GunGrenadeEntity animatable, long instanceId, AnimationState animationState) { CoreGeoBone bone = getAnimationProcessor().getBone("bone"); - bone.setScaleX(0.15f); - bone.setScaleY(0.15f); - bone.setScaleZ(0.15f); + bone.setScaleX(0.2f); + bone.setScaleY(0.2f); + bone.setScaleZ(0.2f); } } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/entity/AnnihilatorRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/entity/AnnihilatorRenderer.java new file mode 100644 index 000000000..7dd0f369a --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/entity/AnnihilatorRenderer.java @@ -0,0 +1,52 @@ +package com.atsuishio.superbwarfare.client.renderer.entity; + +import com.atsuishio.superbwarfare.client.layer.AnnihilatorLayer; +import com.atsuishio.superbwarfare.client.model.entity.AnnihilatorModel; +import com.atsuishio.superbwarfare.entity.AnnihilatorEntity; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import com.mojang.math.Axis; +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 net.minecraft.util.Mth; +import software.bernie.geckolib.cache.object.BakedGeoModel; +import software.bernie.geckolib.renderer.GeoEntityRenderer; + +public class AnnihilatorRenderer extends GeoEntityRenderer { + + public AnnihilatorRenderer(EntityRendererProvider.Context renderManager) { + super(renderManager, new AnnihilatorModel()); + this.shadowRadius = 2f; + this.addRenderLayer(new AnnihilatorLayer(this)); +// this.addRenderLayer(new Mk42DamageLayer(this)); + } + + @Override + public RenderType getRenderType(AnnihilatorEntity animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) { + return RenderType.entityTranslucent(getTextureLocation(animatable)); + } + + @Override + public void preRender(PoseStack poseStack, AnnihilatorEntity entity, BakedGeoModel model, MultiBufferSource bufferSource, VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, float red, float green, + float blue, float alpha) { + float scale = 1f; + this.scaleHeight = scale; + this.scaleWidth = scale; + super.preRender(poseStack, entity, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, red, green, blue, alpha); + } + + @Override + public void render(AnnihilatorEntity entityIn, float entityYaw, float partialTicks, PoseStack poseStack, MultiBufferSource bufferIn, int packedLightIn) { + poseStack.pushPose(); + poseStack.mulPose(Axis.YP.rotationDegrees(-Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()))); + super.render(entityIn, entityYaw, partialTicks, poseStack, bufferIn, packedLightIn); + poseStack.popPose(); + } + + @Override + protected float getDeathMaxRotation(AnnihilatorEntity entityLivingBaseIn) { + return 0.0F; + } +} diff --git a/src/main/java/com/atsuishio/superbwarfare/config/server/CannonConfig.java b/src/main/java/com/atsuishio/superbwarfare/config/server/CannonConfig.java index e68475532..e6b7a81fa 100644 --- a/src/main/java/com/atsuishio/superbwarfare/config/server/CannonConfig.java +++ b/src/main/java/com/atsuishio/superbwarfare/config/server/CannonConfig.java @@ -20,6 +20,8 @@ public class CannonConfig { public static ForgeConfigSpec.IntValue MLE1934_HE_EXPLOSION_DAMAGE; public static ForgeConfigSpec.IntValue MLE1934_HE_EXPLOSION_RADIUS; + public static ForgeConfigSpec.IntValue ANNIHILATOR_HP; + public static void init(ForgeConfigSpec.Builder builder) { builder.push("mk_42"); @@ -70,6 +72,12 @@ public class CannonConfig { MLE1934_HE_EXPLOSION_RADIUS = builder.defineInRange("mle_1934_he_explosion_radius", 12, 1, 50); builder.pop(); + + builder.push("annihilator"); + + builder.comment("The HealthPoint of ANNIHILATOR"); + ANNIHILATOR_HP = builder.defineInRange("annihilator_hp", 4000, 1, 10000000); + builder.pop(); } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/AnnihilatorEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/AnnihilatorEntity.java new file mode 100644 index 000000000..bc9296be4 --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/entity/AnnihilatorEntity.java @@ -0,0 +1,507 @@ +package com.atsuishio.superbwarfare.entity; + +import com.atsuishio.superbwarfare.ModUtils; +import com.atsuishio.superbwarfare.config.server.CannonConfig; +import com.atsuishio.superbwarfare.config.server.ExplosionDestroyConfig; +import com.atsuishio.superbwarfare.entity.projectile.CannonShellEntity; +import com.atsuishio.superbwarfare.init.*; +import com.atsuishio.superbwarfare.item.ContainerBlockItem; +import com.atsuishio.superbwarfare.item.common.ammo.CannonShellItem; +import com.atsuishio.superbwarfare.network.message.ShakeClientMessage; +import com.atsuishio.superbwarfare.tools.CustomExplosion; +import com.atsuishio.superbwarfare.tools.ParticleTool; +import com.atsuishio.superbwarfare.tools.SoundTool; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.network.syncher.EntityDataAccessor; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.util.Mth; +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.player.Player; +import net.minecraft.world.entity.projectile.ThrownPotion; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import net.minecraftforge.network.NetworkHooks; +import net.minecraftforge.network.PacketDistributor; +import net.minecraftforge.network.PlayMessages; +import org.joml.Vector3d; +import software.bernie.geckolib.animatable.GeoEntity; +import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache; +import software.bernie.geckolib.core.animation.AnimatableManager; +import software.bernie.geckolib.util.GeckoLibUtil; + +import java.util.Comparator; + +public class AnnihilatorEntity extends Entity implements GeoEntity, ICannonEntity { + + public static final EntityDataAccessor COOL_DOWN = SynchedEntityData.defineId(AnnihilatorEntity.class, EntityDataSerializers.INT); + public static final EntityDataAccessor TYPE = SynchedEntityData.defineId(AnnihilatorEntity.class, EntityDataSerializers.INT); + public static final EntityDataAccessor HEALTH = SynchedEntityData.defineId(AnnihilatorEntity.class, EntityDataSerializers.FLOAT); + private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); + + public static final float MAX_HEALTH = CannonConfig.ANNIHILATOR_HP.get(); + + protected int interpolationSteps; + protected double serverYRot; + protected double serverXRot; + + public AnnihilatorEntity(PlayMessages.SpawnEntity packet, Level world) { + this(ModEntities.ANNIHILATOR.get(), world); + } + + public AnnihilatorEntity(EntityType type, Level world) { + super(type, world); + this.noCulling = true; + } + + @Override + protected void defineSynchedData() { + this.entityData.define(COOL_DOWN, 0); + this.entityData.define(TYPE, 0); + this.entityData.define(HEALTH, MAX_HEALTH); + } + + @Override + public void addAdditionalSaveData(CompoundTag compound) { + compound.putInt("CoolDown", this.entityData.get(COOL_DOWN)); + compound.putInt("Type", this.entityData.get(TYPE)); + compound.putFloat("Health", this.entityData.get(HEALTH)); + } + + @Override + public void readAdditionalSaveData(CompoundTag compound) { + this.entityData.set(COOL_DOWN, compound.getInt("CoolDown")); + this.entityData.set(TYPE, compound.getInt("Type")); + if (compound.contains("Health")) { + this.entityData.set(HEALTH, compound.getFloat("Health")); + } else { + this.entityData.set(HEALTH, MAX_HEALTH); + } + } + + @Override + public boolean canBeCollidedWith() { + return true; + } + + @Override + public boolean canCollideWith(Entity pEntity) { + return (pEntity.canBeCollidedWith() || pEntity.isPushable()) && !this.isPassengerOfSameVehicle(pEntity); + } + + @Override + protected float getEyeHeight(Pose pPose, EntityDimensions pSize) { + return 2.16F; + } + + @Override + public Packet getAddEntityPacket() { + return NetworkHooks.getEntitySpawningPacket(this); + } + + @Override + public double getPassengersRidingOffset() { + return super.getPassengersRidingOffset() - 0.075; + } + + @Override + public boolean hurt(DamageSource source, float amount) { + if (this.level() instanceof ServerLevel serverLevel) { + ParticleTool.sendParticle(serverLevel, ModParticleTypes.FIRE_STAR.get(), this.getX(), this.getY() + 2.5, this.getZ(), 4, 0.2, 0.2, 0.2, 0.2, false); + } + + if (source.getDirectEntity() instanceof ThrownPotion || source.getDirectEntity() instanceof AreaEffectCloud) + return false; + if (source.is(DamageTypes.FALL)) + return false; + if (source.is(DamageTypes.CACTUS)) + return false; + if (source.is(DamageTypes.DROWN)) + return false; + if (source.is(DamageTypes.LIGHTNING_BOLT)) + return false; + if (source.is(DamageTypes.FALLING_ANVIL)) + return false; + if (source.is(DamageTypes.DRAGON_BREATH)) + return false; + if (source.is(DamageTypes.WITHER)) + return false; + if (source.is(DamageTypes.WITHER_SKULL)) + return false; + if (source.is(ModDamageTypes.PROJECTILE_BOOM)) { + amount *= 0.5f; + } + if (source.is(ModDamageTypes.CANNON_FIRE)) { + amount *= 1.4f; + } + if (source.is(ModDamageTypes.GUN_FIRE_ABSOLUTE)) { + amount *= 1.6f; + } + + this.level().playSound(null, this.getOnPos(), ModSounds.HIT.get(), SoundSource.PLAYERS, 1, 1); + this.entityData.set(HEALTH, this.entityData.get(HEALTH) - 0.5f * Math.max(amount - 150, 0)); + + return true; + } + + @Override + public boolean isPickable() { + return !this.isRemoved(); + } + + @Override + public InteractionResult interact(Player player, InteractionHand hand) { + if (player.isShiftKeyDown()) { + if (player.getMainHandItem().is(ModItems.CROWBAR.get()) && this.getFirstPassenger() == null) { + ItemStack stack = ContainerBlockItem.createInstance(this); + if (!player.addItem(stack)) { + player.drop(stack, false); + } + + this.discard(); + return InteractionResult.sidedSuccess(this.level().isClientSide()); + } + return InteractionResult.PASS; + } else { + if (this.getFirstPassenger() == null) { + player.setXRot(this.getXRot()); + player.setYRot(this.getYRot()); + player.startRiding(this); + return InteractionResult.sidedSuccess(this.level().isClientSide()); + } + } + + return InteractionResult.PASS; + } + + @Override + public Vec3 getDeltaMovement() { + return new Vec3(0, Math.min(super.getDeltaMovement().y, 0), 0); + } + + @Override + public void baseTick() { + super.baseTick(); + + if (this.entityData.get(COOL_DOWN) > 0) { + this.entityData.set(COOL_DOWN, this.entityData.get(COOL_DOWN) - 1); + } + + this.move(MoverType.SELF, this.getDeltaMovement()); + if (this.onGround()) { + this.setDeltaMovement(Vec3.ZERO); + } else { + this.setDeltaMovement(this.getDeltaMovement().add(0.0, -0.04, 0.0)); + } + + if (this.entityData.get(HEALTH) <= 0.4 * CannonConfig.ANNIHILATOR_HP.get()) { + if (this.level() instanceof ServerLevel serverLevel) { + ParticleTool.sendParticle(serverLevel, ParticleTypes.LARGE_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 2, 0.75, 0.5, 0.75, 0.01, false); + } + } + + if (this.entityData.get(HEALTH) <= 0.25 * CannonConfig.ANNIHILATOR_HP.get()) { + if (this.level() instanceof ServerLevel serverLevel) { + ParticleTool.sendParticle(serverLevel, ParticleTypes.LARGE_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 1, 0.75, 0.5, 0.75, 0.01, false); + ParticleTool.sendParticle(serverLevel, ParticleTypes.CAMPFIRE_COSY_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 1, 0.75, 0.5, 0.75, 0.01, false); + } + } + + if (this.entityData.get(HEALTH) <= 0.15 * CannonConfig.ANNIHILATOR_HP.get()) { + if (this.level() instanceof ServerLevel serverLevel) { + ParticleTool.sendParticle(serverLevel, ParticleTypes.LARGE_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 1, 0.75, 0.5, 0.75, 0.01, false); + ParticleTool.sendParticle(serverLevel, ParticleTypes.CAMPFIRE_COSY_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 1, 0.75, 0.5, 0.75, 0.01, false); + } + } + + if (this.entityData.get(HEALTH) <= 0.1 * CannonConfig.ANNIHILATOR_HP.get()) { + if (this.level() instanceof ServerLevel serverLevel) { + ParticleTool.sendParticle(serverLevel, ParticleTypes.LARGE_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 2, 0.75, 0.5, 0.75, 0.01, false); + ParticleTool.sendParticle(serverLevel, ParticleTypes.CAMPFIRE_COSY_SMOKE, this.getX(), this.getY() + 2.5, this.getZ(), 2, 0.75, 0.5, 0.75, 0.01, false); + ParticleTool.sendParticle(serverLevel, ParticleTypes.FLAME, this.getX(), this.getY() + 3.2, this.getZ(), 4, 0.6, 0.1, 0.6, 0.05, false); + ParticleTool.sendParticle(serverLevel, ModParticleTypes.FIRE_STAR.get(), this.getX(), this.getY() + 3, this.getZ(), 4, 0.1, 0.1, 0.1, 0.4, false); + } + if (this.tickCount % 15 == 0) { + this.level().playSound(null, this.getOnPos(), SoundEvents.FIRE_AMBIENT, SoundSource.PLAYERS, 1, 1); + } + this.entityData.set(HEALTH, this.entityData.get(HEALTH) - 0.1f); + } else { + this.entityData.set(HEALTH, Math.min(this.entityData.get(HEALTH) + 0.05f, MAX_HEALTH)); + } + + if (this.entityData.get(HEALTH) <= 0) { + this.ejectPassengers(); + destroy(); + } + + travel(); + this.refreshDimensions(); + } + + private void destroy() { + CustomExplosion explosion = new CustomExplosion(this.level(), this, + ModDamageTypes.causeProjectileBoomDamage(this.level().registryAccess(), this, this), 140f, + this.getX(), this.getY(), this.getZ(), 25f, ExplosionDestroyConfig.EXPLOSION_DESTROY.get() ? Explosion.BlockInteraction.DESTROY : Explosion.BlockInteraction.KEEP).setDamageMultiplier(1); + explosion.explode(); + net.minecraftforge.event.ForgeEventFactory.onExplosionStart(this.level(), explosion); + explosion.finalizeExplosion(false); + ParticleTool.spawnHugeExplosionParticles(this.level(), this.position()); + + this.discard(); + } + + @Override + public void cannonShoot(Player player) { + if (this.entityData.get(COOL_DOWN) > 0) { + return; + } + + Level level = player.level(); + if (level instanceof ServerLevel server) { + ItemStack stack = player.getMainHandItem(); + + if (!(stack.getItem() instanceof CannonShellItem)) { + return; + } + + float hitDamage = 0; + float explosionRadius = 0; + float explosionDamage = 0; + float fireProbability = 0; + int fireTime = 0; + int durability = 0; + boolean salvoShoot = false; + + if (stack.is(ModItems.HE_5_INCHES.get())) { + hitDamage = CannonConfig.MLE1934_HE_DAMAGE.get(); + explosionRadius = CannonConfig.MLE1934_HE_EXPLOSION_RADIUS.get(); + explosionDamage = CannonConfig.MLE1934_HE_EXPLOSION_DAMAGE.get(); + fireProbability = 0.24F; + fireTime = 5; + durability = 1; + salvoShoot = stack.getCount() > 1 || player.isCreative(); + } + + if (stack.is(ModItems.AP_5_INCHES.get())) { + hitDamage = CannonConfig.MLE1934_AP_DAMAGE.get(); + explosionRadius = CannonConfig.MLE1934_AP_EXPLOSION_RADIUS.get(); + explosionDamage = CannonConfig.MLE1934_AP_EXPLOSION_DAMAGE.get(); + fireProbability = 0; + fireTime = 0; + durability = 70; + salvoShoot = stack.getCount() > 1 || player.isCreative(); + } + + if (!player.isCreative()) { + stack.shrink(salvoShoot ? 2 : 1); + } + + float yRot = this.getYRot(); + if (yRot < 0) { + yRot += 360; + } + yRot = yRot + 90 % 360; + + var leftPos = new Vector3d(0, 0, -0.45); + leftPos.rotateZ(-this.getXRot() * Mth.DEG_TO_RAD); + leftPos.rotateY(-yRot * Mth.DEG_TO_RAD); + + // 左炮管 + CannonShellEntity entityToSpawnLeft = new CannonShellEntity(ModEntities.CANNON_SHELL.get(), + player, level, hitDamage, explosionRadius, explosionDamage, fireProbability, fireTime).durability(durability); + + entityToSpawnLeft.setPos(this.getX() + leftPos.x, + this.getEyeY() - 0.2 + leftPos.y, + this.getZ() + leftPos.z); + entityToSpawnLeft.shoot(this.getLookAngle().x, this.getLookAngle().y, this.getLookAngle().z, 15, 0.05f); + level.addFreshEntity(entityToSpawnLeft); + + var leftPosP1 = new Vector3d(7, 0, -0.45); + leftPosP1.rotateZ(-this.getXRot() * Mth.DEG_TO_RAD); + leftPosP1.rotateY(-yRot * Mth.DEG_TO_RAD); + + server.sendParticles(ParticleTypes.CAMPFIRE_COSY_SMOKE, + this.getX() + leftPosP1.x, + this.getEyeY() - 0.2 + leftPosP1.y, + this.getZ() + leftPosP1.z, + 10, 0.4, 0.4, 0.4, 0.0075); + + server.sendParticles(ParticleTypes.CLOUD, + this.getX() + leftPosP1.x, + this.getEyeY() - 0.2 + leftPosP1.y, + this.getZ() + leftPosP1.z, + 10, 0.4, 0.4, 0.4, 0.0075); + + int count = 5; + + for (float i = 9.5f; i < 14; i += .5f) { + var leftPosP = new Vector3d(i, 0, -0.45); + leftPosP.rotateZ(-this.getXRot() * Mth.DEG_TO_RAD); + leftPosP.rotateY(-yRot * Mth.DEG_TO_RAD); + + server.sendParticles(ParticleTypes.CAMPFIRE_COSY_SMOKE, + this.getX() + leftPosP.x, + this.getEyeY() - 0.2 + leftPosP.y, + this.getZ() + leftPosP.z, + Mth.clamp(count--, 1, 5), 0.1, 0.1, 0.1, 0.002); + } + + // 右炮管 + if (salvoShoot) { + var rightPos = new Vector3d(0, 0, 0.45); + rightPos.rotateZ(-this.getXRot() * Mth.DEG_TO_RAD); + rightPos.rotateY(-yRot * Mth.DEG_TO_RAD); + + CannonShellEntity entityToSpawnRight = new CannonShellEntity(ModEntities.CANNON_SHELL.get(), + player, level, hitDamage, explosionRadius, explosionDamage, fireProbability, fireTime).durability(durability); + + entityToSpawnRight.setPos(this.getX() + rightPos.x, + this.getEyeY() - 0.2 + rightPos.y, + this.getZ() + rightPos.z); + entityToSpawnRight.shoot(this.getLookAngle().x, this.getLookAngle().y, this.getLookAngle().z, 15, 0.05f); + level.addFreshEntity(entityToSpawnRight); + + var rightPosP1 = new Vector3d(7, 0, 0.45); + rightPosP1.rotateZ(-this.getXRot() * Mth.DEG_TO_RAD); + rightPosP1.rotateY(-yRot * Mth.DEG_TO_RAD); + + server.sendParticles(ParticleTypes.CAMPFIRE_COSY_SMOKE, + this.getX() + rightPosP1.x, + this.getEyeY() - 0.2 + rightPosP1.y, + this.getZ() + rightPosP1.z, + 10, 0.4, 0.4, 0.4, 0.0075); + + server.sendParticles(ParticleTypes.CLOUD, + this.getX() + rightPosP1.x, + this.getEyeY() - 0.2 + rightPosP1.y, + this.getZ() + rightPosP1.z, + 10, 0.4, 0.4, 0.4, 0.0075); + + int countR = 5; + + for (float i = 9.5f; i < 14; i += .5f) { + var rightPosP = new Vector3d(i, 0, 0.45); + rightPosP.rotateZ(-this.getXRot() * Mth.DEG_TO_RAD); + rightPosP.rotateY(-yRot * Mth.DEG_TO_RAD); + + server.sendParticles(ParticleTypes.CAMPFIRE_COSY_SMOKE, + this.getX() + rightPosP.x, + this.getEyeY() - 0.2 + rightPosP.y, + this.getZ() + rightPosP.z, + Mth.clamp(countR--, 1, 5), 0.1, 0.1, 0.1, 0.002); + } + + this.entityData.set(TYPE, 1); + } else { + this.entityData.set(TYPE, -1); + } + + if (player instanceof ServerPlayer serverPlayer) { + SoundTool.playLocalSound(serverPlayer, ModSounds.MK_42_FIRE_1P.get(), 2, 1); + ModUtils.queueServerWork(44, () -> SoundTool.playLocalSound(serverPlayer, ModSounds.MK_42_RELOAD.get(), 2, 1)); + serverPlayer.level().playSound(null, serverPlayer.getOnPos(), ModSounds.MK_42_FIRE_3P.get(), SoundSource.PLAYERS, 6, 1); + serverPlayer.level().playSound(null, serverPlayer.getOnPos(), ModSounds.MK_42_FAR.get(), SoundSource.PLAYERS, 16, 1); + serverPlayer.level().playSound(null, serverPlayer.getOnPos(), ModSounds.MK_42_VERYFAR.get(), SoundSource.PLAYERS, 32, 1); + } + + this.entityData.set(COOL_DOWN, 74); + + server.sendParticles(ParticleTypes.CAMPFIRE_COSY_SMOKE, + this.getX() + 5 * this.getLookAngle().x, + this.getY(), + this.getZ() + 5 * this.getLookAngle().z, + 100, 7, 0.02, 7, 0.005); + + final Vec3 center = new Vec3(this.getX(), this.getEyeY(), this.getZ()); + + for (Entity target : level.getEntitiesOfClass(Entity.class, new AABB(center, center).inflate(20), e -> true).stream().sorted(Comparator.comparingDouble(e -> e.distanceToSqr(center))).toList()) { + + if (target instanceof ServerPlayer serverPlayer) { + ModUtils.PACKET_HANDLER.send(PacketDistributor.PLAYER.with(() -> serverPlayer), new ShakeClientMessage(15,15,45, this.getX(), this.getEyeY(), this.getZ())); + } + } + } + } + + @Override + public void lerpTo(double x, double y, double z, float yaw, float pitch, int interpolationSteps, boolean interpolate) { + serverYRot = yaw; + serverXRot = pitch; + this.interpolationSteps = 10; + } + + public void travel() { + Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + if (!(passenger instanceof LivingEntity entity)) return; + + float passengerY = entity.getYHeadRot(); + + if (passengerY > 180.0f) { + passengerY -= 360.0f; + } else if (passengerY < -180.0f) { + passengerY += 360.0f; + } + + float diffY = passengerY - this.getYRot(); + float diffX = entity.getXRot() - 1.2f - this.getXRot(); + if (diffY > 180.0f) { + diffY -= 360.0f; + } else if (diffY < -180.0f) { + diffY += 360.0f; + } + diffY = Mth.clamp(diffY * 0.15f, -0.6f, 0.6f); + diffX = diffX * 0.15f; + + this.setYRot(this.getYRot() + diffY); + this.setXRot(Mth.clamp(this.getXRot() + Mth.clamp(diffX, -2f, 2f), -45, 5)); + this.setRot(this.getYRot(), this.getXRot()); + } + + protected void clampRotation(Entity entity) { + float f = Mth.wrapDegrees(entity.getXRot()); + float f1 = Mth.clamp(f, -45.0F, 5.0F); + entity.xRotO += f1 - f; + entity.setXRot(entity.getXRot() + f1 - f); + } + + @Override + public void onPassengerTurned(Entity entity) { + this.clampRotation(entity); + } + +// private PlayState movementPredicate(AnimationState event) { +// if (this.entityData.get(COOL_DOWN) > 64) { +// if (this.entityData.get(TYPE) == 1) { +// return event.setAndContinue(RawAnimation.begin().thenPlay("animation.mle1934.salvo_fire")); +// } else { +// return event.setAndContinue(RawAnimation.begin().thenPlay("animation.mle1934.fire")); +// } +// } +// return event.setAndContinue(RawAnimation.begin().thenLoop("animation.mle1934.idle")); +// } + + @Override + public void registerControllers(AnimatableManager.ControllerRegistrar data) { +// data.add(new AnimationController<>(this, "movement", 0, this::movementPredicate)); + } + + @Override + public AnimatableInstanceCache getAnimatableInstanceCache() { + return this.cache; + } + +} diff --git a/src/main/java/com/atsuishio/superbwarfare/init/ModEntities.java b/src/main/java/com/atsuishio/superbwarfare/init/ModEntities.java index 544266331..68415e7b4 100644 --- a/src/main/java/com/atsuishio/superbwarfare/init/ModEntities.java +++ b/src/main/java/com/atsuishio/superbwarfare/init/ModEntities.java @@ -34,6 +34,8 @@ public class ModEntities { EntityType.Builder.of(Mk42Entity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(true).setTrackingRange(5124).setUpdateInterval(3).setCustomClientFactory(Mk42Entity::new).fireImmune().sized(3.4f, 3.5f)); public static final RegistryObject> MLE_1934 = register("mle_1934", EntityType.Builder.of(Mle1934Entity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(true).setTrackingRange(512).setUpdateInterval(3).setCustomClientFactory(Mle1934Entity::new).fireImmune().sized(4.5f, 2.8f)); + public static final RegistryObject> ANNIHILATOR = register("annihilator", + EntityType.Builder.of(AnnihilatorEntity::new, MobCategory.MISC).setShouldReceiveVelocityUpdates(true).setTrackingRange(512).setUpdateInterval(3).setCustomClientFactory(AnnihilatorEntity::new).fireImmune().sized(13f, 4.2f)); public static final RegistryObject> DRONE = register("drone", EntityType.Builder.of(DroneEntity::new, MobCategory.CREATURE).setShouldReceiveVelocityUpdates(true).setTrackingRange(512).setUpdateInterval(3).setCustomClientFactory(DroneEntity::new).sized(0.6f, 0.2f)); diff --git a/src/main/java/com/atsuishio/superbwarfare/init/ModEntityRenderers.java b/src/main/java/com/atsuishio/superbwarfare/init/ModEntityRenderers.java index 6d5dbc16c..ac87ef35c 100644 --- a/src/main/java/com/atsuishio/superbwarfare/init/ModEntityRenderers.java +++ b/src/main/java/com/atsuishio/superbwarfare/init/ModEntityRenderers.java @@ -28,5 +28,6 @@ public class ModEntityRenderers { event.registerEntityRenderer(ModEntities.MLE_1934.get(), Mle1934Renderer::new); event.registerEntityRenderer(ModEntities.JAVELIN_MISSILE.get(), JavelinMissileRenderer::new); event.registerEntityRenderer(ModEntities.LASER.get(), LaserEntityRenderer::new); + event.registerEntityRenderer(ModEntities.ANNIHILATOR.get(), AnnihilatorRenderer::new); } } diff --git a/src/main/java/com/atsuishio/superbwarfare/init/ModTabs.java b/src/main/java/com/atsuishio/superbwarfare/init/ModTabs.java index c30e08e26..414d07f2b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/init/ModTabs.java +++ b/src/main/java/com/atsuishio/superbwarfare/init/ModTabs.java @@ -105,6 +105,7 @@ public class ModTabs { if (registryObject.get() == ModItems.CONTAINER.get()) { output.accept(ContainerBlockItem.createMk42Instance()); output.accept(ContainerBlockItem.createMle1934Instance()); + output.accept(ContainerBlockItem.createAnnihilatorInstance()); } else { output.accept(registryObject.get()); if (registryObject.get() == ModItems.ARMOR_PLATE.get()) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/ContainerBlockItem.java b/src/main/java/com/atsuishio/superbwarfare/item/ContainerBlockItem.java index ac4c17d68..a4f442772 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/ContainerBlockItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/ContainerBlockItem.java @@ -97,4 +97,8 @@ public class ContainerBlockItem extends BlockItem implements GeoItem { public static ItemStack createMle1934Instance() { return createInstance(ModEntities.MLE_1934.get()); } + + public static ItemStack createAnnihilatorInstance() { + return createInstance(ModEntities.ANNIHILATOR.get()); + } } diff --git a/src/main/resources/assets/superbwarfare/geo/annihilator.geo.json b/src/main/resources/assets/superbwarfare/geo/annihilator.geo.json new file mode 100644 index 000000000..4a0d5810b --- /dev/null +++ b/src/main/resources/assets/superbwarfare/geo/annihilator.geo.json @@ -0,0 +1,3503 @@ +{ + "format_version": "1.12.0", + "minecraft:geometry": [ + { + "description": { + "identifier": "geometry.annihilator", + "texture_width": 128, + "texture_height": 128, + "visible_bounds_width": 43, + "visible_bounds_height": 7.5, + "visible_bounds_offset": [0, 3.25, 0] + }, + "bones": [ + { + "name": "bone", + "pivot": [0, 0, 0] + }, + { + "name": "main", + "parent": "bone", + "pivot": [0, 0, 0] + }, + { + "name": "PaoGuan", + "parent": "main", + "pivot": [0, 30, -66], + "cubes": [ + { + "origin": [-50.4, 34.56, -80.64], + "size": [100.8, 2.88, 2.88], + "uv": { + "north": {"uv": [42, 31], "uv_size": [14, 1]}, + "south": {"uv": [65, 4], "uv_size": [14, 1]}, + "up": {"uv": [66, 49], "uv_size": [14, 1]}, + "down": {"uv": [66, 51], "uv_size": [14, -1]} + } + } + ] + }, + { + "name": "laser", + "parent": "PaoGuan", + "pivot": [43.25, 36.0004, -275] + }, + { + "name": "laser1", + "parent": "laser", + "pivot": [43.25, 35.2504, -331], + "cubes": [ + { + "origin": [41.25, 33.2488, -347], + "size": [4, 4, 16], + "uv": { + "north": {"uv": [48, 81], "uv_size": [1, 1]}, + "east": {"uv": [48, 81], "uv_size": [1, 1]}, + "south": {"uv": [48, 81], "uv_size": [1, 1]}, + "west": {"uv": [48, 81], "uv_size": [1, 1]}, + "up": {"uv": [49, 82], "uv_size": [-1, -1]}, + "down": {"uv": [49, 82], "uv_size": [-1, -1]} + } + }, + { + "origin": [38.75, 30.7478, -347], + "size": [9, 0, 16], + "uv": { + "up": {"uv": [48, 82], "uv_size": [-1, -1]} + } + }, + { + "origin": [38.747, 30.7508, -347], + "size": [9, 0, 16], + "pivot": [43.25, 35.2508, -343], + "rotation": [0, 0, 90], + "uv": { + "up": {"uv": [48, 82], "uv_size": [-1, -1]} + } + }, + { + "origin": [38.75, 30.7478, -347], + "size": [9, 0, 16], + "pivot": [43.25, 35.2508, -343], + "rotation": [0, 0, -180], + "uv": { + "up": {"uv": [48, 82], "uv_size": [-1, -1]} + } + }, + { + "origin": [38.747, 30.7508, -347], + "size": [9, 0, 16], + "pivot": [43.25, 35.2508, -343], + "rotation": [0, 0, -90], + "uv": { + "up": {"uv": [48, 82], "uv_size": [-1, -1]} + } + }, + { + "origin": [39.247, 30.7568, -339.5], + "size": [9, 0, 9], + "pivot": [43.75, 35.2568, -335.5], + "rotation": [90, 0, -90], + "uv": { + "up": {"uv": [48, 82], "uv_size": [-1, -1]} + } + }, + { + "origin": [38.75, 35.2538, -351.5], + "size": [9, 0, 9], + "pivot": [43.25, 35.2538, -347], + "rotation": [-90, 0, -90], + "uv": { + "up": {"uv": [48, 82], "uv_size": [-1, -1]} + } + } + ] + }, + { + "name": "laser2", + "parent": "laser", + "pivot": [0, 35.2504, -331], + "cubes": [ + { + "origin": [-2, 33.2488, -347], + "size": [4, 4, 16], + "uv": { + "north": {"uv": [49, 81], "uv_size": [-1, 1]}, + "east": {"uv": [49, 81], "uv_size": [-1, 1]}, + "south": {"uv": [49, 81], "uv_size": [-1, 1]}, + "west": {"uv": [49, 81], "uv_size": [-1, 1]}, + "up": {"uv": [48, 82], "uv_size": [1, -1]}, + "down": {"uv": [48, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-4.5, 30.7478, -347], + "size": [9, 0, 16], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-4.497, 30.7508, -347], + "size": [9, 0, 16], + "pivot": [0, 35.2508, -343], + "rotation": [0, 0, -90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-4.5, 30.7478, -347], + "size": [9, 0, 16], + "pivot": [0, 35.2508, -343], + "rotation": [0, 0, 180], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-4.497, 30.7508, -347], + "size": [9, 0, 16], + "pivot": [0, 35.2508, -343], + "rotation": [0, 0, 90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-4.997, 30.7568, -339.5], + "size": [9, 0, 9], + "pivot": [-0.5, 35.2568, -335.5], + "rotation": [90, 0, 90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-4.5, 35.2538, -351.5], + "size": [9, 0, 9], + "pivot": [0, 35.2538, -347], + "rotation": [-90, 0, 90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + } + ] + }, + { + "name": "laser3", + "parent": "laser", + "pivot": [-43.25, 35.2504, -331], + "cubes": [ + { + "origin": [-45.25, 33.2488, -347], + "size": [4, 4, 16], + "uv": { + "north": {"uv": [49, 81], "uv_size": [-1, 1]}, + "east": {"uv": [49, 81], "uv_size": [-1, 1]}, + "south": {"uv": [49, 81], "uv_size": [-1, 1]}, + "west": {"uv": [49, 81], "uv_size": [-1, 1]}, + "up": {"uv": [48, 82], "uv_size": [1, -1]}, + "down": {"uv": [48, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-47.75, 30.7478, -347], + "size": [9, 0, 16], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-47.747, 30.7508, -347], + "size": [9, 0, 16], + "pivot": [-43.25, 35.2508, -343], + "rotation": [0, 0, -90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-47.75, 30.7478, -347], + "size": [9, 0, 16], + "pivot": [-43.25, 35.2508, -343], + "rotation": [0, 0, 180], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-47.747, 30.7508, -347], + "size": [9, 0, 16], + "pivot": [-43.25, 35.2508, -343], + "rotation": [0, 0, 90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-48.247, 30.7568, -339.5], + "size": [9, 0, 9], + "pivot": [-43.75, 35.2568, -335.5], + "rotation": [90, 0, 90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + }, + { + "origin": [-47.75, 35.2538, -351.5], + "size": [9, 0, 9], + "pivot": [-43.25, 35.2538, -347], + "rotation": [-90, 0, 90], + "uv": { + "up": {"uv": [47, 82], "uv_size": [1, -1]} + } + } + ] + }, + { + "name": "YouPaoGuan", + "parent": "PaoGuan", + "pivot": [36, 28.8, -219], + "cubes": [ + { + "origin": [34.56, 26.64, -144], + "size": [17.28, 17.28, 72], + "uv": { + "north": {"uv": [64, 75], "uv_size": [2, 2]}, + "east": {"uv": [61, 24], "uv_size": [10, 2]}, + "west": {"uv": [61, 34], "uv_size": [10, 2]}, + "up": {"uv": [26, 36], "uv_size": [2, 10]}, + "down": {"uv": [26, 56], "uv_size": [2, -10]} + } + }, + { + "origin": [34.56, 43.92, -115.2], + "size": [17.28, 4.32, 43.2], + "uv": { + "east": {"uv": [11, 73], "uv_size": [6, 1]}, + "west": {"uv": [23, 73], "uv_size": [6, 1]}, + "up": {"uv": [42, 67], "uv_size": [2, 6]} + } + }, + { + "origin": [34.56, 49.0043, -140.16512], + "size": [17.28, 4.32, 12.96], + "pivot": [0, 84.82437, -106.7853], + "rotation": [20, 0, 0], + "uv": { + "east": {"uv": [55, 26], "uv_size": [2, 1]}, + "west": {"uv": [1, 79], "uv_size": [2, 1]}, + "up": {"uv": [71, 75], "uv_size": [2, 2]} + } + }, + { + "origin": [33.12, 28.08, -122.4], + "size": [1.44, 14.4, 14.4], + "uv": { + "north": {"uv": [6, 54], "uv_size": [1, 2]}, + "east": {"uv": [75, 72], "uv_size": [2, 2]}, + "up": {"uv": [11, 62], "uv_size": [1, 2]}, + "down": {"uv": [79, 5], "uv_size": [1, -2]} + } + }, + { + "origin": [33.12, 28.08, -108], + "size": [1.44, 18, 36], + "uv": { + "north": {"uv": [4, 79], "uv_size": [1, 2]}, + "east": {"uv": [70, 18], "uv_size": [5, 2]}, + "up": {"uv": [59, 74], "uv_size": [1, 5]}, + "down": {"uv": [60, 79], "uv_size": [1, -5]} + } + }, + { + "origin": [51.84, 28.08, -122.4], + "size": [1.44, 14.4, 14.4], + "uv": { + "north": {"uv": [9, 79], "uv_size": [1, 2]}, + "west": {"uv": [73, 75], "uv_size": [2, 2]}, + "up": {"uv": [10, 79], "uv_size": [1, 2]}, + "down": {"uv": [11, 81], "uv_size": [1, -2]} + } + }, + { + "origin": [51.84, 28.08, -108], + "size": [1.44, 18, 36], + "uv": { + "north": {"uv": [12, 79], "uv_size": [1, 2]}, + "west": {"uv": [70, 20], "uv_size": [5, 2]}, + "up": {"uv": [3, 75], "uv_size": [1, 5]}, + "down": {"uv": [6, 80], "uv_size": [1, -5]} + } + }, + { + "origin": [39.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "uv": { + "north": {"uv": [13, 79], "uv_size": [1, 2]}, + "up": {"uv": [40, 50], "uv_size": [1, 3]}, + "down": {"uv": [62, 69], "uv_size": [1, -3]} + } + }, + { + "origin": [39.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [43.2, 35.28, -154.8], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [16, 80], "uv_size": [1, 2]}, + "up": {"uv": [69, 78], "uv_size": [1, 3]}, + "down": {"uv": [72, 81], "uv_size": [1, -3]} + } + }, + { + "origin": [39.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [43.2, 35.28, -154.8], + "rotation": [0, 0, 90], + "uv": { + "north": {"uv": [80, 20], "uv_size": [1, 2]}, + "up": {"uv": [73, 78], "uv_size": [1, 3]}, + "down": {"uv": [74, 81], "uv_size": [1, -3]} + } + }, + { + "origin": [39.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [43.2, 35.28, -154.8], + "rotation": [0, 0, 135], + "uv": { + "north": {"uv": [22, 80], "uv_size": [1, 2]}, + "up": {"uv": [78, 77], "uv_size": [1, 3]}, + "down": {"uv": [79, 3], "uv_size": [1, -3]} + } + }, + { + "origin": [45, 33.408, -331.2], + "size": [0.72, 3.744, 64.8], + "uv": { + "east": {"uv": [70, 38], "uv_size": [9, 1]}, + "west": {"uv": [70, 39], "uv_size": [9, 1]} + } + }, + { + "origin": [40.68, 32.688, -331.2], + "size": [5.04, 0.72, 64.8], + "uv": { + "north": {"uv": [80, 22], "uv_size": [1, 1]}, + "east": {"uv": [70, 40], "uv_size": [9, 1]}, + "west": {"uv": [70, 41], "uv_size": [9, 1]}, + "up": {"uv": [9, 70], "uv_size": [1, 9]}, + "down": {"uv": [40, 79], "uv_size": [1, -9]} + } + }, + { + "origin": [40.68, 37.152, -331.2], + "size": [5.04, 0.72, 64.8], + "uv": { + "east": {"uv": [70, 69], "uv_size": [9, 1]}, + "west": {"uv": [70, 70], "uv_size": [9, 1]}, + "up": {"uv": [47, 70], "uv_size": [1, 9]}, + "down": {"uv": [48, 79], "uv_size": [1, -9]} + } + }, + { + "origin": [40.68, 37.152, -332.352], + "size": [5.04, 0.72, 1.152], + "uv": { + "north": {"uv": [23, 80], "uv_size": [1, 1]}, + "east": {"uv": [24, 80], "uv_size": [1, 1]}, + "west": {"uv": [80, 24], "uv_size": [1, 1]}, + "up": {"uv": [25, 80], "uv_size": [1, 1]}, + "down": {"uv": [26, 81], "uv_size": [1, -1]} + } + }, + { + "origin": [40.68, 33.408, -331.2], + "size": [0.72, 3.744, 64.8], + "uv": { + "east": {"uv": [70, 42], "uv_size": [9, 1]}, + "west": {"uv": [70, 45], "uv_size": [9, 1]} + } + }, + { + "origin": [40.68, 92.69445, -336.93528], + "size": [0.72, 4.464, 1.116], + "pivot": [0, 84.56191, -106.74655], + "rotation": [15, 0, 0], + "uv": { + "north": {"uv": [80, 26], "uv_size": [1, 1]}, + "east": {"uv": [27, 80], "uv_size": [1, 1]}, + "west": {"uv": [80, 27], "uv_size": [1, 1]} + } + }, + { + "origin": [45, 92.69445, -336.93528], + "size": [0.72, 4.464, 1.116], + "pivot": [4.32, 84.56191, -106.74655], + "rotation": [15, 0, 0], + "uv": { + "north": {"uv": [81, 42], "uv_size": [1, 1]}, + "east": {"uv": [43, 81], "uv_size": [1, 1]}, + "west": {"uv": [81, 43], "uv_size": [1, 1]} + } + }, + { + "origin": [60.73606, 75.54807, -230.4], + "size": [9.504, 9.504, 64.8], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [28, 80], "uv_size": [1, 1]}, + "east": {"uv": [70, 46], "uv_size": [9, 1]}, + "west": {"uv": [70, 47], "uv_size": [9, 1]}, + "up": {"uv": [41, 70], "uv_size": [1, 9]}, + "down": {"uv": [44, 79], "uv_size": [1, -9]} + } + }, + { + "origin": [64.69606, 75.54807, -252], + "size": [1.584, 9.504, 21.6], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [80, 28], "uv_size": [1, 1]}, + "east": {"uv": [76, 23], "uv_size": [3, 1]}, + "west": {"uv": [77, 30], "uv_size": [3, 1]}, + "up": {"uv": [20, 77], "uv_size": [1, 3]}, + "down": {"uv": [21, 80], "uv_size": [1, -3]} + } + }, + { + "origin": [60.73606, 79.50807, -252], + "size": [9.504, 1.584, 21.6], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [29, 80], "uv_size": [1, 1]}, + "east": {"uv": [77, 31], "uv_size": [3, 1]}, + "west": {"uv": [77, 32], "uv_size": [3, 1]}, + "up": {"uv": [77, 33], "uv_size": [1, 3]}, + "down": {"uv": [50, 80], "uv_size": [1, -3]} + } + }, + { + "origin": [64.69606, 73.38807, -230.4], + "size": [1.584, 13.824, 64.8], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [14, 79], "uv_size": [1, 2]}, + "east": {"uv": [63, 30], "uv_size": [9, 2]}, + "west": {"uv": [63, 32], "uv_size": [9, 2]}, + "up": {"uv": [45, 70], "uv_size": [1, 9]}, + "down": {"uv": [46, 79], "uv_size": [1, -9]} + } + }, + { + "origin": [58.57606, 79.50807, -230.4], + "size": [13.824, 1.584, 64.8], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [79, 23], "uv_size": [2, 1]}, + "east": {"uv": [70, 48], "uv_size": [9, 1]}, + "west": {"uv": [70, 68], "uv_size": [9, 1]}, + "up": {"uv": [45, 59], "uv_size": [2, 9]}, + "down": {"uv": [38, 71], "uv_size": [2, -9]} + } + }, + { + "origin": [61.68646, 76.49847, -266.4], + "size": [7.6032, 7.6032, 36], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [80, 29], "uv_size": [1, 1]}, + "east": {"uv": [18, 75], "uv_size": [5, 1]}, + "west": {"uv": [75, 18], "uv_size": [5, 1]}, + "up": {"uv": [7, 75], "uv_size": [1, 5]}, + "down": {"uv": [75, 24], "uv_size": [1, -5]} + } + }, + { + "origin": [41.76, 53.13721, -137.33917], + "size": [2.88, 0.72, 7.2], + "pivot": [0, 84.6941, -106.80407], + "rotation": [20, 0, 0], + "uv": { + "north": {"uv": [24, 81], "uv_size": [1, 1]}, + "east": {"uv": [81, 24], "uv_size": [1, 1]}, + "south": {"uv": [25, 81], "uv_size": [1, 1]}, + "west": {"uv": [81, 25], "uv_size": [1, 1]}, + "up": {"uv": [26, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [41.4, 33.48, -267.12], + "size": [3.6, 3.6, 0], + "uv": { + "north": {"uv": [81, 26], "uv_size": [1, 1]} + } + } + ] + }, + { + "name": "ZuoPaoGuan", + "parent": "PaoGuan", + "pivot": [-36, 28.8, -219], + "cubes": [ + { + "origin": [-51.84, 26.64, -144], + "size": [17.28, 17.28, 72], + "uv": { + "north": {"uv": [66, 75], "uv_size": [-2, 2]}, + "east": {"uv": [71, 34], "uv_size": [-10, 2]}, + "west": {"uv": [71, 24], "uv_size": [-10, 2]}, + "up": {"uv": [28, 36], "uv_size": [-2, 10]}, + "down": {"uv": [28, 56], "uv_size": [-2, -10]} + } + }, + { + "origin": [-51.84, 43.92, -115.2], + "size": [17.28, 4.32, 43.2], + "uv": { + "east": {"uv": [29, 73], "uv_size": [-6, 1]}, + "west": {"uv": [17, 73], "uv_size": [-6, 1]}, + "up": {"uv": [44, 67], "uv_size": [-2, 6]} + } + }, + { + "origin": [-51.84, 49.0043, -140.16512], + "size": [17.28, 4.32, 12.96], + "pivot": [0, 84.82437, -106.7853], + "rotation": [20, 0, 0], + "uv": { + "east": {"uv": [3, 79], "uv_size": [-2, 1]}, + "west": {"uv": [57, 26], "uv_size": [-2, 1]}, + "up": {"uv": [73, 75], "uv_size": [-2, 2]} + } + }, + { + "origin": [-34.56, 28.08, -122.4], + "size": [1.44, 14.4, 14.4], + "uv": { + "north": {"uv": [7, 54], "uv_size": [-1, 2]}, + "west": {"uv": [77, 72], "uv_size": [-2, 2]}, + "up": {"uv": [12, 62], "uv_size": [-1, 2]}, + "down": {"uv": [80, 5], "uv_size": [-1, -2]} + } + }, + { + "origin": [-34.56, 28.08, -108], + "size": [1.44, 18, 36], + "uv": { + "north": {"uv": [5, 79], "uv_size": [-1, 2]}, + "west": {"uv": [75, 18], "uv_size": [-5, 2]}, + "up": {"uv": [60, 74], "uv_size": [-1, 5]}, + "down": {"uv": [61, 79], "uv_size": [-1, -5]} + } + }, + { + "origin": [-53.28, 28.08, -122.4], + "size": [1.44, 14.4, 14.4], + "uv": { + "north": {"uv": [10, 79], "uv_size": [-1, 2]}, + "east": {"uv": [75, 75], "uv_size": [-2, 2]}, + "up": {"uv": [11, 79], "uv_size": [-1, 2]}, + "down": {"uv": [12, 81], "uv_size": [-1, -2]} + } + }, + { + "origin": [-53.28, 28.08, -108], + "size": [1.44, 18, 36], + "uv": { + "north": {"uv": [13, 79], "uv_size": [-1, 2]}, + "east": {"uv": [75, 20], "uv_size": [-5, 2]}, + "up": {"uv": [4, 75], "uv_size": [-1, 5]}, + "down": {"uv": [7, 80], "uv_size": [-1, -5]} + } + }, + { + "origin": [-46.8, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "uv": { + "north": {"uv": [14, 79], "uv_size": [-1, 2]}, + "up": {"uv": [41, 50], "uv_size": [-1, 3]}, + "down": {"uv": [63, 69], "uv_size": [-1, -3]} + } + }, + { + "origin": [-46.8, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [-43.2, 35.28, -154.8], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [17, 80], "uv_size": [-1, 2]}, + "up": {"uv": [70, 78], "uv_size": [-1, 3]}, + "down": {"uv": [73, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [-46.8, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [-43.2, 35.28, -154.8], + "rotation": [0, 0, -90], + "uv": { + "north": {"uv": [81, 20], "uv_size": [-1, 2]}, + "up": {"uv": [74, 78], "uv_size": [-1, 3]}, + "down": {"uv": [75, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [-46.8, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [-43.2, 35.28, -154.8], + "rotation": [0, 0, -135], + "uv": { + "north": {"uv": [23, 80], "uv_size": [-1, 2]}, + "up": {"uv": [79, 77], "uv_size": [-1, 3]}, + "down": {"uv": [80, 3], "uv_size": [-1, -3]} + } + }, + { + "origin": [-45.72, 33.408, -331.2], + "size": [0.72, 3.744, 64.8], + "uv": { + "east": {"uv": [79, 39], "uv_size": [-9, 1]}, + "west": {"uv": [79, 38], "uv_size": [-9, 1]} + } + }, + { + "origin": [-45.72, 32.688, -331.2], + "size": [5.04, 0.72, 64.8], + "uv": { + "north": {"uv": [81, 22], "uv_size": [-1, 1]}, + "east": {"uv": [79, 41], "uv_size": [-9, 1]}, + "west": {"uv": [79, 40], "uv_size": [-9, 1]}, + "up": {"uv": [10, 70], "uv_size": [-1, 9]}, + "down": {"uv": [41, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-45.72, 37.152, -331.2], + "size": [5.04, 0.72, 64.8], + "uv": { + "east": {"uv": [79, 70], "uv_size": [-9, 1]}, + "west": {"uv": [79, 69], "uv_size": [-9, 1]}, + "up": {"uv": [48, 70], "uv_size": [-1, 9]}, + "down": {"uv": [49, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-45.72, 37.152, -332.352], + "size": [5.04, 0.72, 1.152], + "uv": { + "north": {"uv": [24, 80], "uv_size": [-1, 1]}, + "east": {"uv": [81, 24], "uv_size": [-1, 1]}, + "west": {"uv": [25, 80], "uv_size": [-1, 1]}, + "up": {"uv": [26, 80], "uv_size": [-1, 1]}, + "down": {"uv": [27, 81], "uv_size": [-1, -1]} + } + }, + { + "origin": [-41.4, 33.408, -331.2], + "size": [0.72, 3.744, 64.8], + "uv": { + "east": {"uv": [79, 45], "uv_size": [-9, 1]}, + "west": {"uv": [79, 42], "uv_size": [-9, 1]} + } + }, + { + "origin": [-41.4, 92.69445, -336.93528], + "size": [0.72, 4.464, 1.116], + "pivot": [0, 84.56191, -106.74655], + "rotation": [15, 0, 0], + "uv": { + "north": {"uv": [81, 26], "uv_size": [-1, 1]}, + "east": {"uv": [81, 27], "uv_size": [-1, 1]}, + "west": {"uv": [28, 80], "uv_size": [-1, 1]} + } + }, + { + "origin": [-45.72, 92.69445, -336.93528], + "size": [0.72, 4.464, 1.116], + "pivot": [-4.32, 84.56191, -106.74655], + "rotation": [15, 0, 0], + "uv": { + "north": {"uv": [82, 42], "uv_size": [-1, 1]}, + "east": {"uv": [82, 43], "uv_size": [-1, 1]}, + "west": {"uv": [44, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-70.24006, 75.54807, -230.4], + "size": [9.504, 9.504, 64.8], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [29, 80], "uv_size": [-1, 1]}, + "east": {"uv": [79, 47], "uv_size": [-9, 1]}, + "west": {"uv": [79, 46], "uv_size": [-9, 1]}, + "up": {"uv": [42, 70], "uv_size": [-1, 9]}, + "down": {"uv": [45, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-66.28006, 75.54807, -252], + "size": [1.584, 9.504, 21.6], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 28], "uv_size": [-1, 1]}, + "east": {"uv": [80, 30], "uv_size": [-3, 1]}, + "west": {"uv": [79, 23], "uv_size": [-3, 1]}, + "up": {"uv": [21, 77], "uv_size": [-1, 3]}, + "down": {"uv": [22, 80], "uv_size": [-1, -3]} + } + }, + { + "origin": [-70.24006, 79.50807, -252], + "size": [9.504, 1.584, 21.6], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [30, 80], "uv_size": [-1, 1]}, + "east": {"uv": [80, 32], "uv_size": [-3, 1]}, + "west": {"uv": [80, 31], "uv_size": [-3, 1]}, + "up": {"uv": [78, 33], "uv_size": [-1, 3]}, + "down": {"uv": [51, 80], "uv_size": [-1, -3]} + } + }, + { + "origin": [-66.28006, 73.38807, -230.4], + "size": [1.584, 13.824, 64.8], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [15, 79], "uv_size": [-1, 2]}, + "east": {"uv": [72, 32], "uv_size": [-9, 2]}, + "west": {"uv": [72, 30], "uv_size": [-9, 2]}, + "up": {"uv": [46, 70], "uv_size": [-1, 9]}, + "down": {"uv": [47, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-72.40006, 79.50807, -230.4], + "size": [13.824, 1.584, 64.8], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 23], "uv_size": [-2, 1]}, + "east": {"uv": [79, 68], "uv_size": [-9, 1]}, + "west": {"uv": [79, 48], "uv_size": [-9, 1]}, + "up": {"uv": [47, 59], "uv_size": [-2, 9]}, + "down": {"uv": [40, 71], "uv_size": [-2, -9]} + } + }, + { + "origin": [-69.28966, 76.49847, -266.4], + "size": [7.6032, 7.6032, 36], + "pivot": [0, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 29], "uv_size": [-1, 1]}, + "east": {"uv": [80, 18], "uv_size": [-5, 1]}, + "west": {"uv": [23, 75], "uv_size": [-5, 1]}, + "up": {"uv": [8, 75], "uv_size": [-1, 5]}, + "down": {"uv": [76, 24], "uv_size": [-1, -5]} + } + }, + { + "origin": [-44.64, 53.13721, -137.33917], + "size": [2.88, 0.72, 7.2], + "pivot": [0, 84.6941, -106.80407], + "rotation": [20, 0, 0], + "uv": { + "north": {"uv": [25, 81], "uv_size": [-1, 1]}, + "east": {"uv": [82, 25], "uv_size": [-1, 1]}, + "south": {"uv": [26, 81], "uv_size": [-1, 1]}, + "west": {"uv": [82, 24], "uv_size": [-1, 1]}, + "up": {"uv": [27, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-45, 33.48, -267.12], + "size": [3.6, 3.6, 0], + "uv": { + "north": {"uv": [82, 26], "uv_size": [-1, 1]} + } + } + ] + }, + { + "name": "ZhongPaoGuan", + "parent": "PaoGuan", + "pivot": [0, 28.8, -219], + "cubes": [ + { + "origin": [-8.64, 26.64, -144], + "size": [17.28, 17.28, 72], + "uv": { + "north": {"uv": [66, 75], "uv_size": [-2, 2]}, + "east": {"uv": [71, 34], "uv_size": [-10, 2]}, + "west": {"uv": [71, 24], "uv_size": [-10, 2]}, + "up": {"uv": [28, 36], "uv_size": [-2, 10]}, + "down": {"uv": [28, 56], "uv_size": [-2, -10]} + } + }, + { + "origin": [-8.64, 43.92, -115.2], + "size": [17.28, 4.32, 43.2], + "uv": { + "east": {"uv": [29, 73], "uv_size": [-6, 1]}, + "west": {"uv": [17, 73], "uv_size": [-6, 1]}, + "up": {"uv": [44, 67], "uv_size": [-2, 6]} + } + }, + { + "origin": [-8.64, 49.0043, -140.16512], + "size": [17.28, 4.32, 12.96], + "pivot": [43.2, 84.82437, -106.7853], + "rotation": [20, 0, 0], + "uv": { + "east": {"uv": [3, 79], "uv_size": [-2, 1]}, + "west": {"uv": [57, 26], "uv_size": [-2, 1]}, + "up": {"uv": [73, 75], "uv_size": [-2, 2]} + } + }, + { + "origin": [8.64, 28.08, -122.4], + "size": [1.44, 14.4, 14.4], + "uv": { + "north": {"uv": [7, 54], "uv_size": [-1, 2]}, + "west": {"uv": [77, 72], "uv_size": [-2, 2]}, + "up": {"uv": [12, 62], "uv_size": [-1, 2]}, + "down": {"uv": [80, 5], "uv_size": [-1, -2]} + } + }, + { + "origin": [8.64, 28.08, -108], + "size": [1.44, 18, 36], + "uv": { + "north": {"uv": [5, 79], "uv_size": [-1, 2]}, + "west": {"uv": [75, 18], "uv_size": [-5, 2]}, + "up": {"uv": [60, 74], "uv_size": [-1, 5]}, + "down": {"uv": [61, 79], "uv_size": [-1, -5]} + } + }, + { + "origin": [-10.08, 28.08, -122.4], + "size": [1.44, 14.4, 14.4], + "uv": { + "north": {"uv": [10, 79], "uv_size": [-1, 2]}, + "east": {"uv": [75, 75], "uv_size": [-2, 2]}, + "up": {"uv": [11, 79], "uv_size": [-1, 2]}, + "down": {"uv": [12, 81], "uv_size": [-1, -2]} + } + }, + { + "origin": [-10.08, 28.08, -108], + "size": [1.44, 18, 36], + "uv": { + "north": {"uv": [13, 79], "uv_size": [-1, 2]}, + "east": {"uv": [75, 20], "uv_size": [-5, 2]}, + "up": {"uv": [4, 75], "uv_size": [-1, 5]}, + "down": {"uv": [7, 80], "uv_size": [-1, -5]} + } + }, + { + "origin": [-3.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "uv": { + "north": {"uv": [14, 79], "uv_size": [-1, 2]}, + "up": {"uv": [41, 50], "uv_size": [-1, 3]}, + "down": {"uv": [63, 69], "uv_size": [-1, -3]} + } + }, + { + "origin": [-3.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [0, 35.28, -154.8], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [17, 80], "uv_size": [-1, 2]}, + "up": {"uv": [70, 78], "uv_size": [-1, 3]}, + "down": {"uv": [73, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [-3.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [0, 35.28, -154.8], + "rotation": [0, 0, -90], + "uv": { + "north": {"uv": [81, 20], "uv_size": [-1, 2]}, + "up": {"uv": [74, 78], "uv_size": [-1, 3]}, + "down": {"uv": [75, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [-3.6, 26.64, -165.6], + "size": [7.2, 17.28, 21.6], + "pivot": [0, 35.28, -154.8], + "rotation": [0, 0, -135], + "uv": { + "north": {"uv": [23, 80], "uv_size": [-1, 2]}, + "up": {"uv": [79, 77], "uv_size": [-1, 3]}, + "down": {"uv": [80, 3], "uv_size": [-1, -3]} + } + }, + { + "origin": [-2.52, 33.408, -331.2], + "size": [0.72, 3.744, 64.8], + "uv": { + "east": {"uv": [79, 39], "uv_size": [-9, 1]}, + "west": {"uv": [79, 38], "uv_size": [-9, 1]} + } + }, + { + "origin": [-2.52, 32.688, -331.2], + "size": [5.04, 0.72, 64.8], + "uv": { + "north": {"uv": [81, 22], "uv_size": [-1, 1]}, + "east": {"uv": [79, 41], "uv_size": [-9, 1]}, + "west": {"uv": [79, 40], "uv_size": [-9, 1]}, + "up": {"uv": [10, 70], "uv_size": [-1, 9]}, + "down": {"uv": [41, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-2.52, 37.152, -331.2], + "size": [5.04, 0.72, 64.8], + "uv": { + "east": {"uv": [79, 70], "uv_size": [-9, 1]}, + "west": {"uv": [79, 69], "uv_size": [-9, 1]}, + "up": {"uv": [48, 70], "uv_size": [-1, 9]}, + "down": {"uv": [49, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-2.52, 37.152, -332.352], + "size": [5.04, 0.72, 1.152], + "uv": { + "north": {"uv": [24, 80], "uv_size": [-1, 1]}, + "east": {"uv": [81, 24], "uv_size": [-1, 1]}, + "west": {"uv": [25, 80], "uv_size": [-1, 1]}, + "up": {"uv": [26, 80], "uv_size": [-1, 1]}, + "down": {"uv": [27, 81], "uv_size": [-1, -1]} + } + }, + { + "origin": [1.8, 33.408, -331.2], + "size": [0.72, 3.744, 64.8], + "uv": { + "east": {"uv": [79, 45], "uv_size": [-9, 1]}, + "west": {"uv": [79, 42], "uv_size": [-9, 1]} + } + }, + { + "origin": [1.8, 92.69445, -336.93528], + "size": [0.72, 4.464, 1.116], + "pivot": [43.2, 84.56191, -106.74655], + "rotation": [15, 0, 0], + "uv": { + "north": {"uv": [81, 26], "uv_size": [-1, 1]}, + "east": {"uv": [81, 27], "uv_size": [-1, 1]}, + "west": {"uv": [28, 80], "uv_size": [-1, 1]} + } + }, + { + "origin": [-2.52, 92.69445, -336.93528], + "size": [0.72, 4.464, 1.116], + "pivot": [38.88, 84.56191, -106.74655], + "rotation": [15, 0, 0], + "uv": { + "north": {"uv": [82, 42], "uv_size": [-1, 1]}, + "east": {"uv": [82, 43], "uv_size": [-1, 1]}, + "west": {"uv": [44, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-27.04006, 75.54807, -230.4], + "size": [9.504, 9.504, 64.8], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [29, 80], "uv_size": [-1, 1]}, + "east": {"uv": [79, 47], "uv_size": [-9, 1]}, + "west": {"uv": [79, 46], "uv_size": [-9, 1]}, + "up": {"uv": [42, 70], "uv_size": [-1, 9]}, + "down": {"uv": [45, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-23.08006, 75.54807, -252], + "size": [1.584, 9.504, 21.6], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 28], "uv_size": [-1, 1]}, + "east": {"uv": [80, 30], "uv_size": [-3, 1]}, + "west": {"uv": [79, 23], "uv_size": [-3, 1]}, + "up": {"uv": [21, 77], "uv_size": [-1, 3]}, + "down": {"uv": [22, 80], "uv_size": [-1, -3]} + } + }, + { + "origin": [-27.04006, 79.50807, -252], + "size": [9.504, 1.584, 21.6], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [30, 80], "uv_size": [-1, 1]}, + "east": {"uv": [80, 32], "uv_size": [-3, 1]}, + "west": {"uv": [80, 31], "uv_size": [-3, 1]}, + "up": {"uv": [78, 33], "uv_size": [-1, 3]}, + "down": {"uv": [51, 80], "uv_size": [-1, -3]} + } + }, + { + "origin": [-23.08006, 73.38807, -230.4], + "size": [1.584, 13.824, 64.8], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [15, 79], "uv_size": [-1, 2]}, + "east": {"uv": [72, 32], "uv_size": [-9, 2]}, + "west": {"uv": [72, 30], "uv_size": [-9, 2]}, + "up": {"uv": [46, 70], "uv_size": [-1, 9]}, + "down": {"uv": [47, 79], "uv_size": [-1, -9]} + } + }, + { + "origin": [-29.20006, 79.50807, -230.4], + "size": [13.824, 1.584, 64.8], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 23], "uv_size": [-2, 1]}, + "east": {"uv": [79, 68], "uv_size": [-9, 1]}, + "west": {"uv": [79, 48], "uv_size": [-9, 1]}, + "up": {"uv": [47, 59], "uv_size": [-2, 9]}, + "down": {"uv": [40, 71], "uv_size": [-2, -9]} + } + }, + { + "origin": [-26.08966, 76.49847, -266.4], + "size": [7.6032, 7.6032, 36], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 29], "uv_size": [-1, 1]}, + "east": {"uv": [80, 18], "uv_size": [-5, 1]}, + "west": {"uv": [23, 75], "uv_size": [-5, 1]}, + "up": {"uv": [8, 75], "uv_size": [-1, 5]}, + "down": {"uv": [76, 24], "uv_size": [-1, -5]} + } + }, + { + "origin": [-1.44, 53.13721, -137.33917], + "size": [2.88, 0.72, 7.2], + "pivot": [43.2, 84.6941, -106.80407], + "rotation": [20, 0, 0], + "uv": { + "north": {"uv": [25, 81], "uv_size": [-1, 1]}, + "east": {"uv": [82, 25], "uv_size": [-1, 1]}, + "south": {"uv": [26, 81], "uv_size": [-1, 1]}, + "west": {"uv": [82, 24], "uv_size": [-1, 1]}, + "up": {"uv": [27, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-1.8, 33.48, -267.12], + "size": [3.6, 3.6, 0], + "uv": { + "north": {"uv": [82, 26], "uv_size": [-1, 1]} + } + } + ] + }, + { + "name": "body", + "parent": "main", + "pivot": [0, 0, -24] + }, + { + "name": "QianPaoDun", + "parent": "body", + "pivot": [36, 6, -48], + "cubes": [ + { + "origin": [-55.44, 58.70485, -52.47459], + "size": [23.04, 16.2, 26.64], + "pivot": [0, 91.68345, -73.71493], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [74, 43], "uv_size": [3, 2]}, + "east": {"uv": [72, 6], "uv_size": [4, 2]}, + "down": {"uv": [67, 72], "uv_size": [3, -4]} + } + }, + { + "origin": [-11.52, 58.70485, -52.47459], + "size": [23.04, 16.2, 26.64], + "pivot": [41.04, 91.68345, -73.71493], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [53, 74], "uv_size": [3, 2]}, + "east": {"uv": [72, 32], "uv_size": [4, 2]}, + "down": {"uv": [50, 73], "uv_size": [3, -4]} + } + }, + { + "origin": [-29.52, 38.58232, -49.0418], + "size": [15.12, 36, 0], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [6, 70], "uv_size": [2, 5]} + } + }, + { + "origin": [-73.44, 49.97958, -151.69716], + "size": [18, 20.34, 61.2], + "pivot": [-1.44, 91.62607, -73.86587], + "rotation": [45, 0, 0], + "uv": { + "east": {"uv": [40, 56], "uv_size": [8, 3]}, + "west": {"uv": [57, 2], "uv_size": [8, 3]}, + "up": {"uv": [48, 56], "uv_size": [3, 8]} + } + }, + { + "origin": [32.4, 58.70485, -52.47459], + "size": [23.04, 16.2, 26.64], + "pivot": [0, 91.68345, -73.71493], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [0, 75], "uv_size": [3, 2]}, + "west": {"uv": [72, 59], "uv_size": [4, 2]}, + "down": {"uv": [69, 63], "uv_size": [3, -4]} + } + }, + { + "origin": [55.44, 49.97958, -151.69716], + "size": [18, 20.34, 61.2], + "pivot": [1.44, 91.62607, -73.86587], + "rotation": [45, 0, 0], + "uv": { + "east": {"uv": [57, 40], "uv_size": [8, 3]}, + "west": {"uv": [34, 59], "uv_size": [8, 3]}, + "up": {"uv": [42, 59], "uv_size": [3, 8]} + } + }, + { + "origin": [-32.4, 7.15504, -96.52496], + "size": [2.88, 31.68, 30.24], + "uv": { + "north": {"uv": [37, 75], "uv_size": [1, 4]}, + "east": {"uv": [11, 64], "uv_size": [4, 4]}, + "west": {"uv": [15, 64], "uv_size": [4, 4]} + } + }, + { + "origin": [-32.4, 54.88015, -131.85659], + "size": [2.88, 26.64, 36.72], + "pivot": [0, 102.82665, -62.66529], + "rotation": [45, 0, 0], + "uv": { + "north": {"uv": [25, 60], "uv_size": [1, 4]}, + "east": {"uv": [60, 59], "uv_size": [5, 4]}, + "west": {"uv": [61, 20], "uv_size": [5, 4]}, + "up": {"uv": [47, 59], "uv_size": [1, 5]} + } + }, + { + "origin": [29.52, 7.15504, -96.52496], + "size": [2.88, 31.68, 30.24], + "uv": { + "north": {"uv": [19, 77], "uv_size": [1, 4]}, + "east": {"uv": [27, 66], "uv_size": [4, 4]}, + "west": {"uv": [31, 66], "uv_size": [4, 4]} + } + }, + { + "origin": [29.52, 54.88015, -131.85659], + "size": [2.88, 26.64, 36.72], + "pivot": [0, 102.82665, -62.66529], + "rotation": [45, 0, 0], + "uv": { + "north": {"uv": [18, 77], "uv_size": [1, 4]}, + "east": {"uv": [63, 9], "uv_size": [5, 4]}, + "west": {"uv": [63, 26], "uv_size": [5, 4]}, + "up": {"uv": [36, 75], "uv_size": [1, 5]} + } + }, + { + "origin": [-14.4, 54.88015, -131.85659], + "size": [2.88, 26.64, 36.72], + "pivot": [18, 102.82665, -62.66529], + "rotation": [45, 0, 0], + "uv": { + "north": {"uv": [75, 76], "uv_size": [1, 4]}, + "east": {"uv": [61, 36], "uv_size": [5, 4]}, + "west": {"uv": [61, 53], "uv_size": [5, 4]}, + "up": {"uv": [34, 75], "uv_size": [1, 5]} + } + }, + { + "origin": [-14.4, 7.15504, -96.52496], + "size": [2.88, 31.68, 30.24], + "uv": { + "north": {"uv": [58, 76], "uv_size": [1, 4]}, + "east": {"uv": [47, 64], "uv_size": [4, 4]}, + "west": {"uv": [65, 59], "uv_size": [4, 4]} + } + }, + { + "origin": [11.52, 54.88015, -131.85659], + "size": [2.88, 26.64, 36.72], + "pivot": [43.92, 102.82665, -62.66529], + "rotation": [45, 0, 0], + "uv": { + "north": {"uv": [0, 77], "uv_size": [1, 4]}, + "east": {"uv": [6, 62], "uv_size": [5, 4]}, + "west": {"uv": [28, 62], "uv_size": [5, 4]}, + "up": {"uv": [35, 75], "uv_size": [1, 5]} + } + }, + { + "origin": [11.52, 7.15504, -96.52496], + "size": [2.88, 31.68, 30.24], + "uv": { + "north": {"uv": [76, 76], "uv_size": [1, 4]}, + "east": {"uv": [63, 65], "uv_size": [4, 4]}, + "west": {"uv": [6, 66], "uv_size": [4, 4]} + } + }, + { + "origin": [-32.4, 13.58207, -52.77207], + "size": [20.88, 10.44, 10.08], + "pivot": [0, 91.77337, -74.07857], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [0, 72], "uv_size": [3, 1]}, + "east": {"uv": [56, 31], "uv_size": [1, 1]}, + "west": {"uv": [44, 67], "uv_size": [1, 1]} + } + }, + { + "origin": [-32.4, 14.4, -106.92], + "size": [20.88, 14.4, 14.4], + "uv": { + "east": {"uv": [50, 75], "uv_size": [2, 2]}, + "west": {"uv": [62, 75], "uv_size": [2, 2]}, + "up": {"uv": [23, 64], "uv_size": [3, 2]} + } + }, + { + "origin": [22.16669, 13.58758, -106.92], + "size": [10.08, 10.08, 43.2], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [50, 68], "uv_size": [1, 1]}, + "east": {"uv": [73, 1], "uv_size": [6, 1]}, + "up": {"uv": [67, 72], "uv_size": [1, 6]} + } + }, + { + "origin": [36.93108, 28.35197, -106.92], + "size": [10.08, 10.08, 43.2], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [18, 73], "uv_size": [1, 1]}, + "east": {"uv": [73, 2], "uv_size": [6, 1]}, + "up": {"uv": [68, 72], "uv_size": [1, 6]} + } + }, + { + "origin": [-47.01108, 28.35197, -106.92], + "size": [10.08, 10.08, 43.2], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [81, 41], "uv_size": [1, 1]}, + "west": {"uv": [11, 75], "uv_size": [6, 1]}, + "up": {"uv": [42, 73], "uv_size": [1, 6]} + } + }, + { + "origin": [11.52, 13.58207, -52.77207], + "size": [20.88, 10.44, 10.08], + "pivot": [0, 91.77337, -74.07857], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [78, 60], "uv_size": [3, 1]}, + "east": {"uv": [81, 40], "uv_size": [1, 1]}, + "west": {"uv": [41, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [11.52, 14.4, -106.92], + "size": [20.88, 14.4, 14.4], + "uv": { + "east": {"uv": [1, 77], "uv_size": [2, 2]}, + "west": {"uv": [11, 77], "uv_size": [2, 2]}, + "up": {"uv": [56, 74], "uv_size": [3, 2]} + } + }, + { + "origin": [-32.24669, 13.58758, -106.92], + "size": [10.08, 10.08, 43.2], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [40, 81], "uv_size": [1, 1]}, + "west": {"uv": [71, 74], "uv_size": [6, 1]}, + "up": {"uv": [30, 73], "uv_size": [1, 6]} + } + }, + { + "origin": [6.89318, -1.68593, -106.92], + "size": [10.08, 10.08, 43.2], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 0, 45], + "uv": { + "north": {"uv": [29, 73], "uv_size": [1, 1]}, + "east": {"uv": [73, 3], "uv_size": [6, 1]}, + "up": {"uv": [69, 72], "uv_size": [1, 6]} + } + }, + { + "origin": [-16.97318, -1.68593, -106.92], + "size": [10.08, 10.08, 43.2], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 0, -45], + "uv": { + "north": {"uv": [42, 81], "uv_size": [1, 1]}, + "west": {"uv": [75, 13], "uv_size": [6, 1]}, + "up": {"uv": [43, 73], "uv_size": [1, 6]} + } + }, + { + "origin": [-29.52, 21.10148, -93.89202], + "size": [15.12, 15.48, 0], + "uv": { + "north": {"uv": [75, 34], "uv_size": [2, 2]} + } + }, + { + "origin": [14.4, 38.58232, -49.0418], + "size": [15.12, 36, 0], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [33, 70], "uv_size": [2, 5]} + } + }, + { + "origin": [14.4, 21.10148, -93.89202], + "size": [15.12, 15.48, 0], + "uv": { + "north": {"uv": [13, 77], "uv_size": [2, 2]} + } + }, + { + "origin": [-54.72, 20.52, -70.2], + "size": [109.44, 21.6, 0], + "uv": { + "north": {"uv": [40, 53], "uv_size": [15, 3]}, + "east": {"uv": [0, 0], "uv_size": [0, 3]}, + "south": {"uv": [55, 17], "uv_size": [15, 3]}, + "west": {"uv": [0, 0], "uv_size": [0, 3]}, + "up": {"uv": [0, 0], "uv_size": [15, 0]}, + "down": {"uv": [0, 0], "uv_size": [15, 0]} + } + } + ] + }, + { + "name": "DingJia", + "parent": "body", + "pivot": [36, 24, -48], + "cubes": [ + { + "origin": [-14.4, 61.2, -70.56], + "size": [28.8, 3.6, 128.88], + "uv": { + "east": {"uv": [61, 57], "uv_size": [18, 1]}, + "west": {"uv": [61, 58], "uv_size": [18, 1]}, + "up": {"uv": [22, 36], "uv_size": [4, 18]} + } + }, + { + "origin": [-29.52, 61.2, 58.32], + "size": [59.04, 3.6, 2.88], + "uv": { + "north": {"uv": [72, 61], "uv_size": [8, 1]}, + "up": {"uv": [72, 62], "uv_size": [8, 1]} + } + }, + { + "origin": [-29.52, 62.03012, -68.43618], + "size": [59.04, 0, 126.72], + "uv": { + "up": {"uv": [34, 14], "uv_size": [8, 18]} + } + }, + { + "origin": [-80.64, 61.2, -70.56], + "size": [51.12, 3.6, 132.12], + "uv": { + "west": {"uv": [57, 13], "uv_size": [18, 1]}, + "up": {"uv": [34, 32], "uv_size": [7, 18]} + } + }, + { + "origin": [29.52, 61.2, -70.56], + "size": [51.12, 3.6, 132.12], + "uv": { + "east": {"uv": [63, 63], "uv_size": [18, 1]}, + "up": {"uv": [0, 36], "uv_size": [7, 18]} + } + } + ] + }, + { + "name": "ZuoCe", + "parent": "body", + "pivot": [-24, 6, 12], + "cubes": [ + { + "origin": [-62.35595, 7.2, -153.95676], + "size": [34.92, 21.6, 31.68], + "pivot": [-0.02976, 91.72092, -73.77231], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [65, 40], "uv_size": [5, 3]}, + "east": {"uv": [67, 65], "uv_size": [4, 3]}, + "south": {"uv": [51, 66], "uv_size": [5, 3]}, + "west": {"uv": [68, 5], "uv_size": [4, 3]}, + "up": {"uv": [55, 59], "uv_size": [5, 4]}, + "down": {"uv": [20, 64], "uv_size": [5, -4]} + } + }, + { + "origin": [27.43595, 7.2, -153.95676], + "size": [34.92, 21.6, 31.68], + "pivot": [0.02976, 91.72092, -73.77231], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [66, 53], "uv_size": [5, 3]}, + "east": {"uv": [53, 69], "uv_size": [4, 3]}, + "south": {"uv": [56, 66], "uv_size": [5, 3]}, + "west": {"uv": [57, 69], "uv_size": [4, 3]}, + "up": {"uv": [33, 62], "uv_size": [5, 4]}, + "down": {"uv": [63, 9], "uv_size": [5, -4]} + } + }, + { + "origin": [-100.782, 7.2, -86.4], + "size": [201.564, 21.6, 129.6], + "uv": { + "north": {"uv": [42, 14], "uv_size": [28, 3]}, + "east": {"uv": [48, 45], "uv_size": [18, 3]}, + "west": {"uv": [48, 48], "uv_size": [18, 3]}, + "up": {"uv": [0, 0], "uv_size": [28, 18]}, + "down": {"uv": [0, 36], "uv_size": [28, -18]} + } + }, + { + "origin": [-87.91724, 20.16, -128.75547], + "size": [41.76, 44.64, 14.4], + "pivot": [0.2248, 91.72092, -74.02687], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [20, 54], "uv_size": [6, 6]}, + "east": {"uv": [20, 48], "uv_size": [2, 6]}, + "south": {"uv": [55, 20], "uv_size": [6, 6]}, + "west": {"uv": [3, 67], "uv_size": [2, 6]}, + "up": {"uv": [68, 8], "uv_size": [6, 2]}, + "down": {"uv": [68, 12], "uv_size": [6, -2]} + } + }, + { + "origin": [-100.8, 28.8, -50.4], + "size": [20.16, 36, 93.6], + "uv": { + "north": {"uv": [35, 66], "uv_size": [3, 5]}, + "east": {"uv": [42, 17], "uv_size": [13, 5]}, + "up": {"uv": [0, 54], "uv_size": [3, 13]} + } + }, + { + "origin": [46.15724, 20.16, -128.75547], + "size": [41.76, 44.64, 14.4], + "pivot": [-0.2248, 91.72092, -74.02687], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [55, 53], "uv_size": [6, 6]}, + "east": {"uv": [62, 69], "uv_size": [2, 6]}, + "south": {"uv": [6, 56], "uv_size": [6, 6]}, + "west": {"uv": [64, 69], "uv_size": [2, 6]}, + "up": {"uv": [70, 14], "uv_size": [6, 2]}, + "down": {"uv": [70, 18], "uv_size": [6, -2]} + } + }, + { + "origin": [80.64, 28.8, -50.4], + "size": [20.16, 36, 93.6], + "uv": { + "north": {"uv": [0, 67], "uv_size": [3, 5]}, + "west": {"uv": [42, 22], "uv_size": [13, 5]}, + "up": {"uv": [3, 54], "uv_size": [3, 13]} + } + }, + { + "origin": [-89.35489, 32.4, -129.99027], + "size": [19.44, 14.4, 1.44], + "pivot": [-0.08349, 91.72092, -73.77231], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [50, 73], "uv_size": [3, 2]}, + "west": {"uv": [59, 79], "uv_size": [1, 2]}, + "up": {"uv": [78, 12], "uv_size": [3, 1]}, + "down": {"uv": [78, 34], "uv_size": [3, -1]} + } + }, + { + "origin": [-102.96, 32.4, -50.4], + "size": [2.16, 14.4, 79.2], + "uv": { + "east": {"uv": [57, 43], "uv_size": [11, 2]}, + "south": {"uv": [60, 79], "uv_size": [1, 2]}, + "up": {"uv": [5, 67], "uv_size": [1, 11]}, + "down": {"uv": [66, 80], "uv_size": [1, -11]} + } + }, + { + "origin": [-102.24, 20.88, 21.96], + "size": [1.44, 11.52, 1.44], + "uv": { + "north": {"uv": [61, 79], "uv_size": [1, 2]}, + "east": {"uv": [79, 64], "uv_size": [1, 2]}, + "south": {"uv": [79, 66], "uv_size": [1, 2]}, + "up": {"uv": [62, 80], "uv_size": [1, 1]} + } + }, + { + "origin": [-102.24, 19.44, -66.96], + "size": [1.44, 1.44, 90.36], + "uv": { + "north": {"uv": [80, 62], "uv_size": [1, 1]}, + "east": {"uv": [66, 56], "uv_size": [13, 1]}, + "south": {"uv": [63, 80], "uv_size": [1, 1]}, + "up": {"uv": [10, 66], "uv_size": [1, 13]}, + "down": {"uv": [61, 79], "uv_size": [1, -13]} + } + }, + { + "origin": [-102.24, 11.52, -66.96], + "size": [1.44, 7.92, 1.44], + "uv": { + "north": {"uv": [64, 80], "uv_size": [1, 1]}, + "east": {"uv": [80, 64], "uv_size": [1, 1]}, + "south": {"uv": [65, 80], "uv_size": [1, 1]}, + "down": {"uv": [80, 66], "uv_size": [1, -1]} + } + } + ] + }, + { + "name": "YouCe", + "parent": "body", + "pivot": [36, 6, -48], + "cubes": [ + { + "origin": [11.25191, 7.2, -228.0047], + "size": [27.36, 57.6, 17.28], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -135, 0], + "uv": { + "north": {"uv": [12, 56], "uv_size": [4, 8]}, + "east": {"uv": [40, 62], "uv_size": [2, 8]}, + "up": {"uv": [11, 71], "uv_size": [4, 2]}, + "down": {"uv": [15, 73], "uv_size": [4, -2]} + } + }, + { + "origin": [-38.38711, 7.2, -227.85997], + "size": [27.36, 57.6, 17.28], + "pivot": [0.2248, 91.72092, -73.73741], + "rotation": [0, 135, 0], + "uv": { + "north": {"uv": [16, 56], "uv_size": [4, 8]}, + "up": {"uv": [19, 72], "uv_size": [4, 2]}, + "down": {"uv": [72, 32], "uv_size": [4, -2]} + } + }, + { + "origin": [100.8, 32.4, -50.4], + "size": [2.16, 14.4, 79.2], + "uv": { + "south": {"uv": [61, 79], "uv_size": [-1, 2]}, + "west": {"uv": [68, 43], "uv_size": [-11, 2]}, + "up": {"uv": [6, 67], "uv_size": [-1, 11]}, + "down": {"uv": [67, 80], "uv_size": [-1, -11]} + } + }, + { + "origin": [69.91489, 32.4, -129.99027], + "size": [19.44, 14.4, 1.44], + "pivot": [0.08349, 91.72092, -73.77231], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [53, 73], "uv_size": [-3, 2]}, + "east": {"uv": [60, 79], "uv_size": [-1, 2]}, + "up": {"uv": [81, 12], "uv_size": [-3, 1]}, + "down": {"uv": [81, 34], "uv_size": [-3, -1]} + } + }, + { + "origin": [100.8, 11.52, -66.96], + "size": [1.44, 7.92, 1.44], + "uv": { + "north": {"uv": [65, 80], "uv_size": [-1, 1]}, + "south": {"uv": [66, 80], "uv_size": [-1, 1]}, + "west": {"uv": [81, 64], "uv_size": [-1, 1]}, + "down": {"uv": [81, 66], "uv_size": [-1, -1]} + } + }, + { + "origin": [100.8, 19.44, -66.96], + "size": [1.44, 1.44, 90.36], + "uv": { + "north": {"uv": [81, 62], "uv_size": [-1, 1]}, + "south": {"uv": [64, 80], "uv_size": [-1, 1]}, + "west": {"uv": [79, 56], "uv_size": [-13, 1]}, + "up": {"uv": [11, 66], "uv_size": [-1, 13]}, + "down": {"uv": [62, 79], "uv_size": [-1, -13]} + } + }, + { + "origin": [100.8, 20.88, 21.96], + "size": [1.44, 11.52, 1.44], + "uv": { + "north": {"uv": [62, 79], "uv_size": [-1, 2]}, + "south": {"uv": [80, 66], "uv_size": [-1, 2]}, + "west": {"uv": [80, 64], "uv_size": [-1, 2]}, + "up": {"uv": [63, 80], "uv_size": [-1, 1]} + } + } + ] + }, + { + "name": "HouBu", + "parent": "body", + "pivot": [-6, 6, 72], + "cubes": [ + { + "origin": [-82.8, 7.2, 61.2], + "size": [165.6, 57.6, 46.8], + "uv": { + "east": {"uv": [41, 45], "uv_size": [7, 8]}, + "west": {"uv": [7, 48], "uv_size": [7, 8]}, + "up": {"uv": [34, 0], "uv_size": [23, 7]}, + "down": {"uv": [34, 14], "uv_size": [23, -7]} + } + }, + { + "origin": [-82.8, 7.2, 43.2], + "size": [165.6, 7.2, 18], + "uv": { + "west": {"uv": [20, 80], "uv_size": [2, 1]}, + "down": {"uv": [48, 53], "uv_size": [23, -2]} + } + }, + { + "origin": [-53.75466, 7.2, 107.96966], + "size": [107.535, 57.6, 29.05], + "uv": { + "south": {"uv": [7, 36], "uv_size": [15, 8]}, + "up": {"uv": [42, 27], "uv_size": [15, 4]}, + "down": {"uv": [7, 48], "uv_size": [15, -4]} + } + }, + { + "origin": [25.93263, 32.4, 137.07833], + "size": [28.8, 14.4, 2.16], + "uv": { + "north": {"uv": [23, 71], "uv_size": [4, 2]}, + "east": {"uv": [37, 79], "uv_size": [1, 2]}, + "south": {"uv": [71, 24], "uv_size": [4, 2]}, + "west": {"uv": [38, 79], "uv_size": [1, 2]}, + "up": {"uv": [51, 62], "uv_size": [4, 1]}, + "down": {"uv": [75, 26], "uv_size": [4, -1]} + } + }, + { + "origin": [70.30305, 7.2, -261.30507], + "size": [41.04, 57.6, 31.68], + "pivot": [0.06594, 91.72092, -74.06433], + "rotation": [0, -135, 0], + "uv": { + "north": {"uv": [14, 48], "uv_size": [6, 8]}, + "up": {"uv": [57, 5], "uv_size": [6, 4]}, + "down": {"uv": [57, 13], "uv_size": [6, -4]} + } + }, + { + "origin": [-111.34305, 7.2, -261.30507], + "size": [41.04, 57.6, 31.68], + "pivot": [-0.06594, 91.72092, -74.06433], + "rotation": [0, 135, 0], + "uv": { + "north": {"uv": [20, 48], "uv_size": [-6, 8]}, + "up": {"uv": [63, 5], "uv_size": [-6, 4]}, + "down": {"uv": [63, 13], "uv_size": [-6, -4]} + } + }, + { + "origin": [70.23711, 32.4, -263.28288], + "size": [41.76, 14.4, 2.16], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -135, 0], + "uv": { + "north": {"uv": [68, 26], "uv_size": [6, 2]}, + "east": {"uv": [31, 79], "uv_size": [1, 2]}, + "south": {"uv": [68, 28], "uv_size": [6, 2]}, + "west": {"uv": [32, 79], "uv_size": [1, 2]}, + "up": {"uv": [74, 8], "uv_size": [6, 1]}, + "down": {"uv": [74, 10], "uv_size": [6, -1]} + } + }, + { + "origin": [-54.73263, 32.4, 137.07833], + "size": [28.8, 14.4, 2.16], + "uv": { + "north": {"uv": [27, 71], "uv_size": [-4, 2]}, + "east": {"uv": [39, 79], "uv_size": [-1, 2]}, + "south": {"uv": [75, 24], "uv_size": [-4, 2]}, + "west": {"uv": [38, 79], "uv_size": [-1, 2]}, + "up": {"uv": [55, 62], "uv_size": [-4, 1]}, + "down": {"uv": [79, 26], "uv_size": [-4, -1]} + } + }, + { + "origin": [-111.99711, 32.4, -263.28288], + "size": [41.76, 14.4, 2.16], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 135, 0], + "uv": { + "north": {"uv": [74, 26], "uv_size": [-6, 2]}, + "east": {"uv": [33, 79], "uv_size": [-1, 2]}, + "south": {"uv": [74, 28], "uv_size": [-6, 2]}, + "west": {"uv": [32, 79], "uv_size": [-1, 2]}, + "up": {"uv": [80, 8], "uv_size": [-6, 1]}, + "down": {"uv": [80, 10], "uv_size": [-6, -1]} + } + } + ] + }, + { + "name": "LeftRadar", + "parent": "body", + "pivot": [0, 0, -24] + }, + { + "name": "DiZuoL", + "parent": "LeftRadar", + "pivot": [-42, 36.28903, 12.444], + "cubes": [ + { + "origin": [-54.14857, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "uv": { + "north": {"uv": [27, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 27], "uv_size": [1, 1]}, + "down": {"uv": [5, 81], "uv_size": [1, -3]} + } + }, + { + "origin": [-54.14857, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "pivot": [-50.4, 66.6, 11.18304], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [28, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 28], "uv_size": [1, 1]}, + "down": {"uv": [49, 81], "uv_size": [1, -3]} + } + }, + { + "origin": [-54.14857, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "pivot": [-50.4, 66.6, 11.18304], + "rotation": [0, -90, 0], + "uv": { + "north": {"uv": [29, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 29], "uv_size": [1, 1]}, + "down": {"uv": [67, 81], "uv_size": [1, -3]} + } + }, + { + "origin": [-54.14857, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "pivot": [-50.4, 66.6, 11.18304], + "rotation": [0, -135, 0], + "uv": { + "north": {"uv": [30, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 30], "uv_size": [1, 1]}, + "down": {"uv": [68, 81], "uv_size": [1, -3]} + } + } + ] + }, + { + "name": "DiZuoL2", + "parent": "LeftRadar", + "pivot": [-42, 58.8, 9.3192], + "cubes": [ + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "uv": { + "north": {"uv": [66, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 66], "uv_size": [1, 1]}, + "up": {"uv": [38, 75], "uv_size": [1, 4]}, + "down": {"uv": [52, 79], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [0, -22.5, 0], + "uv": { + "north": {"uv": [31, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 31], "uv_size": [1, 1]}, + "up": {"uv": [15, 76], "uv_size": [1, 4]}, + "down": {"uv": [16, 80], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [0, -67.5, 0], + "uv": { + "north": {"uv": [33, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 33], "uv_size": [1, 1]}, + "up": {"uv": [26, 76], "uv_size": [1, 4]}, + "down": {"uv": [27, 80], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [32, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 32], "uv_size": [1, 1]}, + "up": {"uv": [22, 76], "uv_size": [1, 4]}, + "down": {"uv": [25, 80], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [-180, -67.5, 180], + "uv": { + "north": {"uv": [35, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 35], "uv_size": [1, 1]}, + "up": {"uv": [76, 30], "uv_size": [1, 4]}, + "down": {"uv": [53, 80], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [0, -90, 0], + "uv": { + "north": {"uv": [34, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 34], "uv_size": [1, 1]}, + "up": {"uv": [28, 76], "uv_size": [1, 4]}, + "down": {"uv": [29, 80], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [-180, -22.5, 180], + "uv": { + "north": {"uv": [37, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 37], "uv_size": [1, 1]}, + "up": {"uv": [56, 76], "uv_size": [1, 4]}, + "down": {"uv": [57, 80], "uv_size": [1, -4]} + } + }, + { + "origin": [-53.10686, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [-50.4, 70.56, 11.18304], + "rotation": [-180, -45, 180], + "uv": { + "north": {"uv": [36, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 36], "uv_size": [1, 1]}, + "up": {"uv": [54, 76], "uv_size": [1, 4]}, + "down": {"uv": [55, 80], "uv_size": [1, -4]} + } + } + ] + }, + { + "name": "ZhongL", + "parent": "LeftRadar", + "pivot": [-42, 62.4, 9.3192], + "cubes": [ + { + "origin": [22.07581, 72.72, 29.09574], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -45, 0], + "uv": { + "south": {"uv": [80, 67], "uv_size": [1, 1]}, + "up": {"uv": [80, 69], "uv_size": [1, 1]}, + "down": {"uv": [80, 71], "uv_size": [1, -1]} + } + }, + { + "origin": [-16.44667, 72.72, 31.18462], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -22.5, 0], + "uv": { + "south": {"uv": [71, 80], "uv_size": [1, 1]}, + "up": {"uv": [80, 72], "uv_size": [1, 1]}, + "down": {"uv": [80, 74], "uv_size": [1, -1]} + } + }, + { + "origin": [-52.83617, 72.72, 18.37257], + "size": [4.87234, 4.32, 5.06093], + "uv": { + "south": {"uv": [80, 74], "uv_size": [1, 1]}, + "up": {"uv": [75, 80], "uv_size": [1, 1]}, + "down": {"uv": [76, 81], "uv_size": [1, -1]} + } + }, + { + "origin": [76.68039, 72.72, -145.43534], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, -22.5, 180], + "uv": { + "north": {"uv": [80, 76], "uv_size": [1, 1]}, + "up": {"uv": [77, 80], "uv_size": [1, 1]}, + "down": {"uv": [80, 78], "uv_size": [1, -1]} + } + }, + { + "origin": [93.35217, 72.72, -110.64459], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, -45, 180], + "uv": { + "north": {"uv": [78, 80], "uv_size": [1, 1]}, + "up": {"uv": [80, 78], "uv_size": [1, 1]}, + "down": {"uv": [80, 80], "uv_size": [1, -1]} + } + }, + { + "origin": [95.44105, 72.72, -72.12211], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, -67.5, 180], + "uv": { + "north": {"uv": [80, 80], "uv_size": [1, 1]}, + "east": {"uv": [0, 81], "uv_size": [1, 1]}, + "up": {"uv": [81, 0], "uv_size": [1, 1]}, + "down": {"uv": [81, 2], "uv_size": [1, -1]} + } + }, + { + "origin": [56.86656, 72.72, 12.42396], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -67.5, 0], + "uv": { + "east": {"uv": [2, 81], "uv_size": [1, 1]}, + "south": {"uv": [81, 2], "uv_size": [1, 1]}, + "up": {"uv": [3, 81], "uv_size": [1, 1]}, + "down": {"uv": [81, 4], "uv_size": [1, -1]} + } + } + ] + }, + { + "name": "DingL", + "parent": "LeftRadar", + "pivot": [0, 7.2, -24], + "cubes": [ + { + "origin": [56.59587, 77.04, 6.0228], + "size": [5.41372, 4.32, 12.82326], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -67.5, 0], + "uv": { + "east": {"uv": [79, 68], "uv_size": [2, 1]}, + "south": {"uv": [4, 81], "uv_size": [1, 1]}, + "up": {"uv": [79, 69], "uv_size": [1, 2]}, + "down": {"uv": [70, 81], "uv_size": [1, -2]} + } + }, + { + "origin": [-53.10686, 77.04, 11.97141], + "size": [5.41372, 4.32, 12.82326], + "uv": { + "south": {"uv": [5, 81], "uv_size": [1, 1]}, + "up": {"uv": [79, 77], "uv_size": [1, 2]}, + "down": {"uv": [79, 81], "uv_size": [1, -2]} + } + }, + { + "origin": [-50.35281, 77.04, 11.4236], + "size": [5.41372, 4.32, 12.82326], + "pivot": [-47.64596, 79.2, 17.83523], + "rotation": [0, 22.5, 0], + "uv": { + "south": {"uv": [39, 81], "uv_size": [1, 1]}, + "up": {"uv": [80, 8], "uv_size": [1, 2]}, + "down": {"uv": [80, 12], "uv_size": [1, -2]} + } + }, + { + "origin": [-48.01805, 77.04, 9.86356], + "size": [5.41372, 4.32, 12.82326], + "pivot": [-45.31119, 79.2, 16.27519], + "rotation": [0, 45, 0], + "uv": { + "south": {"uv": [81, 39], "uv_size": [1, 1]}, + "up": {"uv": [80, 14], "uv_size": [1, 2]}, + "down": {"uv": [15, 82], "uv_size": [1, -2]} + } + }, + { + "origin": [-58.19567, 77.04, 9.86356], + "size": [5.41372, 4.32, 12.82326], + "pivot": [-55.48881, 79.2, 16.27519], + "rotation": [0, -45, 0], + "uv": { + "south": {"uv": [38, 81], "uv_size": [1, 1]}, + "up": {"uv": [6, 80], "uv_size": [1, 2]}, + "down": {"uv": [80, 8], "uv_size": [1, -2]} + } + }, + { + "origin": [-55.8609, 77.04, 11.4236], + "size": [5.41372, 4.32, 12.82326], + "pivot": [-53.15404, 79.2, 17.83523], + "rotation": [0, -22.5, 0], + "uv": { + "south": {"uv": [81, 38], "uv_size": [1, 1]}, + "up": {"uv": [7, 80], "uv_size": [1, 2]}, + "down": {"uv": [8, 82], "uv_size": [1, -2]} + } + }, + { + "origin": [95.17036, 77.04, -73.48327], + "size": [5.41372, 4.32, 12.82326], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, -67.5, 180], + "uv": { + "north": {"uv": [81, 6], "uv_size": [1, 1]}, + "east": {"uv": [79, 71], "uv_size": [2, 1]}, + "up": {"uv": [80, 0], "uv_size": [1, 2]}, + "down": {"uv": [1, 82], "uv_size": [1, -2]} + } + } + ] + }, + { + "name": "QianL", + "parent": "LeftRadar", + "pivot": [-42, 53.7, 9.3192], + "cubes": [ + { + "origin": [-53.82686, 11.73878, -70.25654], + "size": [6.85372, 2.16, 6.48], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "north": {"uv": [81, 7], "uv_size": [1, 1]}, + "east": {"uv": [81, 8], "uv_size": [1, 1]}, + "south": {"uv": [9, 81], "uv_size": [1, 1]}, + "west": {"uv": [81, 9], "uv_size": [1, 1]}, + "up": {"uv": [10, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [-60.30686, 4.53878, -72.41654], + "size": [19.81372, 7.2, 10.08], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [23, 81], "uv_size": [1, 1]}, + "south": {"uv": [78, 34], "uv_size": [3, 1]}, + "west": {"uv": [81, 23], "uv_size": [1, 1]}, + "up": {"uv": [78, 35], "uv_size": [3, 1]}, + "down": {"uv": [78, 60], "uv_size": [3, -1]} + } + }, + { + "origin": [-56.70686, 11.73878, -72.41654], + "size": [1.09372, 1.44, 10.08], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [81, 11], "uv_size": [1, 1]}, + "south": {"uv": [12, 81], "uv_size": [1, 1]}, + "west": {"uv": [81, 12], "uv_size": [1, 1]}, + "up": {"uv": [13, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [-45.18686, 11.73878, -72.41654], + "size": [1.09372, 1.44, 10.08], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [81, 13], "uv_size": [1, 1]}, + "south": {"uv": [14, 81], "uv_size": [1, 1]}, + "west": {"uv": [81, 14], "uv_size": [1, 1]}, + "up": {"uv": [81, 15], "uv_size": [1, 1]} + } + }, + { + "origin": [-58.86686, 11.73878, -72.41654], + "size": [1.09372, 1.44, 6.48], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [81, 20], "uv_size": [1, 1]}, + "south": {"uv": [21, 81], "uv_size": [1, 1]}, + "west": {"uv": [81, 21], "uv_size": [1, 1]}, + "up": {"uv": [81, 22], "uv_size": [1, 1]} + } + }, + { + "origin": [-43.02686, 11.73878, -72.41654], + "size": [1.09372, 1.44, 6.48], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [17, 81], "uv_size": [1, 1]}, + "south": {"uv": [18, 81], "uv_size": [1, 1]}, + "west": {"uv": [19, 81], "uv_size": [1, 1]}, + "up": {"uv": [20, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [80.91832, 79.2, -29.89377], + "size": [6.13372, 2.88, 12.82326], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, -90, 0], + "uv": { + "north": {"uv": [81, 10], "uv_size": [1, 1]}, + "east": {"uv": [79, 75], "uv_size": [2, 1]}, + "south": {"uv": [11, 81], "uv_size": [1, 1]}, + "west": {"uv": [2, 80], "uv_size": [2, 1]}, + "up": {"uv": [80, 2], "uv_size": [1, 2]} + } + } + ] + }, + { + "name": "RightRadar", + "parent": "body", + "pivot": [0, 0, -24] + }, + { + "name": "DiZuoL3", + "parent": "RightRadar", + "pivot": [42, 36.28903, 12.444], + "cubes": [ + { + "origin": [46.65143, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "uv": { + "north": {"uv": [28, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 27], "uv_size": [-1, 1]}, + "down": {"uv": [6, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [46.65143, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "pivot": [50.4, 66.6, 11.18304], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [29, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 28], "uv_size": [-1, 1]}, + "down": {"uv": [50, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [46.65143, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "pivot": [50.4, 66.6, 11.18304], + "rotation": [0, 90, 0], + "uv": { + "north": {"uv": [30, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 29], "uv_size": [-1, 1]}, + "down": {"uv": [68, 81], "uv_size": [-1, -3]} + } + }, + { + "origin": [46.65143, 64.8, 2.10862], + "size": [7.49714, 3.6, 18.14884], + "pivot": [50.4, 66.6, 11.18304], + "rotation": [0, 135, 0], + "uv": { + "north": {"uv": [31, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 30], "uv_size": [-1, 1]}, + "down": {"uv": [69, 81], "uv_size": [-1, -3]} + } + } + ] + }, + { + "name": "DiZuoL4", + "parent": "RightRadar", + "pivot": [42, 58.8, 9.3192], + "cubes": [ + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "uv": { + "north": {"uv": [67, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 66], "uv_size": [-1, 1]}, + "up": {"uv": [39, 75], "uv_size": [-1, 4]}, + "down": {"uv": [53, 79], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [0, 22.5, 0], + "uv": { + "north": {"uv": [32, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 31], "uv_size": [-1, 1]}, + "up": {"uv": [16, 76], "uv_size": [-1, 4]}, + "down": {"uv": [17, 80], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [0, 67.5, 0], + "uv": { + "north": {"uv": [34, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 33], "uv_size": [-1, 1]}, + "up": {"uv": [27, 76], "uv_size": [-1, 4]}, + "down": {"uv": [28, 80], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [33, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 32], "uv_size": [-1, 1]}, + "up": {"uv": [23, 76], "uv_size": [-1, 4]}, + "down": {"uv": [26, 80], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [-180, 67.5, -180], + "uv": { + "north": {"uv": [36, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 35], "uv_size": [-1, 1]}, + "up": {"uv": [77, 30], "uv_size": [-1, 4]}, + "down": {"uv": [54, 80], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [0, 90, 0], + "uv": { + "north": {"uv": [35, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 34], "uv_size": [-1, 1]}, + "up": {"uv": [29, 76], "uv_size": [-1, 4]}, + "down": {"uv": [30, 80], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [-180, 22.5, -180], + "uv": { + "north": {"uv": [38, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 37], "uv_size": [-1, 1]}, + "up": {"uv": [57, 76], "uv_size": [-1, 4]}, + "down": {"uv": [58, 80], "uv_size": [-1, -4]} + } + }, + { + "origin": [47.69314, 68.4, -2.42859], + "size": [5.41372, 4.32, 27.22326], + "pivot": [50.4, 70.56, 11.18304], + "rotation": [-180, 45, -180], + "uv": { + "north": {"uv": [37, 81], "uv_size": [-1, 1]}, + "south": {"uv": [82, 36], "uv_size": [-1, 1]}, + "up": {"uv": [55, 76], "uv_size": [-1, 4]}, + "down": {"uv": [56, 80], "uv_size": [-1, -4]} + } + } + ] + }, + { + "name": "ZhongL2", + "parent": "RightRadar", + "pivot": [42, 62.4, 9.3192], + "cubes": [ + { + "origin": [-26.94815, 72.72, 29.09574], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 45, 0], + "uv": { + "south": {"uv": [81, 67], "uv_size": [-1, 1]}, + "up": {"uv": [81, 69], "uv_size": [-1, 1]}, + "down": {"uv": [81, 71], "uv_size": [-1, -1]} + } + }, + { + "origin": [11.57432, 72.72, 31.18462], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 22.5, 0], + "uv": { + "south": {"uv": [72, 80], "uv_size": [-1, 1]}, + "up": {"uv": [81, 72], "uv_size": [-1, 1]}, + "down": {"uv": [81, 74], "uv_size": [-1, -1]} + } + }, + { + "origin": [47.96383, 72.72, 18.37257], + "size": [4.87234, 4.32, 5.06093], + "uv": { + "south": {"uv": [81, 74], "uv_size": [-1, 1]}, + "up": {"uv": [76, 80], "uv_size": [-1, 1]}, + "down": {"uv": [77, 81], "uv_size": [-1, -1]} + } + }, + { + "origin": [-81.55274, 72.72, -145.43534], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, 22.5, -180], + "uv": { + "north": {"uv": [81, 76], "uv_size": [-1, 1]}, + "up": {"uv": [78, 80], "uv_size": [-1, 1]}, + "down": {"uv": [81, 78], "uv_size": [-1, -1]} + } + }, + { + "origin": [-98.22452, 72.72, -110.64459], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, 45, -180], + "uv": { + "north": {"uv": [79, 80], "uv_size": [-1, 1]}, + "up": {"uv": [81, 78], "uv_size": [-1, 1]}, + "down": {"uv": [81, 80], "uv_size": [-1, -1]} + } + }, + { + "origin": [-100.31339, 72.72, -72.12211], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, 67.5, -180], + "uv": { + "north": {"uv": [81, 80], "uv_size": [-1, 1]}, + "west": {"uv": [1, 81], "uv_size": [-1, 1]}, + "up": {"uv": [82, 0], "uv_size": [-1, 1]}, + "down": {"uv": [82, 2], "uv_size": [-1, -1]} + } + }, + { + "origin": [-61.7389, 72.72, 12.42396], + "size": [4.87234, 4.32, 5.06093], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 67.5, 0], + "uv": { + "south": {"uv": [82, 2], "uv_size": [-1, 1]}, + "west": {"uv": [3, 81], "uv_size": [-1, 1]}, + "up": {"uv": [4, 81], "uv_size": [-1, 1]}, + "down": {"uv": [82, 4], "uv_size": [-1, -1]} + } + } + ] + }, + { + "name": "DingL2", + "parent": "RightRadar", + "pivot": [0, 7.2, -24], + "cubes": [ + { + "origin": [-62.00959, 77.04, 6.0228], + "size": [5.41372, 4.32, 12.82326], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 67.5, 0], + "uv": { + "south": {"uv": [5, 81], "uv_size": [-1, 1]}, + "west": {"uv": [81, 68], "uv_size": [-2, 1]}, + "up": {"uv": [80, 69], "uv_size": [-1, 2]}, + "down": {"uv": [71, 81], "uv_size": [-1, -2]} + } + }, + { + "origin": [47.69314, 77.04, 11.97141], + "size": [5.41372, 4.32, 12.82326], + "uv": { + "south": {"uv": [6, 81], "uv_size": [-1, 1]}, + "up": {"uv": [80, 77], "uv_size": [-1, 2]}, + "down": {"uv": [80, 81], "uv_size": [-1, -2]} + } + }, + { + "origin": [44.9391, 77.04, 11.4236], + "size": [5.41372, 4.32, 12.82326], + "pivot": [47.64596, 79.2, 17.83523], + "rotation": [0, -22.5, 0], + "uv": { + "south": {"uv": [40, 81], "uv_size": [-1, 1]}, + "up": {"uv": [81, 8], "uv_size": [-1, 2]}, + "down": {"uv": [81, 12], "uv_size": [-1, -2]} + } + }, + { + "origin": [42.60433, 77.04, 9.86356], + "size": [5.41372, 4.32, 12.82326], + "pivot": [45.31119, 79.2, 16.27519], + "rotation": [0, -45, 0], + "uv": { + "south": {"uv": [82, 39], "uv_size": [-1, 1]}, + "up": {"uv": [81, 14], "uv_size": [-1, 2]}, + "down": {"uv": [16, 82], "uv_size": [-1, -2]} + } + }, + { + "origin": [52.78195, 77.04, 9.86356], + "size": [5.41372, 4.32, 12.82326], + "pivot": [55.48881, 79.2, 16.27519], + "rotation": [0, 45, 0], + "uv": { + "south": {"uv": [39, 81], "uv_size": [-1, 1]}, + "up": {"uv": [7, 80], "uv_size": [-1, 2]}, + "down": {"uv": [81, 8], "uv_size": [-1, -2]} + } + }, + { + "origin": [50.44719, 77.04, 11.4236], + "size": [5.41372, 4.32, 12.82326], + "pivot": [53.15404, 79.2, 17.83523], + "rotation": [0, 22.5, 0], + "uv": { + "south": {"uv": [82, 38], "uv_size": [-1, 1]}, + "up": {"uv": [8, 80], "uv_size": [-1, 2]}, + "down": {"uv": [9, 82], "uv_size": [-1, -2]} + } + }, + { + "origin": [-100.58408, 77.04, -73.48327], + "size": [5.41372, 4.32, 12.82326], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-180, 67.5, -180], + "uv": { + "north": {"uv": [82, 6], "uv_size": [-1, 1]}, + "west": {"uv": [81, 71], "uv_size": [-2, 1]}, + "up": {"uv": [81, 0], "uv_size": [-1, 2]}, + "down": {"uv": [2, 82], "uv_size": [-1, -2]} + } + } + ] + }, + { + "name": "QianL2", + "parent": "RightRadar", + "pivot": [42, 53.7, 9.3192], + "cubes": [ + { + "origin": [46.97314, 11.73878, -70.25654], + "size": [6.85372, 2.16, 6.48], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "north": {"uv": [82, 7], "uv_size": [-1, 1]}, + "east": {"uv": [82, 9], "uv_size": [-1, 1]}, + "south": {"uv": [10, 81], "uv_size": [-1, 1]}, + "west": {"uv": [82, 8], "uv_size": [-1, 1]}, + "up": {"uv": [11, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [40.49314, 4.53878, -72.41654], + "size": [19.81372, 7.2, 10.08], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [82, 23], "uv_size": [-1, 1]}, + "south": {"uv": [81, 34], "uv_size": [-3, 1]}, + "west": {"uv": [24, 81], "uv_size": [-1, 1]}, + "up": {"uv": [81, 35], "uv_size": [-3, 1]}, + "down": {"uv": [81, 60], "uv_size": [-3, -1]} + } + }, + { + "origin": [55.61314, 11.73878, -72.41654], + "size": [1.09372, 1.44, 10.08], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [82, 12], "uv_size": [-1, 1]}, + "south": {"uv": [13, 81], "uv_size": [-1, 1]}, + "west": {"uv": [82, 11], "uv_size": [-1, 1]}, + "up": {"uv": [14, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [44.09314, 11.73878, -72.41654], + "size": [1.09372, 1.44, 10.08], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [82, 14], "uv_size": [-1, 1]}, + "south": {"uv": [15, 81], "uv_size": [-1, 1]}, + "west": {"uv": [82, 13], "uv_size": [-1, 1]}, + "up": {"uv": [82, 15], "uv_size": [-1, 1]} + } + }, + { + "origin": [57.77314, 11.73878, -72.41654], + "size": [1.09372, 1.44, 6.48], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [82, 21], "uv_size": [-1, 1]}, + "south": {"uv": [22, 81], "uv_size": [-1, 1]}, + "west": {"uv": [82, 20], "uv_size": [-1, 1]}, + "up": {"uv": [82, 22], "uv_size": [-1, 1]} + } + }, + { + "origin": [41.93314, 11.73878, -72.41654], + "size": [1.09372, 1.44, 6.48], + "pivot": [0, 91.72092, -73.88214], + "rotation": [75, 0, 0], + "uv": { + "east": {"uv": [20, 81], "uv_size": [-1, 1]}, + "south": {"uv": [19, 81], "uv_size": [-1, 1]}, + "west": {"uv": [18, 81], "uv_size": [-1, 1]}, + "up": {"uv": [21, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-87.05204, 79.2, -29.89377], + "size": [6.13372, 2.88, 12.82326], + "pivot": [0, 91.72092, -73.88214], + "rotation": [0, 90, 0], + "uv": { + "north": {"uv": [82, 10], "uv_size": [-1, 1]}, + "east": {"uv": [4, 80], "uv_size": [-2, 1]}, + "south": {"uv": [12, 81], "uv_size": [-1, 1]}, + "west": {"uv": [81, 75], "uv_size": [-2, 1]}, + "up": {"uv": [81, 2], "uv_size": [-1, 2]} + } + } + ] + }, + { + "name": "Tube", + "parent": "body", + "pivot": [0, 96, -24], + "cubes": [ + { + "origin": [67.54347, 61.2, -7.05867], + "size": [7.2, 7.2, 7.2], + "pivot": [0, 91.72092, -106.28214], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [80, 40], "uv_size": [1, 1]}, + "east": {"uv": [41, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 41], "uv_size": [1, 1]}, + "west": {"uv": [42, 80], "uv_size": [1, 1]}, + "up": {"uv": [44, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [67.54347, 61.2, 3.74133], + "size": [7.2, 7.2, 7.2], + "pivot": [0, 91.72092, -95.48214], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [80, 40], "uv_size": [1, 1]}, + "east": {"uv": [41, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 41], "uv_size": [1, 1]}, + "west": {"uv": [42, 80], "uv_size": [1, 1]}, + "up": {"uv": [44, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [-26.00114, 61.2, 34.73106], + "size": [7.2, 7.2, 7.2], + "pivot": [-22.40114, 64.8, 38.33106], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [80, 40], "uv_size": [1, 1]}, + "east": {"uv": [41, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 41], "uv_size": [1, 1]}, + "west": {"uv": [42, 80], "uv_size": [1, 1]}, + "up": {"uv": [44, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [-26.00114, 61.2, 45.53106], + "size": [7.2, 7.2, 7.2], + "pivot": [-22.40114, 64.8, 49.13106], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [80, 40], "uv_size": [1, 1]}, + "east": {"uv": [41, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 41], "uv_size": [1, 1]}, + "west": {"uv": [42, 80], "uv_size": [1, 1]}, + "up": {"uv": [44, 81], "uv_size": [1, 1]} + } + }, + { + "origin": [18.80114, 61.2, 45.53106], + "size": [7.2, 7.2, 7.2], + "pivot": [22.40114, 64.8, 49.13106], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [81, 40], "uv_size": [-1, 1]}, + "east": {"uv": [43, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 41], "uv_size": [-1, 1]}, + "west": {"uv": [42, 80], "uv_size": [-1, 1]}, + "up": {"uv": [45, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [18.80114, 61.2, 34.73106], + "size": [7.2, 7.2, 7.2], + "pivot": [22.40114, 64.8, 38.33106], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [81, 40], "uv_size": [-1, 1]}, + "east": {"uv": [43, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 41], "uv_size": [-1, 1]}, + "west": {"uv": [42, 80], "uv_size": [-1, 1]}, + "up": {"uv": [45, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-74.74347, 61.2, 3.74133], + "size": [7.2, 7.2, 7.2], + "pivot": [0, 91.72092, -95.48214], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [81, 40], "uv_size": [-1, 1]}, + "east": {"uv": [43, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 41], "uv_size": [-1, 1]}, + "west": {"uv": [42, 80], "uv_size": [-1, 1]}, + "up": {"uv": [45, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [-74.74347, 61.2, -7.05867], + "size": [7.2, 7.2, 7.2], + "pivot": [0, 91.72092, -106.28214], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [81, 40], "uv_size": [-1, 1]}, + "east": {"uv": [43, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 41], "uv_size": [-1, 1]}, + "west": {"uv": [42, 80], "uv_size": [-1, 1]}, + "up": {"uv": [45, 81], "uv_size": [-1, 1]} + } + }, + { + "origin": [67.54347, 61.2, -17.85867], + "size": [7.2, 7.2, 7.2], + "pivot": [0, 91.72092, -117.08214], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [80, 40], "uv_size": [1, 1]}, + "east": {"uv": [41, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 41], "uv_size": [1, 1]}, + "west": {"uv": [42, 80], "uv_size": [1, 1]}, + "up": {"uv": [43, 80], "uv_size": [1, 1]} + } + }, + { + "origin": [-74.74347, 61.2, -17.85867], + "size": [7.2, 7.2, 7.2], + "pivot": [0, 91.72092, -117.08214], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [81, 40], "uv_size": [-1, 1]}, + "east": {"uv": [43, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 41], "uv_size": [-1, 1]}, + "west": {"uv": [42, 80], "uv_size": [-1, 1]}, + "up": {"uv": [44, 80], "uv_size": [-1, 1]} + } + } + ] + }, + { + "name": "bone2", + "parent": "Tube", + "pivot": [0, 76.4341, -61.56845], + "cubes": [ + { + "origin": [-64.8, 64.8, 35.64], + "size": [30.24, 1.44, 1.44], + "uv": { + "north": {"uv": [76, 16], "uv_size": [4, 1]}, + "east": {"uv": [80, 32], "uv_size": [1, 1]}, + "south": {"uv": [76, 17], "uv_size": [4, 1]}, + "west": {"uv": [33, 80], "uv_size": [1, 1]}, + "up": {"uv": [18, 76], "uv_size": [4, 1]} + } + }, + { + "origin": [-36, 64.8, 37.08], + "size": [1.44, 1.44, 25.2], + "uv": { + "east": {"uv": [77, 43], "uv_size": [3, 1]}, + "south": {"uv": [34, 80], "uv_size": [1, 1]}, + "west": {"uv": [77, 44], "uv_size": [3, 1]}, + "up": {"uv": [71, 77], "uv_size": [1, 3]} + } + }, + { + "origin": [-34.56, 64.8, 60.84], + "size": [23.76, 1.44, 1.44], + "uv": { + "north": {"uv": [72, 77], "uv_size": [3, 1]}, + "south": {"uv": [77, 72], "uv_size": [3, 1]}, + "up": {"uv": [77, 73], "uv_size": [3, 1]} + } + }, + { + "origin": [-10.8, 64.8, 37.08], + "size": [1.44, 1.44, 25.2], + "uv": { + "east": {"uv": [77, 74], "uv_size": [3, 1]}, + "south": {"uv": [35, 80], "uv_size": [1, 1]}, + "west": {"uv": [77, 76], "uv_size": [3, 1]}, + "up": {"uv": [77, 77], "uv_size": [1, 3]} + } + }, + { + "origin": [-10.8, 64.8, 35.64], + "size": [7.2, 1.44, 1.44], + "uv": { + "north": {"uv": [36, 80], "uv_size": [1, 1]}, + "east": {"uv": [80, 36], "uv_size": [1, 1]}, + "south": {"uv": [80, 37], "uv_size": [1, 1]}, + "west": {"uv": [80, 38], "uv_size": [1, 1]}, + "up": {"uv": [80, 39], "uv_size": [1, 1]} + } + }, + { + "origin": [-69.12, 64.8, 34.2], + "size": [4.32, 2.88, 4.32], + "uv": { + "north": {"uv": [80, 43], "uv_size": [1, 1]}, + "east": {"uv": [44, 80], "uv_size": [1, 1]}, + "south": {"uv": [80, 44], "uv_size": [1, 1]}, + "west": {"uv": [45, 80], "uv_size": [1, 1]}, + "up": {"uv": [46, 80], "uv_size": [1, 1]} + } + }, + { + "origin": [-67.68, 64.8, -23.4], + "size": [1.44, 2.88, 57.6], + "uv": { + "north": {"uv": [80, 49], "uv_size": [1, 1]}, + "east": {"uv": [71, 53], "uv_size": [8, 1]}, + "west": {"uv": [71, 54], "uv_size": [8, 1]}, + "up": {"uv": [32, 71], "uv_size": [1, 8]} + } + }, + { + "origin": [-66.24, 64.8, -23.4], + "size": [14.4, 2.88, 1.44], + "uv": { + "north": {"uv": [79, 56], "uv_size": [2, 1]}, + "south": {"uv": [79, 57], "uv_size": [2, 1]}, + "west": {"uv": [50, 80], "uv_size": [1, 1]}, + "up": {"uv": [79, 58], "uv_size": [2, 1]} + } + }, + { + "origin": [-53.28, 64.8, -59.4], + "size": [1.44, 2.88, 36], + "uv": { + "north": {"uv": [80, 50], "uv_size": [1, 1]}, + "east": {"uv": [75, 24], "uv_size": [5, 1]}, + "west": {"uv": [25, 75], "uv_size": [5, 1]}, + "up": {"uv": [33, 75], "uv_size": [1, 5]} + } + }, + { + "origin": [-51.84, 61.92, -59.4], + "size": [44.64, 5.76, 1.44], + "uv": { + "north": {"uv": [74, 11], "uv_size": [6, 1]}, + "east": {"uv": [51, 80], "uv_size": [1, 1]}, + "south": {"uv": [18, 74], "uv_size": [6, 1]}, + "west": {"uv": [53, 80], "uv_size": [1, 1]}, + "up": {"uv": [24, 74], "uv_size": [6, 1]} + } + }, + { + "origin": [-66.24, 64.8, 5.4], + "size": [40.32, 1.44, 1.44], + "uv": { + "north": {"uv": [74, 26], "uv_size": [6, 1]}, + "east": {"uv": [54, 80], "uv_size": [1, 1]}, + "south": {"uv": [74, 27], "uv_size": [6, 1]}, + "west": {"uv": [55, 80], "uv_size": [1, 1]}, + "up": {"uv": [74, 28], "uv_size": [6, 1]}, + "down": {"uv": [74, 30], "uv_size": [6, -1]} + } + }, + { + "origin": [-23.04, 62.64, -57.96], + "size": [1.44, 1.44, 59.76], + "uv": { + "east": {"uv": [71, 55], "uv_size": [8, 1]}, + "south": {"uv": [56, 80], "uv_size": [1, 1]}, + "west": {"uv": [71, 65], "uv_size": [8, 1]}, + "up": {"uv": [39, 71], "uv_size": [1, 8]} + } + }, + { + "origin": [-66.24, 64.8, -1.8], + "size": [25.92, 1.44, 1.44], + "uv": { + "north": {"uv": [76, 19], "uv_size": [4, 1]}, + "east": {"uv": [57, 80], "uv_size": [1, 1]}, + "south": {"uv": [76, 20], "uv_size": [4, 1]}, + "west": {"uv": [58, 80], "uv_size": [1, 1]}, + "up": {"uv": [76, 21], "uv_size": [4, 1]}, + "down": {"uv": [76, 23], "uv_size": [4, -1]} + } + }, + { + "origin": [-41.76, 64.8, -57.96], + "size": [1.44, 1.44, 56.16], + "uv": { + "east": {"uv": [71, 66], "uv_size": [8, 1]}, + "south": {"uv": [80, 61], "uv_size": [1, 1]}, + "west": {"uv": [71, 67], "uv_size": [8, 1]}, + "up": {"uv": [70, 71], "uv_size": [1, 8]} + } + } + ] + }, + { + "name": "bone3", + "parent": "Tube", + "pivot": [0, 76.4341, -61.56845], + "cubes": [ + { + "origin": [34.56, 64.8, 35.64], + "size": [30.24, 1.44, 1.44], + "uv": { + "north": {"uv": [80, 16], "uv_size": [-4, 1]}, + "east": {"uv": [34, 80], "uv_size": [-1, 1]}, + "south": {"uv": [80, 17], "uv_size": [-4, 1]}, + "west": {"uv": [81, 32], "uv_size": [-1, 1]}, + "up": {"uv": [22, 76], "uv_size": [-4, 1]} + } + }, + { + "origin": [34.56, 64.8, 37.08], + "size": [1.44, 1.44, 25.2], + "uv": { + "east": {"uv": [80, 44], "uv_size": [-3, 1]}, + "south": {"uv": [35, 80], "uv_size": [-1, 1]}, + "west": {"uv": [80, 43], "uv_size": [-3, 1]}, + "up": {"uv": [72, 77], "uv_size": [-1, 3]} + } + }, + { + "origin": [10.8, 64.8, 60.84], + "size": [23.76, 1.44, 1.44], + "uv": { + "north": {"uv": [75, 77], "uv_size": [-3, 1]}, + "south": {"uv": [80, 72], "uv_size": [-3, 1]}, + "up": {"uv": [80, 73], "uv_size": [-3, 1]} + } + }, + { + "origin": [9.36, 64.8, 37.08], + "size": [1.44, 1.44, 25.2], + "uv": { + "east": {"uv": [80, 76], "uv_size": [-3, 1]}, + "south": {"uv": [36, 80], "uv_size": [-1, 1]}, + "west": {"uv": [80, 74], "uv_size": [-3, 1]}, + "up": {"uv": [78, 77], "uv_size": [-1, 3]} + } + }, + { + "origin": [3.6, 64.8, 35.64], + "size": [7.2, 1.44, 1.44], + "uv": { + "north": {"uv": [37, 80], "uv_size": [-1, 1]}, + "east": {"uv": [81, 38], "uv_size": [-1, 1]}, + "south": {"uv": [81, 37], "uv_size": [-1, 1]}, + "west": {"uv": [81, 36], "uv_size": [-1, 1]}, + "up": {"uv": [81, 39], "uv_size": [-1, 1]} + } + }, + { + "origin": [64.8, 64.8, 34.2], + "size": [4.32, 2.88, 4.32], + "uv": { + "north": {"uv": [81, 43], "uv_size": [-1, 1]}, + "east": {"uv": [46, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 44], "uv_size": [-1, 1]}, + "west": {"uv": [45, 80], "uv_size": [-1, 1]}, + "up": {"uv": [47, 80], "uv_size": [-1, 1]} + } + }, + { + "origin": [66.24, 64.8, -23.4], + "size": [1.44, 2.88, 57.6], + "uv": { + "north": {"uv": [81, 49], "uv_size": [-1, 1]}, + "east": {"uv": [79, 54], "uv_size": [-8, 1]}, + "west": {"uv": [79, 53], "uv_size": [-8, 1]}, + "up": {"uv": [33, 71], "uv_size": [-1, 8]} + } + }, + { + "origin": [51.84, 64.8, -23.4], + "size": [14.4, 2.88, 1.44], + "uv": { + "north": {"uv": [81, 56], "uv_size": [-2, 1]}, + "east": {"uv": [51, 80], "uv_size": [-1, 1]}, + "south": {"uv": [81, 57], "uv_size": [-2, 1]}, + "up": {"uv": [81, 58], "uv_size": [-2, 1]} + } + }, + { + "origin": [51.84, 64.8, -59.4], + "size": [1.44, 2.88, 36], + "uv": { + "north": {"uv": [81, 50], "uv_size": [-1, 1]}, + "east": {"uv": [30, 75], "uv_size": [-5, 1]}, + "west": {"uv": [80, 24], "uv_size": [-5, 1]}, + "up": {"uv": [34, 75], "uv_size": [-1, 5]} + } + }, + { + "origin": [7.2, 61.92, -59.4], + "size": [44.64, 5.76, 1.44], + "uv": { + "north": {"uv": [80, 11], "uv_size": [-6, 1]}, + "east": {"uv": [54, 80], "uv_size": [-1, 1]}, + "south": {"uv": [24, 74], "uv_size": [-6, 1]}, + "west": {"uv": [52, 80], "uv_size": [-1, 1]}, + "up": {"uv": [30, 74], "uv_size": [-6, 1]} + } + }, + { + "origin": [25.92, 64.8, 5.4], + "size": [40.32, 1.44, 1.44], + "uv": { + "north": {"uv": [80, 26], "uv_size": [-6, 1]}, + "east": {"uv": [56, 80], "uv_size": [-1, 1]}, + "south": {"uv": [80, 27], "uv_size": [-6, 1]}, + "west": {"uv": [55, 80], "uv_size": [-1, 1]}, + "up": {"uv": [80, 28], "uv_size": [-6, 1]}, + "down": {"uv": [80, 30], "uv_size": [-6, -1]} + } + }, + { + "origin": [21.6, 62.64, -57.96], + "size": [1.44, 1.44, 59.76], + "uv": { + "east": {"uv": [79, 65], "uv_size": [-8, 1]}, + "south": {"uv": [57, 80], "uv_size": [-1, 1]}, + "west": {"uv": [79, 55], "uv_size": [-8, 1]}, + "up": {"uv": [40, 71], "uv_size": [-1, 8]} + } + }, + { + "origin": [40.32, 64.8, -1.8], + "size": [25.92, 1.44, 1.44], + "uv": { + "north": {"uv": [80, 19], "uv_size": [-4, 1]}, + "east": {"uv": [59, 80], "uv_size": [-1, 1]}, + "south": {"uv": [80, 20], "uv_size": [-4, 1]}, + "west": {"uv": [58, 80], "uv_size": [-1, 1]}, + "up": {"uv": [80, 21], "uv_size": [-4, 1]}, + "down": {"uv": [80, 23], "uv_size": [-4, -1]} + } + }, + { + "origin": [40.32, 64.8, -57.96], + "size": [1.44, 1.44, 56.16], + "uv": { + "east": {"uv": [79, 67], "uv_size": [-8, 1]}, + "south": {"uv": [81, 61], "uv_size": [-1, 1]}, + "west": {"uv": [79, 66], "uv_size": [-8, 1]}, + "up": {"uv": [71, 71], "uv_size": [-1, 8]} + } + } + ] + }, + { + "name": "TopTuQi", + "parent": "body", + "pivot": [24, 6, -48], + "cubes": [ + { + "origin": [-3.6, 64.8, 97.56], + "size": [7.2, 2.16, 14.4], + "uv": { + "east": {"uv": [79, 48], "uv_size": [2, 1]}, + "west": {"uv": [79, 51], "uv_size": [2, 1]}, + "up": {"uv": [52, 79], "uv_size": [1, 2]} + } + }, + { + "origin": [-7.2, 7.2, 137.16], + "size": [14.4, 57.6, 2.16], + "uv": { + "east": {"uv": [49, 70], "uv_size": [1, 8]}, + "south": {"uv": [19, 64], "uv_size": [2, 8]}, + "west": {"uv": [31, 71], "uv_size": [1, 8]} + } + }, + { + "origin": [-7.2, 5.04, 111.96], + "size": [14.4, 2.16, 27.36], + "uv": { + "north": {"uv": [79, 25], "uv_size": [2, 1]}, + "east": {"uv": [76, 7], "uv_size": [4, 1]}, + "south": {"uv": [41, 79], "uv_size": [2, 1]}, + "west": {"uv": [11, 76], "uv_size": [4, 1]}, + "down": {"uv": [35, 75], "uv_size": [2, -4]} + } + }, + { + "origin": [-7.2, 64.8, 111.96], + "size": [14.4, 2.16, 27.36], + "uv": { + "north": {"uv": [79, 42], "uv_size": [2, 1]}, + "east": {"uv": [76, 14], "uv_size": [4, 1]}, + "south": {"uv": [43, 79], "uv_size": [2, 1]}, + "west": {"uv": [76, 15], "uv_size": [4, 1]}, + "up": {"uv": [37, 71], "uv_size": [2, 4]} + } + }, + { + "origin": [-7.2, 64.8, 83.16], + "size": [14.4, 2.16, 14.4], + "uv": { + "north": {"uv": [80, 16], "uv_size": [2, 1]}, + "east": {"uv": [80, 17], "uv_size": [2, 1]}, + "south": {"uv": [80, 18], "uv_size": [2, 1]}, + "west": {"uv": [80, 19], "uv_size": [2, 1]}, + "up": {"uv": [76, 59], "uv_size": [2, 2]} + } + }, + { + "origin": [-79.2, 64.8, 83.16], + "size": [57.6, 2.16, 14.4], + "uv": { + "north": {"uv": [71, 51], "uv_size": [8, 1]}, + "east": {"uv": [79, 52], "uv_size": [2, 1]}, + "south": {"uv": [71, 52], "uv_size": [8, 1]}, + "west": {"uv": [79, 53], "uv_size": [2, 1]}, + "up": {"uv": [65, 2], "uv_size": [8, 2]} + } + }, + { + "origin": [-21.6, 64.8, 86.76], + "size": [14.4, 2.16, 7.2], + "uv": { + "north": {"uv": [79, 46], "uv_size": [2, 1]}, + "south": {"uv": [47, 79], "uv_size": [2, 1]}, + "up": {"uv": [79, 47], "uv_size": [2, 1]} + } + }, + { + "origin": [21.6, 64.8, 83.16], + "size": [57.6, 2.16, 14.4], + "uv": { + "north": {"uv": [79, 51], "uv_size": [-8, 1]}, + "east": {"uv": [81, 53], "uv_size": [-2, 1]}, + "south": {"uv": [79, 52], "uv_size": [-8, 1]}, + "west": {"uv": [81, 52], "uv_size": [-2, 1]}, + "up": {"uv": [73, 2], "uv_size": [-8, 2]} + } + }, + { + "origin": [7.2, 64.8, 86.76], + "size": [14.4, 2.16, 7.2], + "uv": { + "north": {"uv": [81, 46], "uv_size": [-2, 1]}, + "south": {"uv": [49, 79], "uv_size": [-2, 1]}, + "up": {"uv": [81, 47], "uv_size": [-2, 1]} + } + }, + { + "origin": [-7.2, 64.8, -59.4], + "size": [14.4, 2.16, 72], + "uv": { + "north": {"uv": [45, 79], "uv_size": [2, 1]}, + "east": {"uv": [70, 36], "uv_size": [10, 1]}, + "south": {"uv": [79, 45], "uv_size": [2, 1]}, + "west": {"uv": [70, 37], "uv_size": [10, 1]}, + "up": {"uv": [26, 56], "uv_size": [2, 10]} + } + }, + { + "origin": [-88.56, 64.8, -30.6], + "size": [14.4, 2.16, 57.6], + "uv": { + "north": {"uv": [80, 4], "uv_size": [2, 1]}, + "east": {"uv": [71, 71], "uv_size": [8, 1]}, + "south": {"uv": [80, 5], "uv_size": [2, 1]}, + "west": {"uv": [72, 5], "uv_size": [8, 1]}, + "up": {"uv": [21, 64], "uv_size": [2, 8]} + } + }, + { + "origin": [74.16, 64.8, -30.6], + "size": [14.4, 2.16, 57.6], + "uv": { + "north": {"uv": [82, 4], "uv_size": [-2, 1]}, + "east": {"uv": [80, 5], "uv_size": [-8, 1]}, + "south": {"uv": [82, 5], "uv_size": [-2, 1]}, + "west": {"uv": [79, 71], "uv_size": [-8, 1]}, + "up": {"uv": [23, 64], "uv_size": [-2, 8]} + } + }, + { + "origin": [-7.2, 76.05979, -50.96222], + "size": [14.4, 8.64, 8.64], + "pivot": [0, 91.72092, -73.88214], + "rotation": [-45, 0, 0], + "uv": { + "north": {"uv": [79, 54], "uv_size": [2, 1]}, + "east": {"uv": [47, 80], "uv_size": [1, 1]}, + "west": {"uv": [48, 80], "uv_size": [1, 1]}, + "up": {"uv": [79, 55], "uv_size": [2, 1]} + } + }, + { + "origin": [-3.6, 64.8, 12.6], + "size": [7.2, 2.16, 70.56], + "uv": { + "east": {"uv": [68, 12], "uv_size": [10, 1]}, + "west": {"uv": [23, 70], "uv_size": [10, 1]}, + "up": {"uv": [8, 70], "uv_size": [1, 10]} + } + } + ] + }, + { + "name": "PaoDiZuo", + "parent": "body", + "pivot": [36, 6, -48], + "cubes": [ + { + "origin": [-57.49057, 7.2, -129.68294], + "size": [114.984, 7.2, 43.2], + "uv": { + "north": {"uv": [63, 64], "uv_size": [16, 1]}, + "down": {"uv": [41, 45], "uv_size": [16, -6]} + } + }, + { + "origin": [-57.6, 21.6, -115.2], + "size": [115.2, 0, 48.24], + "uv": { + "up": {"uv": [41, 32], "uv_size": [16, 7]} + } + }, + { + "origin": [-57.49343, 47.52652, -158.27957], + "size": [114.984, 0, 16.164], + "pivot": [-0.10943, 91.71642, -73.60478], + "rotation": [26.5, 0, 0], + "uv": { + "up": {"uv": [57, 0], "uv_size": [16, 2]} + } + }, + { + "origin": [2.95464, 7.2, -158.38608], + "size": [26.316, 14.4, 26.28], + "pivot": [-4.39956, 91.72092, -78.20162], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [53, 72], "uv_size": [4, 2]}, + "east": {"uv": [57, 72], "uv_size": [4, 2]}, + "up": {"uv": [66, 20], "uv_size": [4, 4]}, + "down": {"uv": [23, 70], "uv_size": [4, -4]} + } + }, + { + "origin": [-29.27064, 7.2, -158.38608], + "size": [26.316, 14.4, 26.28], + "pivot": [4.39956, 91.72092, -78.20162], + "rotation": [0, 45, 0], + "uv": { + "north": {"uv": [71, 72], "uv_size": [4, 2]}, + "west": {"uv": [0, 73], "uv_size": [4, 2]}, + "up": {"uv": [66, 36], "uv_size": [4, 4]}, + "down": {"uv": [66, 49], "uv_size": [4, -4]} + } + } + ] + }, + { + "name": "GuanMiao", + "parent": "body", + "pivot": [24, 6, -48] + }, + { + "name": "bone6", + "parent": "GuanMiao", + "pivot": [0, 76.4341, -61.56845], + "cubes": [ + { + "origin": [90, 28.8, 63], + "size": [28.8, 21.6, 43.2], + "uv": { + "north": {"uv": [11, 68], "uv_size": [4, 3]}, + "south": {"uv": [15, 68], "uv_size": [4, 3]}, + "west": {"uv": [51, 63], "uv_size": [6, 3]}, + "up": {"uv": [51, 56], "uv_size": [4, 6]}, + "down": {"uv": [57, 40], "uv_size": [4, -6]} + } + }, + { + "origin": [82.8, 28.08, 61.56], + "size": [7.2, 23.04, 46.08], + "uv": { + "north": {"uv": [51, 77], "uv_size": [1, 3]}, + "south": {"uv": [62, 77], "uv_size": [1, 3]}, + "west": {"uv": [57, 63], "uv_size": [6, 3]}, + "up": {"uv": [4, 73], "uv_size": [1, 6]}, + "down": {"uv": [17, 79], "uv_size": [1, -6]} + } + }, + { + "origin": [118.8, 28.8, 81], + "size": [5.04, 21.6, 7.2], + "uv": { + "north": {"uv": [63, 77], "uv_size": [1, 3]}, + "south": {"uv": [64, 77], "uv_size": [1, 3]}, + "west": {"uv": [65, 77], "uv_size": [1, 3]}, + "up": {"uv": [80, 30], "uv_size": [1, 1]}, + "down": {"uv": [80, 32], "uv_size": [1, -1]} + } + }, + { + "origin": [118.8, 32.4, 66.6], + "size": [3.6, 14.4, 36], + "uv": { + "north": {"uv": [17, 79], "uv_size": [1, 2]}, + "south": {"uv": [30, 79], "uv_size": [1, 2]}, + "west": {"uv": [70, 22], "uv_size": [5, 2]}, + "up": {"uv": [23, 75], "uv_size": [1, 5]}, + "down": {"uv": [24, 80], "uv_size": [1, -5]} + } + } + ] + }, + { + "name": "bone4", + "parent": "GuanMiao", + "pivot": [0, 76.4341, -61.56845], + "cubes": [ + { + "origin": [-118.8, 28.8, 63], + "size": [28.8, 21.6, 43.2], + "uv": { + "north": {"uv": [15, 68], "uv_size": [-4, 3]}, + "east": {"uv": [57, 63], "uv_size": [-6, 3]}, + "south": {"uv": [19, 68], "uv_size": [-4, 3]}, + "up": {"uv": [55, 56], "uv_size": [-4, 6]}, + "down": {"uv": [61, 40], "uv_size": [-4, -6]} + } + }, + { + "origin": [-90, 28.08, 61.56], + "size": [7.2, 23.04, 46.08], + "uv": { + "north": {"uv": [52, 77], "uv_size": [-1, 3]}, + "east": {"uv": [63, 63], "uv_size": [-6, 3]}, + "south": {"uv": [63, 77], "uv_size": [-1, 3]}, + "up": {"uv": [5, 73], "uv_size": [-1, 6]}, + "down": {"uv": [18, 79], "uv_size": [-1, -6]} + } + }, + { + "origin": [-123.84, 28.8, 81], + "size": [5.04, 21.6, 7.2], + "uv": { + "north": {"uv": [64, 77], "uv_size": [-1, 3]}, + "east": {"uv": [66, 77], "uv_size": [-1, 3]}, + "south": {"uv": [65, 77], "uv_size": [-1, 3]}, + "up": {"uv": [81, 30], "uv_size": [-1, 1]}, + "down": {"uv": [81, 32], "uv_size": [-1, -1]} + } + }, + { + "origin": [-122.4, 32.4, 66.6], + "size": [3.6, 14.4, 36], + "uv": { + "north": {"uv": [18, 79], "uv_size": [-1, 2]}, + "east": {"uv": [75, 22], "uv_size": [-5, 2]}, + "south": {"uv": [31, 79], "uv_size": [-1, 2]}, + "up": {"uv": [24, 75], "uv_size": [-1, 5]}, + "down": {"uv": [25, 80], "uv_size": [-1, -5]} + } + } + ] + }, + { + "name": "Base", + "parent": "bone", + "pivot": [-0.36, 3, 1.584], + "cubes": [ + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [0, -22.5, 0], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [0, -67.5, 0], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [0, -45, 0], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [-180, -67.5, 180], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [0, -90, 0], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [-180, -22.5, 180], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + }, + { + "origin": [-22.38624, 0, -108.49766], + "size": [43.90848, 7.2, 220.79693], + "pivot": [-0.432, 3.6, 1.9008], + "rotation": [-180, -45, 180], + "uv": { + "north": {"uv": [34, 58], "uv_size": [6, 1]}, + "south": {"uv": [73, 0], "uv_size": [6, 1]}, + "up": {"uv": [28, 0], "uv_size": [6, 31]}, + "down": {"uv": [28, 62], "uv_size": [6, -31]} + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/superbwarfare/textures/entity/annihilator.png b/src/main/resources/assets/superbwarfare/textures/entity/annihilator.png new file mode 100644 index 000000000..7b21da2cd Binary files /dev/null and b/src/main/resources/assets/superbwarfare/textures/entity/annihilator.png differ diff --git a/src/main/resources/assets/superbwarfare/textures/entity/annihilator_e.png b/src/main/resources/assets/superbwarfare/textures/entity/annihilator_e.png new file mode 100644 index 000000000..b632f713e Binary files /dev/null and b/src/main/resources/assets/superbwarfare/textures/entity/annihilator_e.png differ