From ceb9abbec40d945a5cc778eac4cab16296b38c24 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 13 Oct 2024 17:06:46 +0200 Subject: [PATCH] extremely shitty animations --- .../sedna/factory/GunFactoryClient.java | 2 +- .../weapon/sedna/factory/LegoClient.java | 3 +- .../weapon/sedna/factory/Orchestras.java | 9 +++++- .../weapon/sedna/factory/XFactoryFlamer.java | 30 ++++++++++++------- .../sedna/hud/HUDComponentAmmoCounter.java | 28 +++++++++++------ .../java/com/hbm/main/ResourceManager.java | 1 + .../item/weapon/sedna/ItemRenderFlamer.java | 25 ++++++++++++---- .../weapons/animations/flamethrower.json | 1 + .../hbm/models/weapons/flamethrower.obj | 28 ++++++++--------- 9 files changed, 86 insertions(+), 41 deletions(-) create mode 100644 src/main/resources/assets/hbm/models/weapons/animations/flamethrower.json diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 6857b4618..6d25b5142 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -78,7 +78,7 @@ public class GunFactoryClient { ((ItemGunBaseNT) ModItems.gun_am180) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_liberator) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_congolake) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_flamer) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_flamer) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO_NOCOUNTER); ((ItemGunBaseNT) ModItems.gun_light_revolver_dani).getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY_MIRROR, LegoClient.HUD_COMPONENT_AMMO_MIRROR); ((ItemGunBaseNT) ModItems.gun_light_revolver_dani).getConfig(null, 1).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java index f9f1f349e..9c2f2b657 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java @@ -21,7 +21,8 @@ public class LegoClient { public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY = new HUDComponentDurabilityBar(); public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY_MIRROR = new HUDComponentDurabilityBar(true); public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO = new HUDComponentAmmoCounter(0); - public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO_MIRROR = new HUDComponentAmmoCounter(0, true); + public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO_MIRROR = new HUDComponentAmmoCounter(0).mirror(); + public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO_NOCOUNTER = new HUDComponentAmmoCounter(0).noCounter(); public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 195c9c28e..0f5a0cd69 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -424,6 +424,13 @@ public class Orchestras { EntityPlayer player = ctx.player; AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); - boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.RELOAD) { + if(timer == 15) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.openLatch", 1F, 1F); + if(timer == 35) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.impact", 0.5F, 1F); + if(timer == 60) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.75F); + if(timer == 70) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.insertCanister", 1F, 1F); + if(timer == 85) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pressureValve", 1F, 1F); + } }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryFlamer.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryFlamer.java index 379d99546..9dfdd0b16 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryFlamer.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryFlamer.java @@ -11,30 +11,39 @@ import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; import com.hbm.items.weapon.sedna.mags.MagazineFullReload; import com.hbm.lib.RefStrings; -import com.hbm.particle.helper.FlameCreator; +import com.hbm.main.MainRegistry; +import com.hbm.main.ResourceManager; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.BusAnimationSequence; import com.hbm.render.anim.BusAnimationKeyframe.IType; import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; public class XFactoryFlamer { public static BulletConfig flame_diesel; public static void init() { - flame_diesel = new BulletConfig().setItem(EnumAmmo.FLAME_DIESEL).setLife(100).setVel(1F).setGrav(0.02D).setReloadCount(200) + flame_diesel = new BulletConfig().setItem(EnumAmmo.FLAME_DIESEL).setLife(100).setVel(1F).setGrav(0.02D).setReloadCount(300) .setOnUpdate((bullet) -> { - if(!bullet.worldObj.isRemote) FlameCreator.composeEffect(bullet.worldObj, bullet.posX, bullet.posY - 0.25, bullet.posZ); + if(bullet.worldObj.isRemote && MainRegistry.proxy.me().getDistanceToEntity(bullet) < 100) { + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "flamethrower"); + data.setDouble("posX", bullet.posX); + data.setDouble("posY", bullet.posY - 0.125); + data.setDouble("posZ", bullet.posZ); + MainRegistry.proxy.effectNT(data); + } }); ModItems.gun_flamer = new ItemGunBaseNT(new GunConfig() - .dura(20_000).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) + .dura(20_000).draw(10).inspect(17).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(10F).delay(1).auto(true).reload(55).jam(0) - .mag(new MagazineFullReload(0, 200).addConfigs(flame_diesel)) - .offset(0.75, -0.0625, -0.3125D) + .dmg(10F).delay(1).auto(true).reload(90).jam(0) + .mag(new MagazineFullReload(0, 300).addConfigs(flame_diesel)) + .offset(0.75, -0.0625, -0.25D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration() .anim(LAMBDA_FLAMER_ANIMS).orchestra(Orchestras.ORCHESTRA_FLAMER) @@ -44,9 +53,10 @@ public class XFactoryFlamer { @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_FLAMER_ANIMS = (stack, type) -> { switch(type) { case EQUIP: return new BusAnimation() - .addBus("EQUIP", new BusAnimationSequence().addPos(-90, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_DOWN)); - case RELOAD: return new BusAnimation(); - case INSPECT: return new BusAnimation(); + .addBus("EQUIP", new BusAnimationSequence().addPos(-45, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_DOWN)); + case RELOAD: return ResourceManager.flamethrower_anim.get("Reload"); + case INSPECT: return new BusAnimation() + .addBus("ROTATE", new BusAnimationSequence().addPos(0, 0, 45, 250, IType.SIN_FULL).addPos(0, 0, 45, 350).addPos(0, 0, -15, 150, IType.SIN_FULL).addPos(0, 0, 0, 100, IType.SIN_FULL)); case JAMMED: return new BusAnimation(); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java index ba61b9baa..0ecf3156d 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java @@ -5,6 +5,7 @@ import org.lwjgl.opengl.GL12; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.mags.IMagazine; +import com.hbm.lib.RefStrings; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.ScaledResolution; @@ -12,27 +13,35 @@ import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.entity.RenderItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; public class HUDComponentAmmoCounter implements IHUDComponent { - + + private static final ResourceLocation misc = new ResourceLocation(RefStrings.MODID + ":textures/misc/overlay_misc.png"); protected static final RenderItem itemRenderer = RenderItem.getInstance(); protected int receiver; protected boolean mirrored; + protected boolean noCounter; public HUDComponentAmmoCounter(int receiver) { - this(receiver, false); + this.receiver = receiver; } - public HUDComponentAmmoCounter(int receiver, boolean mirror) { - this.receiver = receiver; - this.mirrored = mirror; + public HUDComponentAmmoCounter mirror() { + this.mirrored = true; + return this; + } + + public HUDComponentAmmoCounter noCounter() { + this.noCounter = true; + return this; } @Override public int getComponentHeight(EntityPlayer player, ItemStack stack){ - return 22; + return 24; } @Override @@ -41,12 +50,12 @@ public class HUDComponentAmmoCounter implements IHUDComponent { ScaledResolution resolution = event.resolution; Minecraft mc = Minecraft.getMinecraft(); - int pX = resolution.getScaledWidth() / 2 + (mirrored ? -(62 + 36 + 52) : (62 + 36)); - int pZ = resolution.getScaledHeight() - bottomOffset - 21; + int pX = resolution.getScaledWidth() / 2 + (mirrored ? -(62 + 36 + 52) : (62 + 36)) + (noCounter ? 14 : 0); + int pZ = resolution.getScaledHeight() - bottomOffset - 23; ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); IMagazine mag = gun.getConfig(stack, gunIndex).getReceivers(stack)[this.receiver].getMagazine(stack); - mc.fontRenderer.drawString(mag.reportAmmoStateForHUD(stack), pX + 17, pZ + 6, 0xFFFFFF); + if(!noCounter) mc.fontRenderer.drawString(mag.reportAmmoStateForHUD(stack), pX + 17, pZ + 6, 0xFFFFFF); GL11.glDisable(GL11.GL_BLEND); GL11.glEnable(GL12.GL_RESCALE_NORMAL); @@ -55,5 +64,6 @@ public class HUDComponentAmmoCounter implements IHUDComponent { RenderHelper.disableStandardItemLighting(); GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL12.GL_RESCALE_NORMAL); + mc.renderEngine.bindTexture(misc); } } diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 47b5f9133..a60436d79 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -868,6 +868,7 @@ public class ResourceManager { public static final HashMap supershotty_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/supershotty.json")); public static final HashMap benelli_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/benelli.json")); public static final HashMap congolake_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/congolake.json")); + public static final HashMap flamethrower_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/flamethrower.json")); public static final IModelCustom lance = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/lance.obj")); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlamer.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlamer.java index e2e1b3b0f..2cdf914fb 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlamer.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlamer.java @@ -34,16 +34,31 @@ public class ItemRenderFlamer extends ItemRenderWeaponBase { GL11.glScaled(scale, scale, scale); double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] rotate = HbmAnimations.getRelevantTransformation("ROTATE"); - GL11.glTranslated(0, -1, -3); - GL11.glRotated(equip[0], 1, 0, 0); - GL11.glTranslated(0, 1, 3); + GL11.glTranslated(0, 2, -6); + GL11.glRotated(-equip[0], 1, 0, 0); + GL11.glTranslated(0, -2, 6); + + GL11.glTranslated(0, 1, 0); + GL11.glRotated(rotate[2], 0, 0, 1); + GL11.glTranslated(0, -1, 0); GL11.glShadeModel(GL11.GL_SMOOTH); - ResourceManager.flamethrower.renderPart("Gun"); - ResourceManager.flamethrower.renderPart("Tank"); GL11.glPushMatrix(); + HbmAnimations.applyRelevantTransformation("Gun"); + ResourceManager.flamethrower.renderPart("Gun"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + HbmAnimations.applyRelevantTransformation("Tank"); + ResourceManager.flamethrower.renderPart("Tank"); + GL11.glPopMatrix(); + + + GL11.glPushMatrix(); + HbmAnimations.applyRelevantTransformation("Gauge"); GL11.glTranslated(1.25, 1.25, 0); IMagazine mag = gun.getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack); GL11.glRotated(-135 + (mag.getAmount(stack) * 270D / mag.getCapacity(stack)), 0, 0, 1); diff --git a/src/main/resources/assets/hbm/models/weapons/animations/flamethrower.json b/src/main/resources/assets/hbm/models/weapons/animations/flamethrower.json new file mode 100644 index 000000000..334a5ca74 --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/animations/flamethrower.json @@ -0,0 +1 @@ +{"anim": {"Reload": {"Gauge": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2988.0144119262695, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, -0.0, "AUTO_CLAMPED"], [-1.0132989883422852, 750.0, "BEZIER", "AUTO", 457.1913719177246, -1.0132989883422852, "AUTO_CLAMPED", 1238.0144119262698, -1.0132989883422852, "AUTO_CLAMPED"], [-1.0132989883422852, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, -1.0132989883422852, "AUTO_CLAMPED", 2195.2056884765625, -1.0132989883422852, "AUTO_CLAMPED"], [-1.0132989883422852, 500.0, "BEZIER", "AUTO", 2304.7943115234375, -1.0132989883422852, "AUTO_CLAMPED", 2988.0144119262695, -1.0132989883422852, "AUTO_CLAMPED"], [-1.0132989883422852, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, -1.0132989883422852, "AUTO_CLAMPED"], [-0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [2.400388240814209, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 2.400388240814209, "AUTO_CLAMPED", 2988.0144119262695, 2.400388240814209, "AUTO_CLAMPED"], [2.400388240814209, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 2.400388240814209, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [31.53669436033596, 750.0, "BEZIER", "AUTO", 457.1913719177246, 31.53669436033596, "AUTO_CLAMPED", 1238.0144119262698, 31.53669436033596, "AUTO_CLAMPED"], [31.53669436033596, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 31.53669436033596, "AUTO_CLAMPED", 2195.2056884765625, 31.53669436033596, "AUTO_CLAMPED"], [-23.37867031189583, 500.0, "BEZIER", "AUTO", 2304.7943115234375, -23.37867031189583, "AUTO_CLAMPED", 2988.0144119262695, -23.37867031189583, "AUTO_CLAMPED"], [-23.37867031189583, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, -23.37867031189583, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, -0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2988.0144119262695, 0.0, "AUTO_CLAMPED"], [-0.0, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, -0.0, "AUTO_CLAMPED"], [-0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2988.0144119262695, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]]}}, "Gun": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2988.0144119262695, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, -0.0, "AUTO_CLAMPED"], [-1.0132989883422852, 750.0, "BEZIER", "AUTO", 457.1913719177246, -1.0132989883422852, "AUTO_CLAMPED", 1238.0144119262698, -1.0132989883422852, "AUTO_CLAMPED"], [-1.0132989883422852, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, -1.0132989883422852, "AUTO_CLAMPED", 2195.2056884765625, -1.0132989883422852, "AUTO_CLAMPED"], [-1.0132989883422852, 500.0, "BEZIER", "AUTO", 2304.7943115234375, -1.0132989883422852, "AUTO_CLAMPED", 2988.0144119262695, -1.0132989883422852, "AUTO_CLAMPED"], [-1.0132989883422852, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, -1.0132989883422852, "AUTO_CLAMPED"], [-0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [2.400388240814209, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 2.400388240814209, "AUTO_CLAMPED", 2988.0144119262695, 2.400388240814209, "AUTO_CLAMPED"], [2.400388240814209, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 2.400388240814209, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [31.53669436033596, 750.0, "BEZIER", "AUTO", 457.1913719177246, 31.53669436033596, "AUTO_CLAMPED", 1238.0144119262698, 31.53669436033596, "AUTO_CLAMPED"], [31.53669436033596, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 31.53669436033596, "AUTO_CLAMPED", 2195.2056884765625, 31.53669436033596, "AUTO_CLAMPED"], [-23.37867031189583, 500.0, "BEZIER", "AUTO", 2304.7943115234375, -23.37867031189583, "AUTO_CLAMPED", 2988.0144119262695, -23.37867031189583, "AUTO_CLAMPED"], [-23.37867031189583, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, -23.37867031189583, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, -0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2988.0144119262695, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED", 1238.0144119262698, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "BEZIER", "AUTO", 1511.9855880737305, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2988.0144119262695, 0.0, "AUTO_CLAMPED"], [0.0, 1250.0, "LINEAR", "AUTO", 3261.9857788085938, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]]}}, "Tank": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "LINEAR", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED"], [-0.044564783573150635, 400.0000000000002, "LINEAR", "AUTO"], [-0.044564783573150635, 349.9999999999998, "BEZIER", "AUTO", 1695.2056884765625, -0.044564783573150635, "AUTO_CLAMPED"], [-0.044564783573150635, 500.0, "BEZIER", "AUTO", 1804.7943115234375, -0.044564783573150635, "AUTO_CLAMPED", 2195.2056884765625, -0.044564783573150635, "AUTO_CLAMPED"], [-0.044564783573150635, 500.0, "BEZIER", "AUTO", 2304.7943115234375, -0.044564783573150635, "AUTO_CLAMPED", 2695.2056884765625, -0.044564783573150635, "AUTO_CLAMPED"], [-0.044564783573150635, 500.0, "BEZIER", "AUTO", 2804.7943115234375, -0.044564783573150635, "AUTO_CLAMPED", 3097.6028442382812, -0.044564783573150635, "AUTO_CLAMPED"], [-0.044564783573150635, 250.0, "BEZIER", "AUTO", 3152.3971557617188, -0.044564783573150635, "AUTO_CLAMPED", 3347.6028442382812, -0.044564783573150635, "AUTO_CLAMPED"], [-0.044564783573150635, 250.0, "LINEAR", "AUTO", 3402.3971557617188, -0.044564783573150635, "AUTO_CLAMPED"], [0.0, 250.0, "LINEAR", "AUTO"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, -0.0, "AUTO_CLAMPED"], [-1.0132989883422852, 750.0, "LINEAR", "AUTO", 457.1913719177246, -1.0132989883422852, "AUTO_CLAMPED"], [2.5499136447906494, 400.0000000000002, "LINEAR", "AUTO"], [1.4521247148513794, 349.9999999999998, "BEZIER", "AUTO", 1695.2056884765625, 1.4521247148513794, "AUTO_CLAMPED"], [3.9383955001831055, 500.0, "BEZIER", "AUTO", 1804.7943115234375, 3.9383955001831055, "AUTO_CLAMPED", 2195.2056884765625, 3.9383955001831055, "AUTO_CLAMPED"], [3.9383955001831055, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 3.9383955001831055, "AUTO_CLAMPED", 2695.2056884765625, 3.9383955001831055, "AUTO_CLAMPED"], [4.342286586761475, 500.0, "BEZIER", "AUTO", 2804.7943115234375, 3.9470109939575195, "AUTO_CLAMPED", 3097.6028442382812, 4.539924621582031, "AUTO_CLAMPED"], [5.1528000831604, 250.0, "BEZIER", "AUTO", 3152.3971557617188, 5.1528000831604, "AUTO_CLAMPED", 3347.6028442382812, 5.1528000831604, "AUTO_CLAMPED"], [2.7643589973449707, 250.0, "LINEAR", "AUTO", 3402.3971557617188, 3.9673728942871094, "AUTO_CLAMPED"], [-1.0099999904632568, 250.0, "LINEAR", "AUTO"], [-0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "LINEAR", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED"], [-2.2834606170654297, 400.0000000000002, "LINEAR", "AUTO"], [-5.361827373504639, 349.9999999999998, "BEZIER", "AUTO", 1695.2056884765625, -7.615589141845703, "AUTO_CLAMPED"], [-12.509732246398926, 500.0, "BEZIER", "AUTO", 1804.7943115234375, -12.509732246398926, "AUTO_CLAMPED", 2195.2056884765625, -12.509732246398926, "AUTO_CLAMPED"], [-12.509732246398926, 500.0, "BEZIER", "AUTO", 2304.7943115234375, -12.509732246398926, "AUTO_CLAMPED", 2695.2056884765625, -12.509732246398926, "AUTO_CLAMPED"], [-4.52110481262207, 500.0, "BEZIER", "AUTO", 2804.7943115234375, -7.63911247253418, "AUTO_CLAMPED", 3097.6028442382812, -2.9621009826660156, "AUTO_CLAMPED"], [-0.5289543867111206, 250.0, "BEZIER", "AUTO", 3152.3971557617188, -2.206026554107666, "AUTO_CLAMPED", 3347.6028442382812, 1.1481177806854248, "AUTO_CLAMPED"], [4.070199966430664, 250.0, "LINEAR", "AUTO", 3402.3971557617188, 4.070199966430664, "AUTO_CLAMPED"], [2.4000000953674316, 250.0, "LINEAR", "AUTO"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [31.53669436033596, 750.0, "LINEAR", "AUTO", 457.1913719177246, 31.53669436033596, "AUTO_CLAMPED"], [31.53669436033596, 400.0000000000002, "LINEAR", "AUTO"], [60.02500016201436, 349.9999999999998, "BEZIER", "AUTO", 1695.2056884765625, 60.02500016201436, "AUTO_CLAMPED"], [60.02500016201436, 500.0, "BEZIER", "AUTO", 1804.7943115234375, 60.02500016201436, "AUTO_CLAMPED", 2195.2056884765625, 60.02500016201436, "AUTO_CLAMPED"], [60.02500016201436, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 60.02500016201436, "AUTO_CLAMPED", 2695.2056884765625, 60.02500016201436, "AUTO_CLAMPED"], [60.02500016201436, 500.0, "BEZIER", "AUTO", 2804.7943115234375, 60.02500016201436, "AUTO_CLAMPED", 3097.6028442382812, 60.02500016201436, "AUTO_CLAMPED"], [23.514188095218056, 250.0, "BEZIER", "AUTO", 3152.3971557617188, 39.881238922178085, "AUTO_CLAMPED", 3347.6028442382812, 7.147137268258023, "AUTO_CLAMPED"], [-23.820132758710436, 250.0, "LINEAR", "AUTO", 3402.3971557617188, -23.820132758710436, "AUTO_CLAMPED"], [-23.820132758710436, 250.0, "LINEAR", "AUTO"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, -0.0, "AUTO_CLAMPED"], [0.0, 750.0, "LINEAR", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED"], [0.0, 400.0000000000002, "LINEAR", "AUTO"], [0.0, 349.9999999999998, "BEZIER", "AUTO", 1695.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 1804.7943115234375, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2695.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2804.7943115234375, 0.0, "AUTO_CLAMPED", 3097.6028442382812, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "BEZIER", "AUTO", 3152.3971557617188, 0.0, "AUTO_CLAMPED", 3347.6028442382812, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "LINEAR", "AUTO", 3402.3971557617188, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "LINEAR", "AUTO"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 292.80862808227545, 0.0, "AUTO_CLAMPED"], [0.0, 750.0, "LINEAR", "AUTO", 457.1913719177246, 0.0, "AUTO_CLAMPED"], [0.0, 400.0000000000002, "LINEAR", "AUTO"], [0.0, 349.9999999999998, "BEZIER", "AUTO", 1695.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 1804.7943115234375, 0.0, "AUTO_CLAMPED", 2195.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2304.7943115234375, 0.0, "AUTO_CLAMPED", 2695.2056884765625, 0.0, "AUTO_CLAMPED"], [0.0, 500.0, "BEZIER", "AUTO", 2804.7943115234375, 0.0, "AUTO_CLAMPED", 3097.6028442382812, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "BEZIER", "AUTO", 3152.3971557617188, 0.0, "AUTO_CLAMPED", 3347.6028442382812, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "LINEAR", "AUTO", 3402.3971557617188, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "LINEAR", "AUTO"], [0.0, 750.0, "BEZIER", "AUTO", 4792.808532714844, 0.0, "AUTO_CLAMPED"]]}}}}, "offset": {}, "hierarchy": {}} \ No newline at end of file diff --git a/src/main/resources/assets/hbm/models/weapons/flamethrower.obj b/src/main/resources/assets/hbm/models/weapons/flamethrower.obj index ba471a2db..c1db95f4f 100644 --- a/src/main/resources/assets/hbm/models/weapons/flamethrower.obj +++ b/src/main/resources/assets/hbm/models/weapons/flamethrower.obj @@ -76,46 +76,46 @@ v -0.250000 -1.566988 -6.750000 vt 0.346821 0.604839 vt 0.369942 0.580645 vt 0.369942 0.612903 -vt 0.393064 0.741935 +vt 0.390173 0.741935 vt 0.369942 0.709677 -vt 0.393064 0.709677 +vt 0.390173 0.709677 vt 0.624277 0.709677 vt 0.624277 0.741935 vt 0.369942 0.645161 vt 0.346821 0.620968 -vt 0.393064 0.774194 +vt 0.390173 0.774194 vt 0.369942 0.806452 vt 0.369942 0.774194 vt 0.624277 0.677419 -vt 0.367052 0.935484 +vt 0.369942 0.935484 vt 0.346821 0.911290 vt 0.369942 0.903226 vt 0.369942 0.741935 -vt 0.393064 0.677419 +vt 0.390173 0.677419 vt 0.624277 0.645161 vt 0.346821 0.895161 vt 0.369942 0.870968 vt 0.369942 0.677419 -vt 0.393064 0.645161 +vt 0.390173 0.645161 vt 0.624277 0.612903 vt 0.346821 0.862903 vt 0.369942 0.838710 -vt 0.393064 0.612903 +vt 0.390173 0.612903 vt 0.624277 0.580645 vt 0.346821 0.814516 -vt 0.393064 0.580645 +vt 0.390173 0.580645 vt 0.369942 0.548387 -vt 0.393064 0.548387 +vt 0.390173 0.548387 vt 0.624277 0.548387 vt 0.346821 0.782258 -vt 0.393064 0.903226 -vt 0.393064 0.870968 -vt 0.393064 0.935484 +vt 0.390173 0.903226 +vt 0.390173 0.870968 +vt 0.390173 0.935484 vt 0.624277 0.903226 vt 0.624277 0.935484 vt 0.346821 0.750000 -vt 0.393064 0.838710 -vt 0.393064 0.806452 +vt 0.390173 0.838710 +vt 0.390173 0.806452 vt 0.624277 0.870968 vt 0.346821 0.733871 vt 0.624277 0.838710