diff --git a/src/main/java/com/atsuishio/superbwarfare/client/layer/gun/M4Layer.java b/src/main/java/com/atsuishio/superbwarfare/client/layer/gun/M4Layer.java deleted file mode 100644 index 7181b8759..000000000 --- a/src/main/java/com/atsuishio/superbwarfare/client/layer/gun/M4Layer.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.atsuishio.superbwarfare.client.layer.gun; - -import com.atsuishio.superbwarfare.Mod; -import com.atsuishio.superbwarfare.item.gun.rifle.M4Item; -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 M4Layer extends GeoRenderLayer { - private static final ResourceLocation LAYER = Mod.loc("textures/item/m4_e.png"); - - public M4Layer(GeoRenderer itemGeoRenderer) { - super(itemGeoRenderer); - } - - @Override - public void render(PoseStack poseStack, M4Item animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) { - RenderType glowRenderType = RenderType.eyes(LAYER); - getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 0xFFFFFFFF); - } -} diff --git a/src/main/java/com/atsuishio/superbwarfare/client/model/item/M4ItemModel.java b/src/main/java/com/atsuishio/superbwarfare/client/model/item/M4ItemModel.java index 7c3089ecf..6df4420c9 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/model/item/M4ItemModel.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/model/item/M4ItemModel.java @@ -51,11 +51,7 @@ public class M4ItemModel extends GeoModel { GeoBone scope = getAnimationProcessor().getBone("Scope1"); GeoBone scope2 = getAnimationProcessor().getBone("Scope2"); GeoBone scope3 = getAnimationProcessor().getBone("Scope3"); - GeoBone cross1 = getAnimationProcessor().getBone("Cross1"); - GeoBone cross2 = getAnimationProcessor().getBone("Cross2"); - GeoBone cross3 = getAnimationProcessor().getBone("Cross3"); GeoBone lh = getAnimationProcessor().getBone("Lefthand"); - GeoBone crossAlt = getAnimationProcessor().getBone("CrossAlt"); GeoBone sight1fold = getAnimationProcessor().getBone("sight1fold"); GeoBone sight2fold = getAnimationProcessor().getBone("sight2fold"); GeoBone button = getAnimationProcessor().getBone("button"); @@ -147,11 +143,6 @@ public class M4ItemModel extends GeoModel { shen.setRotY(fireRotY); shen.setRotZ(fireRotZ); - cross1.setPosY(-0.25f * (float) fpz); - cross2.setPosY(-0.1f * (float) fpz); - crossAlt.setPosY(-0.2f * (float) fpz); - cross3.setPosY(-0.2f * (float) fpz); - shen.setPosX((float) (shen.getPosX() * (1 - 0.1 * zt))); shen.setPosY((float) (shen.getPosY() * (-1 + 0.8 * zt))); shen.setPosZ((float) (shen.getPosZ() * (1 - 0.1 * zt))); diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java index 7e5b4b36d..60b05b2e9 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java @@ -28,8 +28,6 @@ public class M4ItemRenderer extends GeoItemRenderer { public M4ItemRenderer() { super(new M4ItemModel()); - // TODO layer -// this.addRenderLayer(new M4Layer(this)); } @Override @@ -112,6 +110,20 @@ public class M4ItemRenderer extends GeoItemRenderer { bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom); } + int scopeType = GunData.from(itemStack).attachment.get(AttachmentType.SCOPE); + + switch (scopeType) { + case 1 -> AnimationHelper.handleZoomCrossHair(currentBuffer, renderType, name, stack, bone, buffer, packedLightIn, 0, 0.32, 30, 1.2f, 255, 0, 0, 255, "dot", false); + case 2 -> { + if (itemStack.getOrCreateTag().getBoolean("ScopeAlt")) { + AnimationHelper.handleZoomCrossHair(currentBuffer, renderType, name, stack, bone, buffer, packedLightIn, 0, 0.34, 30, 0.25f, 255, 0, 0, 255, "delta", false); + } else { + AnimationHelper.handleZoomCrossHair(currentBuffer, renderType, name, stack, bone, buffer, packedLightIn, 0, 0.294, 13, 0.87f, 255, 0, 0, 255, "hamr", true); + } + } + case 3 -> AnimationHelper.handleZoomCrossHair(currentBuffer, renderType, name, stack, bone, buffer, packedLightIn, 0, 0.283, 27, 2f, 255, 0, 0, 255, "sniper", true); + } + AnimationHelper.handleShootFlare(name, stack, itemStack, bone, buffer, packedLightIn, 0, 0, 1.353125, 0.3); if (name.equals("Sight")) { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java index 81d0ef287..863af21e1 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java @@ -193,7 +193,7 @@ public class Ah6Entity extends ContainerMobileVehicleEntity implements GeoEntity if (this.isInWater() && this.tickCount % 4 == 0 && getSubmergedHeight(this) > 0.5 * getBbHeight()) { this.setDeltaMovement(this.getDeltaMovement().multiply(0.6, 0.6, 0.6)); - this.hurt(ModDamageTypes.causeVehicleStrikeDamage(this.level().registryAccess(), this, this.getFirstPassenger() == null ? this : this.getFirstPassenger()), 1 + (float) (20 * ((lastTickSpeed - 0.4) * (lastTickSpeed - 0.4)))); + this.hurt(ModDamageTypes.causeVehicleStrikeDamage(this.level().registryAccess(), this, this.getFirstPassenger() == null ? this : this.getFirstPassenger()), 6 + (float) (20 * ((lastTickSpeed - 0.4) * (lastTickSpeed - 0.4)))); } releaseDecoy(); diff --git a/src/main/resources/assets/superbwarfare/geo/m4.geo.json b/src/main/resources/assets/superbwarfare/geo/m4.geo.json index df09bdb43..e1388fa81 100644 --- a/src/main/resources/assets/superbwarfare/geo/m4.geo.json +++ b/src/main/resources/assets/superbwarfare/geo/m4.geo.json @@ -54,6 +54,11 @@ "parent": "fireRoot3", "pivot": [0, 0, 0] }, + { + "name": "cross", + "parent": "0", + "pivot": [0, 5.06719, -96] + }, { "name": "Sight", "parent": "0", @@ -1466,7 +1471,7 @@ { "origin": [-0.11171, 2.19333, -22.59329], "size": [0.21733, 0.12256, 1.49725], - "uv": { + "uv": { "north": {"uv": [75, 31], "uv_size": [0.25, 0.25]}, "east": {"uv": [58, 62], "uv_size": [1.5, 0.25]}, "south": {"uv": [32, 75], "uv_size": [0.25, 0.25]}, @@ -10417,535 +10422,6 @@ "parent": "hidden2", "pivot": [0.02817, 4.32466, -3.73459] }, - { - "name": "Cross", - "parent": "0", - "pivot": [0, 5.06719, -96] - }, - { - "name": "Cross1", - "parent": "Cross", - "pivot": [0, 5.06719, -96], - "cubes": [ - { - "origin": [-0.20958, 4.85761, -96], - "size": [0.41917, 0.41917, 0], - "uv": { - "south": {"uv": [80.2627, 62.97217], "uv_size": [16.25, 16.25]} - } - } - ] - }, - { - "name": "Cross2", - "parent": "Cross", - "pivot": [-0.00391, 3.59297, -81], - "cubes": [ - { - "origin": [-1.50004, 2.26094, -81], - "size": [2.99228, 2.66406, 0], - "uv": { - "south": {"uv": [80.2627, 99.47217], "uv_size": [175.5, 156.25]} - } - } - ] - }, - { - "name": "CrossAlt", - "parent": "Cross", - "pivot": [0, 5.95391, -96], - "cubes": [ - { - "origin": [-0.36509, 5.58882, -96], - "size": [0.73019, 0.73019, 0], - "uv": { - "south": {"uv": [100.0127, 61.72217], "uv_size": [16.25, 16.25]} - } - } - ] - }, - { - "name": "Cross3", - "parent": "Cross", - "pivot": [0, 4.63984, -240.76641], - "cubes": [ - { - "origin": [-0.03649, -5.17556, -240.76641], - "size": [0.07299, 9.5308, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-5.03649, -0.17556, -240.76641], - "size": [0.07299, 9.5308, 0], - "pivot": [-5, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "east": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "south": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "west": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "up": {"uv": [80.75, 105], "uv_size": [0.25, -0.25]}, - "down": {"uv": [80.75, 105], "uv_size": [0.25, -0.25]} - } - }, - { - "origin": [-0.04821, 4.35508, -240.76641], - "size": [0.09642, 0.56953, 0], - "uv": { - "south": {"uv": [107.25, 70.75], "uv_size": [-1.75, 2.25]} - } - }, - { - "origin": [-0.04821, 4.35508, -240.76641], - "size": [0.09642, 0.56953, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "south": {"uv": [107.25, 70.75], "uv_size": [-1.75, 2.25]} - } - }, - { - "origin": [-0.03649, -5.17556, -240.76641], - "size": [0.07299, 9.5308, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -180], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.03649, -5.17556, -240.76641], - "size": [0.07299, 9.5308, 0], - "uv": { - "north": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "east": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "south": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "west": {"uv": [81, 104.75], "uv_size": [-0.25, 0.25]}, - "up": {"uv": [80.75, 105], "uv_size": [0.25, -0.25]}, - "down": {"uv": [80.75, 105], "uv_size": [0.25, -0.25]} - } - }, - { - "origin": [-0.06892, -5.17556, -240.76641], - "size": [0.13783, 4, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.06892, -5.17556, -240.76641], - "size": [0.13783, 4, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.06892, -5.17556, -240.76641], - "size": [0.13393, 4, 0], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.06892, -5.17556, -240.76641], - "size": [0.13393, 4, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -180], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 3.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 2.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 1.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 0.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 0.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 3.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 2.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 1.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - } - ] - }, - { - "name": "bone120", - "parent": "Cross3", - "pivot": [0, 4.63984, -240.76641], - "cubes": [ - { - "origin": [-0.05329, 3.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 3.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 2.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 1.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 0.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 0.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 1.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 2.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - } - ] - }, - { - "name": "bone121", - "parent": "Cross3", - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "cubes": [ - { - "origin": [-0.05329, 3.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 3.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 2.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 1.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 0.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, 90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 0.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 1.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - }, - { - "origin": [-0.05329, 2.49788, -240.76641], - "size": [0.10658, 0.07656, 0], - "pivot": [0, 4.63984, -240.76641], - "rotation": [0, 0, -90], - "uv": { - "north": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "east": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "south": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "west": {"uv": [80.75, 104.75], "uv_size": [0.25, 0.25]}, - "up": {"uv": [81, 105], "uv_size": [-0.25, -0.25]}, - "down": {"uv": [81, 105], "uv_size": [-0.25, -0.25]} - } - } - ] - }, { "name": "Tuoxin", "parent": "0", diff --git a/src/main/resources/assets/superbwarfare/textures/crosshair/delta.png b/src/main/resources/assets/superbwarfare/textures/crosshair/delta.png new file mode 100644 index 000000000..5ef98d5b3 Binary files /dev/null and b/src/main/resources/assets/superbwarfare/textures/crosshair/delta.png differ diff --git a/src/main/resources/assets/superbwarfare/textures/crosshair/hamr.png b/src/main/resources/assets/superbwarfare/textures/crosshair/hamr.png new file mode 100644 index 000000000..aeac5ad6a Binary files /dev/null and b/src/main/resources/assets/superbwarfare/textures/crosshair/hamr.png differ diff --git a/src/main/resources/assets/superbwarfare/textures/crosshair/sniper.png b/src/main/resources/assets/superbwarfare/textures/crosshair/sniper.png new file mode 100644 index 000000000..c5858576d Binary files /dev/null and b/src/main/resources/assets/superbwarfare/textures/crosshair/sniper.png differ diff --git a/src/main/resources/assets/superbwarfare/textures/item/m4.png b/src/main/resources/assets/superbwarfare/textures/item/m4.png index 4a9e4f520..f46deced5 100644 Binary files a/src/main/resources/assets/superbwarfare/textures/item/m4.png and b/src/main/resources/assets/superbwarfare/textures/item/m4.png differ