“改了一大坨”
This commit is contained in:
parent
e79812eff6
commit
5a6a08d753
66 changed files with 5040 additions and 2732 deletions
|
@ -112,8 +112,6 @@ public class AK12ItemModel extends GeoModel<AK12Item> {
|
||||||
scope2.setScaleZ(1f - (0.3f * (float) zp));
|
scope2.setScaleZ(1f - (0.3f * (float) zp));
|
||||||
scope3.setScaleZ(1f - (0.7f * (float) zp));
|
scope3.setScaleZ(1f - (0.7f * (float) zp));
|
||||||
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 1.85));
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
shen = getAnimationProcessor().getBone("fireRootNormal");
|
shen = getAnimationProcessor().getBone("fireRootNormal");
|
||||||
|
|
|
@ -114,11 +114,6 @@ public class AK47ItemModel extends GeoModel<AK47Item> {
|
||||||
scope2.setScaleZ(1f - (0.3f * (float) zp));
|
scope2.setScaleZ(1f - (0.3f * (float) zp));
|
||||||
scope3.setScaleZ(1f - (0.7f * (float) zp));
|
scope3.setScaleZ(1f - (0.7f * (float) zp));
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
shen = getAnimationProcessor().getBone("fireRootNormal");
|
shen = getAnimationProcessor().getBone("fireRootNormal");
|
||||||
|
|
|
@ -105,11 +105,6 @@ public class BocekItemModel extends GeoModel<BocekItem> {
|
||||||
r.setScaleZ(1f - (0.31f * (float) zp));
|
r.setScaleZ(1f - (0.31f * (float) zp));
|
||||||
shen.setRotZ(60 * Mth.DEG_TO_RAD * (float) zp + (float) (0.05f * zpz) - 0.2f);
|
shen.setRotZ(60 * Mth.DEG_TO_RAD * (float) zp + (float) (0.05f * zpz) - 0.2f);
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !((shen_pos.getPosX() < -0.6 && gun.getPosZ() < -2)));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
fire.setPosX((float) (0.75f * ClientEventHandler.recoilHorizon * fpz * fp));
|
fire.setPosX((float) (0.75f * ClientEventHandler.recoilHorizon * fpz * fp));
|
||||||
fire.setPosY((float) (-0.03f * fp - 0.06f * fr));
|
fire.setPosY((float) (-0.03f * fp - 0.06f * fr));
|
||||||
fire.setPosZ((float) (0.625 * fp + 0.34f * fr + 0.95 * fpz));
|
fire.setPosZ((float) (0.625 * fp + 0.34f * fr + 0.95 * fpz));
|
||||||
|
|
|
@ -72,12 +72,6 @@ public class DevotionItemModel extends GeoModel<DevotionItem> {
|
||||||
gun.setScaleZ(1f - (0.7f * (float) zp));
|
gun.setScaleZ(1f - (0.7f * (float) zp));
|
||||||
|
|
||||||
GeoBone shen = getAnimationProcessor().getBone("shen");
|
GeoBone shen = getAnimationProcessor().getBone("shen");
|
||||||
GeoBone holo = getAnimationProcessor().getBone("holo");
|
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
||||||
shen.setPosY((float) (0.15f * fp + 0.18f * fr));
|
shen.setPosY((float) (0.15f * fp + 0.18f * fr));
|
||||||
|
|
|
@ -109,9 +109,6 @@ public class Hk416ItemModel extends GeoModel<Hk416Item> {
|
||||||
scope3.setScaleZ(1f - (0.5f * (float) zp));
|
scope3.setScaleZ(1f - (0.5f * (float) zp));
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 3.1));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
|
|
|
@ -68,11 +68,6 @@ public class InsidiousItemModel extends GeoModel<InsidiousItem> {
|
||||||
gun.setPosZ(6.2f * (float) zp + (float) (0.5f * zpz));
|
gun.setPosZ(6.2f * (float) zp + (float) (0.5f * zpz));
|
||||||
gun.setScaleZ(1f - (0.82f * (float) zp));
|
gun.setScaleZ(1f - (0.82f * (float) zp));
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 3));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone shen = getAnimationProcessor().getBone("fireRootNormal");
|
GeoBone shen = getAnimationProcessor().getBone("fireRootNormal");
|
||||||
|
|
||||||
fireRotY = (float) Mth.lerp(0.3f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
|
fireRotY = (float) Mth.lerp(0.3f * times, fireRotY, 0.2f * ClientEventHandler.recoilHorizon * fpz);
|
||||||
|
|
|
@ -66,12 +66,7 @@ public class JavelinItemModel extends GeoModel<JavelinItem> {
|
||||||
gun.setScaleZ(1f - (0.8f * (float) zp));
|
gun.setScaleZ(1f - (0.8f * (float) zp));
|
||||||
gun.setRotZ(-4.75f * Mth.DEG_TO_RAD * (float) zp + (float) (0.02f * zpz));
|
gun.setRotZ(-4.75f * Mth.DEG_TO_RAD * (float) zp + (float) (0.02f * zpz));
|
||||||
|
|
||||||
javelin.setHidden(gun.getPosZ() > 15.85);
|
javelin.setHidden(zp > 0.8);
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosZ() > 15.85));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
shen.setPosX((float) (0.75f * ClientEventHandler.recoilHorizon * fpz * fp));
|
shen.setPosX((float) (0.75f * ClientEventHandler.recoilHorizon * fpz * fp));
|
||||||
shen.setPosY((float) (-0.03f * fp - 0.06f * fr));
|
shen.setPosY((float) (-0.03f * fp - 0.06f * fr));
|
||||||
|
|
|
@ -130,11 +130,6 @@ public class M4ItemModel extends GeoModel<M4Item> {
|
||||||
button6.setScaleX(1f - (0.5f * (float) zp));
|
button6.setScaleX(1f - (0.5f * (float) zp));
|
||||||
button7.setScaleX(1f - (0.5f * (float) zp));
|
button7.setScaleX(1f - (0.5f * (float) zp));
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 2.385));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
if (type == 3 && zt > 0.5) {
|
if (type == 3 && zt > 0.5) {
|
||||||
lh.setPosY((float) (-zt * 4));
|
lh.setPosY((float) (-zt * 4));
|
||||||
}
|
}
|
||||||
|
|
|
@ -88,9 +88,6 @@ public class M98bItemModel extends GeoModel<M98bItem> {
|
||||||
gun.setRotZ((float) (0.02f * zpz));
|
gun.setRotZ((float) (0.02f * zpz));
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone root = getAnimationProcessor().getBone("root");
|
GeoBone root = getAnimationProcessor().getBone("root");
|
||||||
GeoBone zhunxing = getAnimationProcessor().getBone("shi");
|
GeoBone zhunxing = getAnimationProcessor().getBone("shi");
|
||||||
|
|
|
@ -8,7 +8,6 @@ import com.atsuishio.superbwarfare.init.ModTags;
|
||||||
import com.atsuishio.superbwarfare.item.gun.data.AttachmentType;
|
import com.atsuishio.superbwarfare.item.gun.data.AttachmentType;
|
||||||
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
||||||
import com.atsuishio.superbwarfare.item.gun.rifle.Mk14Item;
|
import com.atsuishio.superbwarfare.item.gun.rifle.Mk14Item;
|
||||||
import com.atsuishio.superbwarfare.tools.GunsTool;
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.util.Mth;
|
import net.minecraft.util.Mth;
|
||||||
|
@ -141,9 +140,6 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
|
||||||
action.setPosZ(2.5f * (float) fp);
|
action.setPosZ(2.5f * (float) fp);
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 2.5));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone root = getAnimationProcessor().getBone("root");
|
GeoBone root = getAnimationProcessor().getBone("root");
|
||||||
root.setPosX((float) (movePosX + 20 * ClientEventHandler.drawTime + 9.3f * mph));
|
root.setPosX((float) (movePosX + 20 * ClientEventHandler.drawTime + 9.3f * mph));
|
||||||
|
@ -170,7 +166,7 @@ public class Mk14ItemModel extends GeoModel<Mk14Item> {
|
||||||
|
|
||||||
GeoBone shell = getAnimationProcessor().getBone("shell");
|
GeoBone shell = getAnimationProcessor().getBone("shell");
|
||||||
|
|
||||||
if (GunsTool.getGunBooleanTag(tag, "HoldOpen")) {
|
if (data.data().getBoolean("HoldOpen")) {
|
||||||
action.setPosZ(2.5f);
|
action.setPosZ(2.5f);
|
||||||
shell.setScaleX(0);
|
shell.setScaleX(0);
|
||||||
shell.setScaleY(0);
|
shell.setScaleY(0);
|
||||||
|
|
|
@ -86,9 +86,6 @@ public class MosinNagantItemModel extends GeoModel<MosinNagantItem> {
|
||||||
}
|
}
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
final var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 1.4));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
||||||
shen.setPosY((float) (0.4f * fp + 0.44f * fr));
|
shen.setPosY((float) (0.4f * fp + 0.44f * fr));
|
||||||
|
|
|
@ -47,9 +47,6 @@ public class Ntw20Model extends GeoModel<Ntw20Item> {
|
||||||
GeoBone scope = getAnimationProcessor().getBone("Scope1");
|
GeoBone scope = getAnimationProcessor().getBone("Scope1");
|
||||||
GeoBone scope2 = getAnimationProcessor().getBone("Scope2");
|
GeoBone scope2 = getAnimationProcessor().getBone("Scope2");
|
||||||
GeoBone scope3 = getAnimationProcessor().getBone("Scope3");
|
GeoBone scope3 = getAnimationProcessor().getBone("Scope3");
|
||||||
GeoBone cross1 = getAnimationProcessor().getBone("Cross1");
|
|
||||||
GeoBone cross2 = getAnimationProcessor().getBone("Cross2");
|
|
||||||
GeoBone cross3 = getAnimationProcessor().getBone("Cross3");
|
|
||||||
|
|
||||||
Player player = Minecraft.getInstance().player;
|
Player player = Minecraft.getInstance().player;
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
|
@ -138,10 +135,6 @@ public class Ntw20Model extends GeoModel<Ntw20Item> {
|
||||||
CrossHairOverlay.gunRot = shen.getRotZ();
|
CrossHairOverlay.gunRot = shen.getRotZ();
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 4.3));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
action.setPosZ(3f * (float) ClientEventHandler.actionMove);
|
action.setPosZ(3f * (float) ClientEventHandler.actionMove);
|
||||||
lh.setPosZ(-3f * (float) ClientEventHandler.actionMove);
|
lh.setPosZ(-3f * (float) ClientEventHandler.actionMove);
|
||||||
|
|
||||||
|
|
|
@ -125,8 +125,6 @@ public class Qbz95ItemModel extends GeoModel<Qbz95Item> {
|
||||||
button3.setScaleX(1f - (0.5f * (float) zp));
|
button3.setScaleX(1f - (0.5f * (float) zp));
|
||||||
button6.setScaleX(1f - (0.8f * (float) zp));
|
button6.setScaleX(1f - (0.8f * (float) zp));
|
||||||
|
|
||||||
tag.putBoolean("HoloHidden", gun.getPosX() < 3.1);
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
shen = getAnimationProcessor().getBone("fireRootNormal");
|
shen = getAnimationProcessor().getBone("fireRootNormal");
|
||||||
|
|
|
@ -19,10 +19,6 @@ import software.bernie.geckolib.model.GeoModel;
|
||||||
|
|
||||||
public class RpkItemModel extends GeoModel<RpkItem> {
|
public class RpkItemModel extends GeoModel<RpkItem> {
|
||||||
|
|
||||||
public static float scopeY = 0.2f;
|
|
||||||
public static float scaleZAlt = 0.74f;
|
|
||||||
public static float posZAlt = 4.25f;
|
|
||||||
|
|
||||||
public static float fireRotY = 0f;
|
public static float fireRotY = 0f;
|
||||||
public static float fireRotZ = 0f;
|
public static float fireRotZ = 0f;
|
||||||
|
|
||||||
|
@ -47,8 +43,9 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
||||||
GeoBone scope = getAnimationProcessor().getBone("Scope1");
|
GeoBone scope = getAnimationProcessor().getBone("Scope1");
|
||||||
GeoBone button = getAnimationProcessor().getBone("button");
|
GeoBone button = getAnimationProcessor().getBone("button");
|
||||||
GeoBone scope2 = getAnimationProcessor().getBone("Scope2");
|
GeoBone scope2 = getAnimationProcessor().getBone("Scope2");
|
||||||
// GeoBone scope3 = getAnimationProcessor().getBone("Scope3");
|
GeoBone base = getAnimationProcessor().getBone("base");
|
||||||
// GeoBone cross3 = getAnimationProcessor().getBone("Cross3");
|
GeoBone bone171 = getAnimationProcessor().getBone("bone171");
|
||||||
|
GeoBone scope3 = getAnimationProcessor().getBone("Scope3");
|
||||||
GeoBone shuan = getAnimationProcessor().getBone("shuan");
|
GeoBone shuan = getAnimationProcessor().getBone("shuan");
|
||||||
|
|
||||||
Player player = Minecraft.getInstance().player;
|
Player player = Minecraft.getInstance().player;
|
||||||
|
@ -77,10 +74,6 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
var tag = data.tag();
|
||||||
int type = GunData.from(stack).attachment.get(AttachmentType.SCOPE);
|
int type = GunData.from(stack).attachment.get(AttachmentType.SCOPE);
|
||||||
scopeY = Mth.lerp(times, scopeY, tag.getBoolean("ScopeAlt") ? -0.7f : 0.2f);
|
|
||||||
scaleZAlt = Mth.lerp(times, scaleZAlt, tag.getBoolean("ScopeAlt") ? 0.45f : 0.74f);
|
|
||||||
posZAlt = Mth.lerp(times, posZAlt, tag.getBoolean("ScopeAlt") ? 3.3f : 4.25f);
|
|
||||||
|
|
||||||
|
|
||||||
float posYAlt = switch (type) {
|
float posYAlt = switch (type) {
|
||||||
case 2, 3 -> 0.5f;
|
case 2, 3 -> 0.5f;
|
||||||
|
@ -89,21 +82,21 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
||||||
float posY = switch (type) {
|
float posY = switch (type) {
|
||||||
case 0 -> 1.071f;
|
case 0 -> 1.071f;
|
||||||
case 1 -> -0.101f;
|
case 1 -> -0.101f;
|
||||||
case 2 -> scopeY + posYAlt;
|
case 2 -> 0.11f + posYAlt;
|
||||||
case 3 -> 0.099f + posYAlt;
|
case 3 -> 0.099f + posYAlt;
|
||||||
default -> 0f;
|
default -> 0f;
|
||||||
};
|
};
|
||||||
float scaleZ = switch (type) {
|
float scaleZ = switch (type) {
|
||||||
case 0, 1 -> 0.7f;
|
case 0, 1 -> 0.7f;
|
||||||
case 2 -> scaleZAlt;
|
case 2 -> 0.74f;
|
||||||
case 3 -> 0.78f;
|
case 3 -> 0.78f;
|
||||||
default -> 0f;
|
default -> 0f;
|
||||||
};
|
};
|
||||||
float posZ = switch (type) {
|
float posZ = switch (type) {
|
||||||
case 0 -> 3.3f;
|
case 0 -> 3.3f;
|
||||||
case 1 -> 4.2f;
|
case 1 -> 4.2f;
|
||||||
case 2 -> posZAlt;
|
case 2 -> 4.4f;
|
||||||
case 3 -> 3.9f;
|
case 3 -> 4.25f;
|
||||||
default -> 0f;
|
default -> 0f;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -116,10 +109,9 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
||||||
button.setScaleY(1f - (0.3f * (float) zp));
|
button.setScaleY(1f - (0.3f * (float) zp));
|
||||||
button.setScaleZ(1f - (0.3f * (float) zp));
|
button.setScaleZ(1f - (0.3f * (float) zp));
|
||||||
scope2.setScaleZ(1f - (0.7f * (float) zp));
|
scope2.setScaleZ(1f - (0.7f * (float) zp));
|
||||||
// scope3.setScaleZ(1f - (0.7f * (float) zp));
|
base.setScaleZ(1f - (0.4f * (float) zp));
|
||||||
|
bone171.setScaleY(1f - (0.55f * (float) zp));
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 1.8));
|
scope3.setScaleZ(1f - (0.7f * (float) zp));
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
|
@ -170,6 +162,6 @@ public class RpkItemModel extends GeoModel<RpkItem> {
|
||||||
|
|
||||||
AnimationHelper.handleReloadShakeAnimation(stack, main, camera, numR, numP);
|
AnimationHelper.handleReloadShakeAnimation(stack, main, camera, numR, numP);
|
||||||
ClientEventHandler.shake(Mth.RAD_TO_DEG * camera.getRotX(), Mth.RAD_TO_DEG * camera.getRotY(), Mth.RAD_TO_DEG * camera.getRotZ());
|
ClientEventHandler.shake(Mth.RAD_TO_DEG * camera.getRotX(), Mth.RAD_TO_DEG * camera.getRotY(), Mth.RAD_TO_DEG * camera.getRotZ());
|
||||||
// AnimationHelper.handleShellsAnimation(getAnimationProcessor(), 1f, 0.35f);
|
AnimationHelper.handleShellsAnimation(getAnimationProcessor(), 1f, 0.35f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -76,9 +76,6 @@ public class SentinelItemModel extends GeoModel<SentinelItem> {
|
||||||
holo.setPosY(0.09f);
|
holo.setPosY(0.09f);
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", !(gun.getPosX() > 2.4));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
||||||
shen.setPosY((float) (0.4f * fp + 0.44f * fr));
|
shen.setPosY((float) (0.4f * fp + 0.44f * fr));
|
||||||
|
|
|
@ -70,8 +70,7 @@ public class SksItemModel extends GeoModel<SksItem> {
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
var tag = data.tag();
|
||||||
tag.putBoolean("HoloHidden", gun.getPosX() <= 1.2);
|
|
||||||
data.save();
|
|
||||||
GeoBone shen = getAnimationProcessor().getBone("shen");
|
GeoBone shen = getAnimationProcessor().getBone("shen");
|
||||||
|
|
||||||
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
shen.setPosX((float) (0.95f * ClientEventHandler.recoilHorizon * fpz * fp));
|
||||||
|
|
|
@ -113,8 +113,6 @@ public class SvdItemModel extends GeoModel<SvdItem> {
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
var tag = data.tag();
|
||||||
tag.putBoolean("HoloHidden", gun.getPosX() <= 1.4);
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
|
|
|
@ -153,11 +153,6 @@ public class TracheliumItemModel extends GeoModel<Trachelium> {
|
||||||
|
|
||||||
CrossHairOverlay.gunRot = shen.getRotZ();
|
CrossHairOverlay.gunRot = shen.getRotZ();
|
||||||
|
|
||||||
var data = GunData.from(stack);
|
|
||||||
var tag = data.tag();
|
|
||||||
tag.putBoolean("HoloHidden", (gun.getPosX() <= 3 || Mth.abs(shen.getRotX()) > (scopeType == 2 ? 3 : 1) * Mth.DEG_TO_RAD || Mth.abs(main.getRotX()) > (scopeType == 2 ? 5.7 : 1) * Mth.DEG_TO_RAD || Mth.abs(main.getRotY()) > 3 * Mth.DEG_TO_RAD));
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
hammer.setRotX(50 * Mth.DEG_TO_RAD * (float) ClientEventHandler.revolverPreTime);
|
hammer.setRotX(50 * Mth.DEG_TO_RAD * (float) ClientEventHandler.revolverPreTime);
|
||||||
lun.setRotZ(-60 * Mth.DEG_TO_RAD * (float) ClientEventHandler.revolverWheelPreTime);
|
lun.setRotZ(-60 * Mth.DEG_TO_RAD * (float) ClientEventHandler.revolverWheelPreTime);
|
||||||
GeoBone ammo = getAnimationProcessor().getBone("ammo");
|
GeoBone ammo = getAnimationProcessor().getBone("ammo");
|
||||||
|
|
|
@ -100,9 +100,6 @@ public class VectorItemModel extends GeoModel<VectorItem> {
|
||||||
gun.setScaleZ(1f - (0.5f * (float) zp));
|
gun.setScaleZ(1f - (0.5f * (float) zp));
|
||||||
scope.setScaleZ(1f - (0.2f * (float) zp));
|
scope.setScaleZ(1f - (0.2f * (float) zp));
|
||||||
|
|
||||||
tag.putBoolean("HoloHidden", gun.getPosX() <= 2);
|
|
||||||
data.save();
|
|
||||||
|
|
||||||
GeoBone shen;
|
GeoBone shen;
|
||||||
if (zt < 0.5) {
|
if (zt < 0.5) {
|
||||||
shen = getAnimationProcessor().getBone("fireRootNormal");
|
shen = getAnimationProcessor().getBone("fireRootNormal");
|
||||||
|
|
|
@ -107,7 +107,7 @@ public class CrossHairOverlay {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stack.is(ModItems.BOCEK.get())) {
|
if (stack.is(ModItems.BOCEK.get())) {
|
||||||
if (NBTTool.getTag(stack).getBoolean("HoloHidden")) {
|
if (ClientEventHandler.zoomPos < 0.7) {
|
||||||
preciseBlit(guiGraphics, Mod.loc("textures/screens/point.png"), w / 2f - 7.5f + moveX, h / 2f - 7.5f + moveY, 0, 0, 16, 16, 16, 16);
|
preciseBlit(guiGraphics, Mod.loc("textures/screens/point.png"), w / 2f - 7.5f + moveX, h / 2f - 7.5f + moveY, 0, 0, 16, 16, 16, 16);
|
||||||
if (!player.isSprinting() || player.getPersistentData().getDouble("noRun") > 0 || ClientEventHandler.pullPos > 0) {
|
if (!player.isSprinting() || player.getPersistentData().getDouble("noRun") > 0 || ClientEventHandler.pullPos > 0) {
|
||||||
if (ClientEventHandler.zoomTime < 0.1) {
|
if (ClientEventHandler.zoomTime < 0.1) {
|
||||||
|
|
|
@ -56,7 +56,7 @@ public class JavelinHudOverlay {
|
||||||
if (player.getVehicle() instanceof ArmedVehicleEntity iArmedVehicle && iArmedVehicle.banHand(player))
|
if (player.getVehicle() instanceof ArmedVehicleEntity iArmedVehicle && iArmedVehicle.banHand(player))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ((stack.getItem() == ModItems.JAVELIN.get() && !NBTTool.getTag(stack).getBoolean("HoloHidden")) && Minecraft.getInstance().options.getCameraType().isFirstPerson() && ClientEventHandler.zoom) {
|
if ((stack.getItem() == ModItems.JAVELIN.get() && ClientEventHandler.zoomPos > 0.8) && Minecraft.getInstance().options.getCameraType().isFirstPerson() && ClientEventHandler.zoom) {
|
||||||
var data = GunData.from(stack);
|
var data = GunData.from(stack);
|
||||||
var tag = data.tag();
|
var tag = data.tag();
|
||||||
|
|
||||||
|
|
|
@ -81,33 +81,28 @@ public class AK12ItemRenderer extends GeoItemRenderer<AK12Item> {
|
||||||
if (player != null) {
|
if (player != null) {
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 && data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 && data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 && data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("hidden2"))) {
|
&& (name.equals("hidden2"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("jing") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
&& (name.equals("jing") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -81,23 +81,18 @@ public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
|
||||||
if (player != null) {
|
if (player != null) {
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 && data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 && data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 && data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("humu1")) {
|
if (name.equals("humu1")) {
|
||||||
|
@ -109,14 +104,14 @@ public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("Hidden") || name.equals("gun") || name.equals("Lefthand")) && ClientEventHandler.zoom && !NBTTool.getTag(itemStack).getBoolean("HoloHidden")) {
|
&& (name.equals("Hidden") || name.equals("gun") || name.equals("Lefthand")) && ClientEventHandler.zoom && ClientEventHandler.zoomPos > 0.7) {
|
||||||
bone.setHidden(true);
|
bone.setHidden(true);
|
||||||
renderingArms = false;
|
renderingArms = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("jing") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
&& (name.equals("jing") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -82,7 +82,7 @@ public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
|
||||||
|
|
||||||
final var tag = NBTTool.getTag(itemStack);
|
final var tag = NBTTool.getTag(itemStack);
|
||||||
if (name.equals("holo")) {
|
if (name.equals("holo")) {
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || ClientEventHandler.pullPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("arrow")) {
|
if (name.equals("arrow")) {
|
||||||
|
|
|
@ -91,7 +91,7 @@ public class DevotionItemRenderer extends GeoItemRenderer<DevotionItem> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("holo")) {
|
if (name.equals("holo")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (renderingArms) {
|
if (renderingArms) {
|
||||||
|
|
|
@ -8,7 +8,6 @@ import com.atsuishio.superbwarfare.init.ModTags;
|
||||||
import com.atsuishio.superbwarfare.item.gun.data.AttachmentType;
|
import com.atsuishio.superbwarfare.item.gun.data.AttachmentType;
|
||||||
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
||||||
import com.atsuishio.superbwarfare.item.gun.rifle.Hk416Item;
|
import com.atsuishio.superbwarfare.item.gun.rifle.Hk416Item;
|
||||||
import com.atsuishio.superbwarfare.tools.NBTTool;
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
|
@ -81,33 +80,28 @@ public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("hidden"))) {
|
&& (name.equals("hidden"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("jing") || name.equals("Barrel") || name.equals("yugu") || name.equals("qiangguan"))) {
|
&& (name.equals("jing") || name.equals("Barrel") || name.equals("yugu") || name.equals("qiangguan"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -101,7 +101,7 @@ public class InsidiousItemRenderer extends GeoItemRenderer<InsidiousItem> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("cross")) {
|
if (name.equals("cross")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (renderingArms) {
|
if (renderingArms) {
|
||||||
|
|
|
@ -81,40 +81,35 @@ public class M4ItemRenderer extends GeoItemRenderer<M4Item> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
||||||
|| NBTTool.getTag(itemStack).getBoolean("ScopeAlt"));
|
|| NBTTool.getTag(itemStack).getBoolean("ScopeAlt"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("CrossAlt")) {
|
if (name.equals("CrossAlt")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
||||||
|| !(NBTTool.getTag(itemStack).getBoolean("ScopeAlt")));
|
|| !(NBTTool.getTag(itemStack).getBoolean("ScopeAlt")));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && !NBTTool.getTag(itemStack).getBoolean("ScopeAlt") && (name.equals("hidden"))) {
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && !NBTTool.getTag(itemStack).getBoolean("ScopeAlt") && (name.equals("hidden"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("hidden2") || name.equals("yugu") || name.equals("qiangguan") || name.equals("Barrel"))) {
|
&& (name.equals("hidden2") || name.equals("yugu") || name.equals("qiangguan") || name.equals("Barrel"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -91,11 +91,11 @@ public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("scope2")) {
|
if (name.equals("scope2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("qiang")) {
|
if (name.equals("qiang")) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden"));
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (renderingArms) {
|
if (renderingArms) {
|
||||||
|
|
|
@ -81,37 +81,32 @@ public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("qiaojia")) {
|
if (name.equals("qiaojia")) {
|
||||||
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 0);
|
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("hidden"))) {
|
&& (name.equals("hidden"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("jing") || name.equals("yugu") || name.equals("qiangguan") || name.equals("Barrel"))) {
|
&& (name.equals("jing") || name.equals("yugu") || name.equals("qiangguan") || name.equals("Barrel"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -80,11 +80,11 @@ public class MosinNagantItemRenderer extends GeoItemRenderer<MosinNagantItem> {
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
|
||||||
if (name.equals("rex")) {
|
if (name.equals("rex")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("jia") || name.equals("b1") || name.equals("b2")) {
|
if (name.equals("jia") || name.equals("b1") || name.equals("b2")) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden"));
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -81,37 +81,32 @@ public class Ntw20Renderer extends GeoItemRenderer<Ntw20Item> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("ironSight")) {
|
if (name.equals("ironSight")) {
|
||||||
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 0);
|
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("bone1") || name.equals("zhituiqi") || name.equals("guan") || name.equals("hidden"))) {
|
&& (name.equals("bone1") || name.equals("zhituiqi") || name.equals("guan") || name.equals("hidden"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("bone1") || name.equals("zhituiqi") || name.equals("guan") || name.equals("jing") || name.equals("rail") || name.equals("base2") || name.equals("guan7"))) {
|
&& (name.equals("bone1") || name.equals("zhituiqi") || name.equals("guan") || name.equals("jing") || name.equals("rail") || name.equals("base2") || name.equals("guan7"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -81,11 +81,10 @@ public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("tiba")) {
|
if (name.equals("tiba")) {
|
||||||
|
@ -101,25 +100,21 @@ public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("hidden"))) {
|
&& (name.equals("hidden"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("hidden2") || name.equals("jimiao2"))) {
|
&& (name.equals("hidden2") || name.equals("jimiao2"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -8,6 +8,7 @@ import com.atsuishio.superbwarfare.init.ModTags;
|
||||||
import com.atsuishio.superbwarfare.item.gun.data.AttachmentType;
|
import com.atsuishio.superbwarfare.item.gun.data.AttachmentType;
|
||||||
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
||||||
import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem;
|
import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem;
|
||||||
|
import com.atsuishio.superbwarfare.tools.GunsTool;
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.mojang.blaze3d.vertex.VertexConsumer;
|
import com.mojang.blaze3d.vertex.VertexConsumer;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
|
@ -80,35 +81,19 @@ public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
var tag = GunData.from(itemStack).tag();
|
var tag = GunData.from(itemStack).tag();
|
||||||
|
|
||||||
if (name.equals("holo")) {
|
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
|
||||||
}
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
|
||||||
|| tag.getBoolean("ScopeAlt"));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (name.equals("CrossAlt")) {
|
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden")
|
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
|
||||||
|| !(tag.getBoolean("ScopeAlt")));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross3")) {
|
if (name.equals("Cross3")) {
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 3);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("humu1")) {
|
if (name.equals("humu1")) {
|
||||||
|
@ -119,14 +104,14 @@ public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
|
||||||
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.GRIP) == 0);
|
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.GRIP) == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && !tag.getBoolean("ScopeAlt")
|
if (data.attachment.get(AttachmentType.SCOPE) == 2
|
||||||
&& (name.equals("glass") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan"))) {
|
&& (name.equals("hide2") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
||||||
bone.setHidden(!tag.getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3
|
if (data.attachment.get(AttachmentType.SCOPE) == 3
|
||||||
&& (name.equals("jing") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
&& (name.equals("jing") || name.equals("Barrel") || name.equals("humu") || name.equals("qiangguan") || name.equals("houzhunxing"))) {
|
||||||
bone.setHidden(!tag.getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
@ -138,6 +123,11 @@ public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
|
||||||
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
|
bone.setScaleY((float) (0.55 + 0.5 * (Math.random() - 0.5)));
|
||||||
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
|
bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
|
||||||
}
|
}
|
||||||
|
if ((data.attachment.get(AttachmentType.SCOPE) == 2 || data.attachment.get(AttachmentType.SCOPE) == 3) && ClientEventHandler.zoom) {
|
||||||
|
bone.setPosY(-2);
|
||||||
|
} else {
|
||||||
|
bone.setPosY(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
|
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@ public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("holo")) {
|
if (name.equals("holo")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
var cap = itemStack.getCapability(Capabilities.EnergyStorage.ITEM);
|
var cap = itemStack.getCapability(Capabilities.EnergyStorage.ITEM);
|
||||||
|
|
|
@ -80,7 +80,7 @@ public class SksItemRenderer extends GeoItemRenderer<SksItem> {
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
|
||||||
if (name.equals("holo")) {
|
if (name.equals("holo")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || !ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("flare")) {
|
if (name.equals("flare")) {
|
||||||
|
|
|
@ -81,25 +81,22 @@ public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("mount")) {
|
if (name.equals("mount")) {
|
||||||
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 0 || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2);
|
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 0 || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3)
|
if ((GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 3)
|
||||||
&& (name.equals("Hidden2") || name.equals("Hidden") || name.equals("gun") || name.equals("bolt") || name.equals("Lefthand") || name.equals("Barrel") || name.equals("bipod") || name.equals("mount")) && ClientEventHandler.zoom && !NBTTool.getTag(itemStack).getBoolean("HoloHidden")) {
|
&& (name.equals("Hidden2") || name.equals("Hidden") || name.equals("gun") || name.equals("bolt") || name.equals("Lefthand") || name.equals("Barrel") || name.equals("bipod") || name.equals("mount")) && ClientEventHandler.zoom && ClientEventHandler.zoomPos > 0.7) {
|
||||||
bone.setHidden(true);
|
bone.setHidden(true);
|
||||||
renderingArms = false;
|
renderingArms = false;
|
||||||
}
|
}
|
||||||
|
@ -108,7 +105,7 @@ public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
|
||||||
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5 || GunData.from(itemStack).attachment.get(AttachmentType.BARREL) == 2 || GunData.from(itemStack).attachment.get(AttachmentType.BARREL) == 3) {
|
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5 || GunData.from(itemStack).attachment.get(AttachmentType.BARREL) == 2 || GunData.from(itemStack).attachment.get(AttachmentType.BARREL) == 3) {
|
||||||
bone.setHidden(true);
|
bone.setHidden(true);
|
||||||
} else {
|
} else {
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && ClientEventHandler.zoom && !NBTTool.getTag(itemStack).getBoolean("HoloHidden")) {
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && ClientEventHandler.zoom && ClientEventHandler.zoomPos > 0.7) {
|
||||||
bone.setPosY(-2f);
|
bone.setPosY(-2f);
|
||||||
}
|
}
|
||||||
bone.setHidden(false);
|
bone.setHidden(false);
|
||||||
|
|
|
@ -83,6 +83,7 @@ public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("humu")) {
|
if (name.equals("humu")) {
|
||||||
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 0 && GunData.from(itemStack).attachment.get(AttachmentType.GRIP) == 0);
|
bone.setHidden(GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 0 && GunData.from(itemStack).attachment.get(AttachmentType.GRIP) == 0);
|
||||||
|
@ -101,27 +102,24 @@ public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
||||||
|| NBTTool.getTag(itemStack).getBoolean("ScopeAlt"));
|
|| NBTTool.getTag(itemStack).getBoolean("ScopeAlt"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("CrossAlt")) {
|
if (name.equals("CrossAlt")) {
|
||||||
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7
|
||||||
|| !ClientEventHandler.zoom
|
|| !ClientEventHandler.zoom
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2
|
||||||
|| !(NBTTool.getTag(itemStack).getBoolean("ScopeAlt")));
|
|| !(NBTTool.getTag(itemStack).getBoolean("ScopeAlt")));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && !NBTTool.getTag(itemStack).getBoolean("ScopeAlt") && (name.equals("hidden"))) {
|
if (GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) == 2 && !NBTTool.getTag(itemStack).getBoolean("ScopeAlt") && (name.equals("hidden"))) {
|
||||||
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden") && ClientEventHandler.zoom);
|
bone.setHidden(ClientEventHandler.zoomPos > 0.7 && ClientEventHandler.zoom);
|
||||||
}
|
}
|
||||||
|
|
||||||
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
|
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
|
||||||
|
|
|
@ -85,18 +85,14 @@ public class VectorItemRenderer extends GeoItemRenderer<VectorItem> {
|
||||||
ItemStack itemStack = player.getMainHandItem();
|
ItemStack itemStack = player.getMainHandItem();
|
||||||
if (!itemStack.is(ModTags.Items.GUN)) return;
|
if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
|
|
||||||
var tag = NBTTool.getTag(itemStack);
|
var data = GunData.from(itemStack);
|
||||||
|
|
||||||
if (name.equals("Cross1")) {
|
if (name.equals("Cross1")) {
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("Cross2")) {
|
if (name.equals("Cross2")) {
|
||||||
bone.setHidden(tag.getBoolean("HoloHidden")
|
bone.setHidden(ClientEventHandler.zoomPos < 0.7 || data.attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
|| !ClientEventHandler.zoom
|
|
||||||
|| GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name.equals("tuoxin")) {
|
if (name.equals("tuoxin")) {
|
||||||
|
@ -142,13 +138,13 @@ public class VectorItemRenderer extends GeoItemRenderer<VectorItem> {
|
||||||
// if (!itemStack.is(ModTags.Items.GUN)) return;
|
// if (!itemStack.is(ModTags.Items.GUN)) return;
|
||||||
//
|
//
|
||||||
// if (name.equals("Cross1")) {
|
// if (name.equals("Cross1")) {
|
||||||
// bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
// bone.setHidden(ClientEventHandler.zoomPos < 0.7
|
||||||
// || !ClientEventHandler.zoom
|
// || !ClientEventHandler.zoom
|
||||||
// || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
// || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 1);
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// if (name.equals("Cross2")) {
|
// if (name.equals("Cross2")) {
|
||||||
// bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden")
|
// bone.setHidden(ClientEventHandler.zoomPos < 0.7
|
||||||
// || !ClientEventHandler.zoom
|
// || !ClientEventHandler.zoom
|
||||||
// || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
// || GunData.from(itemStack).attachment.get(AttachmentType.SCOPE) != 2);
|
||||||
// }
|
// }
|
||||||
|
|
|
@ -157,7 +157,7 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt
|
||||||
}
|
}
|
||||||
|
|
||||||
ParticleTool.cannonHitParticles(this.level(), this.position(), this);
|
ParticleTool.cannonHitParticles(this.level(), this.position(), this);
|
||||||
causeExplode(entity);
|
causeExplode(entityHitResult.getLocation());
|
||||||
if (entity instanceof VehicleEntity) {
|
if (entity instanceof VehicleEntity) {
|
||||||
this.discard();
|
this.discard();
|
||||||
}
|
}
|
||||||
|
@ -168,49 +168,55 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt
|
||||||
@Override
|
@Override
|
||||||
public void onHitBlock(@NotNull BlockHitResult blockHitResult) {
|
public void onHitBlock(@NotNull BlockHitResult blockHitResult) {
|
||||||
if (this.level() instanceof ServerLevel) {
|
if (this.level() instanceof ServerLevel) {
|
||||||
int x = blockHitResult.getBlockPos().getX();
|
double x = blockHitResult.getLocation().x;
|
||||||
int y = blockHitResult.getBlockPos().getY();
|
double y = blockHitResult.getLocation().y;
|
||||||
int z = blockHitResult.getBlockPos().getZ();
|
double z = blockHitResult.getLocation().z;
|
||||||
|
|
||||||
BlockState blockState = this.level().getBlockState(BlockPos.containing(x, y, z));
|
if (ExplosionConfig.EXPLOSION_DESTROY.get()) {
|
||||||
if (blockState.is(Blocks.BEDROCK) || blockState.is(Blocks.BARRIER)) {
|
float hardness = this.level().getBlockState(BlockPos.containing(x, y, z)).getBlock().defaultDestroyTime();
|
||||||
this.discard();
|
BlockState blockState = this.level().getBlockState(BlockPos.containing(x, y, z));
|
||||||
causeExplodeBlock(blockHitResult);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
float hardness = this.level().getBlockState(BlockPos.containing(x, y, z)).getBlock().defaultDestroyTime();
|
if (hardness == -1) {
|
||||||
this.durability -= (int) hardness;
|
this.discard();
|
||||||
|
causeExplode(blockHitResult.getLocation());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (ExplosionConfig.EXPLOSION_DESTROY.get() && hardness != -1 && hardness <= 50) {
|
this.durability -= (int) hardness;
|
||||||
BlockPos blockPos = BlockPos.containing(x, y, z);
|
|
||||||
Block.dropResources(this.level().getBlockState(blockPos), this.level(), BlockPos.containing(x, y, z), null);
|
|
||||||
this.level().destroyBlock(blockPos, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (blockState.is(ModBlocks.SANDBAG.get()) || blockState.is(Blocks.NETHERITE_BLOCK)) {
|
if (hardness <= 50) {
|
||||||
this.durability -= 10;
|
BlockPos blockPos = BlockPos.containing(x, y, z);
|
||||||
}
|
Block.dropResources(this.level().getBlockState(blockPos), this.level(), BlockPos.containing(x, y, z), null);
|
||||||
|
this.level().destroyBlock(blockPos, true);
|
||||||
|
}
|
||||||
|
|
||||||
if (blockState.is(Blocks.IRON_BLOCK) || blockState.is(Blocks.COPPER_BLOCK)) {
|
if (blockState.is(ModBlocks.SANDBAG.get()) || blockState.is(Blocks.NETHERITE_BLOCK)) {
|
||||||
this.durability -= 5;
|
this.durability -= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (blockState.is(Blocks.GOLD_BLOCK)) {
|
if (blockState.is(Blocks.IRON_BLOCK) || blockState.is(Blocks.COPPER_BLOCK)) {
|
||||||
this.durability -= 3;
|
this.durability -= 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.durability <= 0) {
|
if (blockState.is(Blocks.GOLD_BLOCK)) {
|
||||||
causeExplodeBlock(blockHitResult);
|
this.durability -= 3;
|
||||||
} else {
|
}
|
||||||
if (ExplosionConfig.EXPLOSION_DESTROY.get()) {
|
|
||||||
|
if (this.durability <= 0) {
|
||||||
|
causeExplode(blockHitResult.getLocation());
|
||||||
|
} else {
|
||||||
if (this.firstHit) {
|
if (this.firstHit) {
|
||||||
ParticleTool.cannonHitParticles(this.level(), this.position(), this);
|
ParticleTool.cannonHitParticles(this.level(), this.position(), this);
|
||||||
causeExplodeBlock(blockHitResult);
|
causeExplode(blockHitResult.getLocation());
|
||||||
this.firstHit = false;
|
this.firstHit = false;
|
||||||
}
|
}
|
||||||
|
apExplode(blockHitResult);
|
||||||
}
|
}
|
||||||
apExplode(blockHitResult);
|
} else {
|
||||||
|
if (this.durability > 0) {
|
||||||
|
apExplode(blockHitResult);
|
||||||
|
}
|
||||||
|
causeExplode(blockHitResult.getLocation());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -242,7 +248,7 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void causeExplode(Entity entity) {
|
private void causeExplode(Vec3 vec) {
|
||||||
if (Math.random() > fireProbability) {
|
if (Math.random() > fireProbability) {
|
||||||
fireTime = 0;
|
fireTime = 0;
|
||||||
}
|
}
|
||||||
|
@ -252,9 +258,9 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt
|
||||||
this,
|
this,
|
||||||
this.getOwner()),
|
this.getOwner()),
|
||||||
explosionDamage,
|
explosionDamage,
|
||||||
entity.getX(),
|
vec.x(),
|
||||||
entity.getY() + 0.5 * entity.getBbHeight(),
|
vec.y(),
|
||||||
entity.getZ(),
|
vec.z(),
|
||||||
radius,
|
radius,
|
||||||
ExplosionConfig.EXPLOSION_DESTROY.get() ? Explosion.BlockInteraction.DESTROY : Explosion.BlockInteraction.KEEP).
|
ExplosionConfig.EXPLOSION_DESTROY.get() ? Explosion.BlockInteraction.DESTROY : Explosion.BlockInteraction.KEEP).
|
||||||
setDamageMultiplier(1).setFireTime(fireTime);
|
setDamageMultiplier(1).setFireTime(fireTime);
|
||||||
|
@ -263,40 +269,9 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt
|
||||||
explosion.finalizeExplosion(false);
|
explosion.finalizeExplosion(false);
|
||||||
|
|
||||||
if (radius > 7) {
|
if (radius > 7) {
|
||||||
ParticleTool.spawnHugeExplosionParticles(this.level(), new Vec3(entity.getX(),
|
ParticleTool.spawnHugeExplosionParticles(this.level(), vec);
|
||||||
entity.getY() + 0.5 * entity.getBbHeight(),
|
|
||||||
entity.getZ()));
|
|
||||||
} else {
|
} else {
|
||||||
ParticleTool.spawnMediumExplosionParticles(this.level(), new Vec3(entity.getX(),
|
ParticleTool.spawnMediumExplosionParticles(this.level(), vec);
|
||||||
entity.getY() + 0.5 * entity.getBbHeight(),
|
|
||||||
entity.getZ()));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void causeExplodeBlock(HitResult result) {
|
|
||||||
if (Math.random() > fireProbability) {
|
|
||||||
fireTime = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
CustomExplosion explosion = new CustomExplosion(this.level(), this,
|
|
||||||
ModDamageTypes.causeProjectileBoomDamage(this.level().registryAccess(),
|
|
||||||
this,
|
|
||||||
this.getOwner()),
|
|
||||||
explosionDamage,
|
|
||||||
this.getX(),
|
|
||||||
this.getY() + 0.5 * this.getBbHeight(),
|
|
||||||
this.getZ(),
|
|
||||||
radius,
|
|
||||||
ExplosionConfig.EXPLOSION_DESTROY.get() ? Explosion.BlockInteraction.DESTROY : Explosion.BlockInteraction.KEEP).
|
|
||||||
setDamageMultiplier(1).setFireTime(fireTime);
|
|
||||||
explosion.explode();
|
|
||||||
EventHooks.onExplosionStart(this.level(), explosion);
|
|
||||||
explosion.finalizeExplosion(false);
|
|
||||||
|
|
||||||
if (radius > 7) {
|
|
||||||
ParticleTool.spawnHugeExplosionParticles(this.level(), result.getLocation());
|
|
||||||
} else {
|
|
||||||
ParticleTool.spawnMediumExplosionParticles(this.level(), result.getLocation());
|
|
||||||
}
|
}
|
||||||
this.discard();
|
this.discard();
|
||||||
}
|
}
|
||||||
|
|
|
@ -226,11 +226,6 @@ public class Bmp2Entity extends ContainerMobileVehicleEntity implements GeoEntit
|
||||||
sendParticle(serverLevel, ParticleTypes.BUBBLE_COLUMN_UP, this.getX() + 0.5 * this.getDeltaMovement().x, this.getY() + getSubmergedHeight(this) - 0.2, this.getZ() + 0.5 * this.getDeltaMovement().z, (int) (2 + 10 * this.getDeltaMovement().length()), 0.65, 0, 0.65, 0, true);
|
sendParticle(serverLevel, ParticleTypes.BUBBLE_COLUMN_UP, this.getX() + 0.5 * this.getDeltaMovement().x, this.getY() + getSubmergedHeight(this) - 0.2, this.getZ() + 0.5 * this.getDeltaMovement().z, (int) (2 + 10 * this.getDeltaMovement().length()), 0.65, 0, 0.65, 0, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
collideBlock();
|
|
||||||
if (this.getDeltaMovement().length() > 0.1) {
|
|
||||||
collideHardBlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
turretAngle(25, 25);
|
turretAngle(25, 25);
|
||||||
this.terrainCompat(4f, 5f);
|
this.terrainCompat(4f, 5f);
|
||||||
inertiaRotate(1);
|
inertiaRotate(1);
|
||||||
|
@ -239,6 +234,12 @@ public class Bmp2Entity extends ContainerMobileVehicleEntity implements GeoEntit
|
||||||
this.refreshDimensions();
|
this.refreshDimensions();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCollideHardBlock() {
|
||||||
|
return getDeltaMovement().horizontalDistance() > 0.07 || this.entityData.get(POWER) > 0.12;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void handleAmmo() {
|
private void handleAmmo() {
|
||||||
if (!(this.getFirstPassenger() instanceof Player player)) return;
|
if (!(this.getFirstPassenger() instanceof Player player)) return;
|
||||||
|
|
||||||
|
|
|
@ -646,12 +646,4 @@ public class DroneEntity extends MobileVehicleEntity implements GeoEntity {
|
||||||
public boolean canCrushEntities() {
|
public boolean canCrushEntities() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void collideBlock() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void collideHardBlock() {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -181,11 +181,6 @@ public class Lav150Entity extends ContainerMobileVehicleEntity implements GeoEnt
|
||||||
sendParticle(serverLevel, ParticleTypes.BUBBLE_COLUMN_UP, this.getX() + 0.5 * this.getDeltaMovement().x, this.getY() + getSubmergedHeight(this) - 0.2, this.getZ() + 0.5 * this.getDeltaMovement().z, (int) (2 + 10 * this.getDeltaMovement().length()), 0.65, 0, 0.65, 0, true);
|
sendParticle(serverLevel, ParticleTypes.BUBBLE_COLUMN_UP, this.getX() + 0.5 * this.getDeltaMovement().x, this.getY() + getSubmergedHeight(this) - 0.2, this.getZ() + 0.5 * this.getDeltaMovement().z, (int) (2 + 10 * this.getDeltaMovement().length()), 0.65, 0, 0.65, 0, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
collideBlock();
|
|
||||||
if (this.getDeltaMovement().length() > 0.125) {
|
|
||||||
collideHardBlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
turretAngle(15, 12.5f);
|
turretAngle(15, 12.5f);
|
||||||
lowHealthWarning();
|
lowHealthWarning();
|
||||||
this.terrainCompat(2.7f, 3.61f);
|
this.terrainCompat(2.7f, 3.61f);
|
||||||
|
@ -194,6 +189,11 @@ public class Lav150Entity extends ContainerMobileVehicleEntity implements GeoEnt
|
||||||
this.refreshDimensions();
|
this.refreshDimensions();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCollideHardBlock() {
|
||||||
|
return getDeltaMovement().horizontalDistance() > 0.09 || this.entityData.get(POWER) > 0.15;
|
||||||
|
}
|
||||||
|
|
||||||
private void handleAmmo() {
|
private void handleAmmo() {
|
||||||
if (!(this.getFirstPassenger() instanceof Player)) return;
|
if (!(this.getFirstPassenger() instanceof Player)) return;
|
||||||
|
|
||||||
|
|
|
@ -92,7 +92,7 @@ public class Mk42Entity extends VehicleEntity implements GeoEntity, CannonEntity
|
||||||
.hitDamage(VehicleConfig.MK42_HE_DAMAGE.get())
|
.hitDamage(VehicleConfig.MK42_HE_DAMAGE.get())
|
||||||
.explosionDamage(VehicleConfig.MK42_HE_EXPLOSION_DAMAGE.get())
|
.explosionDamage(VehicleConfig.MK42_HE_EXPLOSION_DAMAGE.get())
|
||||||
.explosionRadius(VehicleConfig.MK42_HE_EXPLOSION_RADIUS.get().floatValue())
|
.explosionRadius(VehicleConfig.MK42_HE_EXPLOSION_RADIUS.get().floatValue())
|
||||||
.durability(1)
|
.durability(0)
|
||||||
.fireProbability(0.18F)
|
.fireProbability(0.18F)
|
||||||
.fireTime(2)
|
.fireTime(2)
|
||||||
.sound(ModSounds.CANNON_RELOAD.get())
|
.sound(ModSounds.CANNON_RELOAD.get())
|
||||||
|
|
|
@ -84,7 +84,7 @@ public class Mle1934Entity extends VehicleEntity implements GeoEntity, CannonEnt
|
||||||
.hitDamage(VehicleConfig.MLE1934_HE_DAMAGE.get())
|
.hitDamage(VehicleConfig.MLE1934_HE_DAMAGE.get())
|
||||||
.explosionDamage(VehicleConfig.MLE1934_HE_EXPLOSION_DAMAGE.get())
|
.explosionDamage(VehicleConfig.MLE1934_HE_EXPLOSION_DAMAGE.get())
|
||||||
.explosionRadius(VehicleConfig.MLE1934_HE_EXPLOSION_RADIUS.get().floatValue())
|
.explosionRadius(VehicleConfig.MLE1934_HE_EXPLOSION_RADIUS.get().floatValue())
|
||||||
.durability(1)
|
.durability(0)
|
||||||
.fireProbability(0.24F)
|
.fireProbability(0.24F)
|
||||||
.fireTime(5)
|
.fireTime(5)
|
||||||
.sound(ModSounds.CANNON_RELOAD.get())
|
.sound(ModSounds.CANNON_RELOAD.get())
|
||||||
|
|
|
@ -216,11 +216,6 @@ public class PrismTankEntity extends ContainerMobileVehicleEntity implements Geo
|
||||||
sendParticle(serverLevel, ParticleTypes.BUBBLE_COLUMN_UP, this.getX() + 0.5 * this.getDeltaMovement().x, this.getY() + getSubmergedHeight(this) - 0.2, this.getZ() + 0.5 * this.getDeltaMovement().z, (int) (2 + 10 * this.getDeltaMovement().length()), 0.65, 0, 0.65, 0, true);
|
sendParticle(serverLevel, ParticleTypes.BUBBLE_COLUMN_UP, this.getX() + 0.5 * this.getDeltaMovement().x, this.getY() + getSubmergedHeight(this) - 0.2, this.getZ() + 0.5 * this.getDeltaMovement().z, (int) (2 + 10 * this.getDeltaMovement().length()), 0.65, 0, 0.65, 0, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
collideBlock();
|
|
||||||
if (this.getDeltaMovement().length() > 0.1) {
|
|
||||||
collideHardBlock();
|
|
||||||
}
|
|
||||||
|
|
||||||
turretAngle(15, 10);
|
turretAngle(15, 10);
|
||||||
this.terrainCompat(4.6375f, 5.171875f);
|
this.terrainCompat(4.6375f, 5.171875f);
|
||||||
inertiaRotate(1);
|
inertiaRotate(1);
|
||||||
|
|
|
@ -164,15 +164,16 @@ public class SpeedboatEntity extends ContainerMobileVehicleEntity implements Geo
|
||||||
|
|
||||||
turretAngle(40, 40);
|
turretAngle(40, 40);
|
||||||
lowHealthWarning();
|
lowHealthWarning();
|
||||||
collideBlock();
|
|
||||||
if (this.getDeltaMovement().length() > 0.15) {
|
|
||||||
collideHardBlock();
|
|
||||||
}
|
|
||||||
inertiaRotate(2);
|
inertiaRotate(2);
|
||||||
|
|
||||||
this.refreshDimensions();
|
this.refreshDimensions();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCollideHardBlock() {
|
||||||
|
return getDeltaMovement().horizontalDistance() > 0.15;
|
||||||
|
}
|
||||||
|
|
||||||
private void handleAmmo() {
|
private void handleAmmo() {
|
||||||
if (!(this.getFirstPassenger() instanceof Player)) return;
|
if (!(this.getFirstPassenger() instanceof Player)) return;
|
||||||
|
|
||||||
|
|
|
@ -349,12 +349,4 @@ public class Tom6Entity extends MobileVehicleEntity implements GeoEntity {
|
||||||
public boolean allowFreeCam() {
|
public boolean allowFreeCam() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void collideBlock() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void collideHardBlock() {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -315,11 +315,4 @@ public class WheelChairEntity extends MobileVehicleEntity implements GeoEntity {
|
||||||
return Mod.loc("textures/vehicle_icon/wheel_chair_icon.png");
|
return Mod.loc("textures/vehicle_icon/wheel_chair_icon.png");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void collideBlock() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void collideHardBlock() {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -90,7 +90,7 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti
|
||||||
.explosionDamage(VehicleConfig.YX_100_AP_CANNON_EXPLOSION_DAMAGE.get())
|
.explosionDamage(VehicleConfig.YX_100_AP_CANNON_EXPLOSION_DAMAGE.get())
|
||||||
.fireProbability(0)
|
.fireProbability(0)
|
||||||
.fireTime(0)
|
.fireTime(0)
|
||||||
.durability(60)
|
.durability(100)
|
||||||
.velocity(40)
|
.velocity(40)
|
||||||
.sound(ModSounds.INTO_MISSILE.get())
|
.sound(ModSounds.INTO_MISSILE.get())
|
||||||
.ammo(ModItems.AP_5_INCHES.get())
|
.ammo(ModItems.AP_5_INCHES.get())
|
||||||
|
@ -102,7 +102,7 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti
|
||||||
.explosionDamage(VehicleConfig.YX_100_HE_CANNON_EXPLOSION_DAMAGE.get())
|
.explosionDamage(VehicleConfig.YX_100_HE_CANNON_EXPLOSION_DAMAGE.get())
|
||||||
.fireProbability(0.18F)
|
.fireProbability(0.18F)
|
||||||
.fireTime(2)
|
.fireTime(2)
|
||||||
.durability(1)
|
.durability(0)
|
||||||
.velocity(25)
|
.velocity(25)
|
||||||
.sound(ModSounds.INTO_CANNON.get())
|
.sound(ModSounds.INTO_CANNON.get())
|
||||||
.ammo(ModItems.HE_5_INCHES.get())
|
.ammo(ModItems.HE_5_INCHES.get())
|
||||||
|
@ -634,7 +634,7 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti
|
||||||
|
|
||||||
public Vec3 driverZoomPos(float ticks) {
|
public Vec3 driverZoomPos(float ticks) {
|
||||||
Matrix4f transform = getTurretTransform(ticks);
|
Matrix4f transform = getTurretTransform(ticks);
|
||||||
Vector4f worldPosition = transformPosition(transform, 0, 0, 0.6076875f);
|
Vector4f worldPosition = transformPosition(transform, 0, 1.2f, 0.6076875f);
|
||||||
return new Vec3(worldPosition.x, worldPosition.y, worldPosition.z);
|
return new Vec3(worldPosition.x, worldPosition.y, worldPosition.z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -377,6 +377,10 @@ public abstract class MobileVehicleEntity extends EnergyVehicleEntity implements
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean canCollideHardBlock() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void move(@NotNull MoverType movementType, @NotNull Vec3 movement) {
|
public void move(@NotNull MoverType movementType, @NotNull Vec3 movement) {
|
||||||
if (!this.level().isClientSide()) {
|
if (!this.level().isClientSide()) {
|
||||||
|
@ -384,6 +388,13 @@ public abstract class MobileVehicleEntity extends EnergyVehicleEntity implements
|
||||||
}
|
}
|
||||||
super.move(movementType, movement);
|
super.move(movementType, movement);
|
||||||
if (level() instanceof ServerLevel) {
|
if (level() instanceof ServerLevel) {
|
||||||
|
if (this.horizontalCollision) {
|
||||||
|
collideBlock();
|
||||||
|
if (canCollideHardBlock()) {
|
||||||
|
collideHardBlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (lastTickSpeed < 0.3 || collisionCoolDown > 0 || this instanceof DroneEntity) return;
|
if (lastTickSpeed < 0.3 || collisionCoolDown > 0 || this instanceof DroneEntity) return;
|
||||||
Entity driver = EntityFindUtil.findEntity(this.level(), this.entityData.get(LAST_DRIVER_UUID));
|
Entity driver = EntityFindUtil.findEntity(this.level(), this.entityData.get(LAST_DRIVER_UUID));
|
||||||
|
|
||||||
|
|
|
@ -674,7 +674,7 @@ public class ClientEventHandler {
|
||||||
if (charged) {
|
if (charged) {
|
||||||
SoundEvent sound1p = BuiltInRegistries.SOUND_EVENT.get(Mod.loc("sentinel_charge_fire_1p"));
|
SoundEvent sound1p = BuiltInRegistries.SOUND_EVENT.get(Mod.loc("sentinel_charge_fire_1p"));
|
||||||
if (sound1p != null) {
|
if (sound1p != null) {
|
||||||
player.playSound(sound1p, 2f, 1);
|
player.playSound(sound1p, 2f, (float) ((2 * org.joml.Math.random() - 1) * 0.05f + 1.0f));
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -683,7 +683,7 @@ public class ClientEventHandler {
|
||||||
var perk = data.perk.get(Perk.Type.AMMO);
|
var perk = data.perk.get(Perk.Type.AMMO);
|
||||||
|
|
||||||
if (perk == ModPerks.BEAST_BULLET.get()) {
|
if (perk == ModPerks.BEAST_BULLET.get()) {
|
||||||
player.playSound(ModSounds.HENG.get(), 1f, 1f);
|
player.playSound(ModSounds.HENG.get(), 1f, (float) ((2 * org.joml.Math.random() - 1) * 0.1f + 1.0f));
|
||||||
}
|
}
|
||||||
|
|
||||||
int barrelType = data.attachment.get(AttachmentType.BARREL);
|
int barrelType = data.attachment.get(AttachmentType.BARREL);
|
||||||
|
@ -691,7 +691,7 @@ public class ClientEventHandler {
|
||||||
SoundEvent sound1p = BuiltInRegistries.SOUND_EVENT.get(Mod.loc(name + (barrelType == 2 ? "_fire_1p_s" : "_fire_1p")));
|
SoundEvent sound1p = BuiltInRegistries.SOUND_EVENT.get(Mod.loc(name + (barrelType == 2 ? "_fire_1p_s" : "_fire_1p")));
|
||||||
|
|
||||||
if (sound1p != null) {
|
if (sound1p != null) {
|
||||||
player.playSound(sound1p, 2f, 1);
|
player.playSound(sound1p, 4f, (float) ((2 * org.joml.Math.random() - 1) * 0.05f + 1.0f));
|
||||||
}
|
}
|
||||||
|
|
||||||
double shooterHeight = player.getEyePosition().distanceTo((Vec3.atLowerCornerOf(player.level().clip(new ClipContext(player.getEyePosition(), player.getEyePosition().add(new Vec3(0, -1, 0).scale(10)),
|
double shooterHeight = player.getEyePosition().distanceTo((Vec3.atLowerCornerOf(player.level().clip(new ClipContext(player.getEyePosition(), player.getEyePosition().add(new Vec3(0, -1, 0).scale(10)),
|
||||||
|
@ -700,11 +700,11 @@ public class ClientEventHandler {
|
||||||
Mod.queueClientWork((int) (1 + 1.5 * shooterHeight), () -> {
|
Mod.queueClientWork((int) (1 + 1.5 * shooterHeight), () -> {
|
||||||
if (gunItem.canEjectShell(stack)) {
|
if (gunItem.canEjectShell(stack)) {
|
||||||
if (stack.is(ModTags.Items.SHOTGUN)) {
|
if (stack.is(ModTags.Items.SHOTGUN)) {
|
||||||
player.playSound(ModSounds.SHELL_CASING_SHOTGUN.get(), (float) Math.max(0.75 - 0.12 * shooterHeight, 0), 1);
|
player.playSound(ModSounds.SHELL_CASING_SHOTGUN.get(), (float) Math.max(0.75 - 0.12 * shooterHeight, 0), (float) ((2 * org.joml.Math.random() - 1) * 0.05f + 1.0f));
|
||||||
} else if (stack.is(ModTags.Items.SNIPER_RIFLE) || stack.is(ModTags.Items.HEAVY_WEAPON)) {
|
} else if (stack.is(ModTags.Items.SNIPER_RIFLE) || stack.is(ModTags.Items.HEAVY_WEAPON)) {
|
||||||
player.playSound(ModSounds.SHELL_CASING_50CAL.get(), (float) Math.max(1 - 0.15 * shooterHeight, 0), 1);
|
player.playSound(ModSounds.SHELL_CASING_50CAL.get(), (float) Math.max(1 - 0.15 * shooterHeight, 0), (float) ((2 * org.joml.Math.random() - 1) * 0.05f + 1.0f));
|
||||||
} else {
|
} else {
|
||||||
player.playSound(ModSounds.SHELL_CASING_NORMAL.get(), (float) Math.max(1.5 - 0.2 * shooterHeight, 0), 1);
|
player.playSound(ModSounds.SHELL_CASING_NORMAL.get(), (float) Math.max(1.5 - 0.2 * shooterHeight, 0), (float) ((2 * org.joml.Math.random() - 1) * 0.05f + 1.0f));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,6 +159,8 @@ public class ModSounds {
|
||||||
|
|
||||||
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FIRE_1P = REGISTRY.register("rpk_fire_1p", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_fire_1p")));
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FIRE_1P = REGISTRY.register("rpk_fire_1p", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_fire_1p")));
|
||||||
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FIRE_3P = REGISTRY.register("rpk_fire_3p", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_fire_3p")));
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FIRE_3P = REGISTRY.register("rpk_fire_3p", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_fire_3p")));
|
||||||
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FIRE_1P_S = REGISTRY.register("rpk_fire_1p_s", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_fire_1p_s")));
|
||||||
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FIRE_3P_S = REGISTRY.register("rpk_fire_3p_s", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_fire_3p_s")));
|
||||||
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FAR = REGISTRY.register("rpk_far", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_far")));
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_FAR = REGISTRY.register("rpk_far", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_far")));
|
||||||
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_VERYFAR = REGISTRY.register("rpk_veryfar", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_veryfar")));
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_VERYFAR = REGISTRY.register("rpk_veryfar", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_veryfar")));
|
||||||
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_RELOAD_NORMAL = REGISTRY.register("rpk_reload_normal", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_reload_normal")));
|
public static final DeferredHolder<SoundEvent, SoundEvent> RPK_RELOAD_NORMAL = REGISTRY.register("rpk_reload_normal", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rpk_reload_normal")));
|
||||||
|
|
|
@ -148,7 +148,7 @@ public class RpkItem extends GunItem implements GeoItem {
|
||||||
public double getCustomZoom(ItemStack stack) {
|
public double getCustomZoom(ItemStack stack) {
|
||||||
int scopeType = GunData.from(stack).attachment.get(AttachmentType.SCOPE);
|
int scopeType = GunData.from(stack).attachment.get(AttachmentType.SCOPE);
|
||||||
return switch (scopeType) {
|
return switch (scopeType) {
|
||||||
case 2 -> NBTTool.getTag(stack).getBoolean("ScopeAlt") ? 0 : 2.75;
|
case 2 -> 1.15;
|
||||||
case 3 -> GunsTool.getGunDoubleTag(NBTTool.getTag(stack), "CustomZoom");
|
case 3 -> GunsTool.getGunDoubleTag(NBTTool.getTag(stack), "CustomZoom");
|
||||||
default -> 0;
|
default -> 0;
|
||||||
};
|
};
|
||||||
|
|
|
@ -114,7 +114,7 @@ public abstract class CameraMixin {
|
||||||
if (yx100.getFirstPassenger() == player) {
|
if (yx100.getFirstPassenger() == player) {
|
||||||
setRotation((float) -VehicleEntity.getYRotFromVector(yx100.getBarrelVec(partialTicks)), (float) -VehicleEntity.getXRotFromVector(yx100.getBarrelVec(partialTicks)));
|
setRotation((float) -VehicleEntity.getYRotFromVector(yx100.getBarrelVec(partialTicks)), (float) -VehicleEntity.getXRotFromVector(yx100.getBarrelVec(partialTicks)));
|
||||||
if (ClientEventHandler.zoomVehicle) {
|
if (ClientEventHandler.zoomVehicle) {
|
||||||
setPosition(yx100.driverZoomPos(partialTicks).x, Mth.lerp(partialTicks, player.yo + player.getEyeHeight(), player.getEyeY()), yx100.driverZoomPos(partialTicks).z);
|
setPosition(yx100.driverZoomPos(partialTicks).x, yx100.driverZoomPos(partialTicks).y, yx100.driverZoomPos(partialTicks).z);
|
||||||
} else {
|
} else {
|
||||||
setPosition(Mth.lerp(partialTicks, player.xo, player.getX()), Mth.lerp(partialTicks, player.yo + player.getEyeHeight(), player.getEyeY()), Mth.lerp(partialTicks, player.zo, player.getZ()));
|
setPosition(Mth.lerp(partialTicks, player.xo, player.getX()), Mth.lerp(partialTicks, player.yo + player.getEyeHeight(), player.getEyeY()), Mth.lerp(partialTicks, player.zo, player.getZ()));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1296,56 +1296,28 @@
|
||||||
{
|
{
|
||||||
"name": "gun",
|
"name": "gun",
|
||||||
"parent": "0",
|
"parent": "0",
|
||||||
"pivot": [0, -5.5, -0.5]
|
"pivot": [0, -5.5, -0.5],
|
||||||
},
|
"cubes": [
|
||||||
{
|
{
|
||||||
"name": "aug_default",
|
"origin": [-1.2004, 1.40678, 4.40678],
|
||||||
"parent": "gun",
|
"size": [2.4008, 0.89362, 0.39362],
|
||||||
"pivot": [0, 0.9, -0.5]
|
"inflate": -0.002,
|
||||||
},
|
"pivot": [0, 1.7, 5.5],
|
||||||
{
|
"rotation": [30, 0, 0],
|
||||||
"name": "deco",
|
"uv": {
|
||||||
"parent": "aug_default",
|
"north": {"uv": [45, 37], "uv_size": [3, 1]},
|
||||||
"pivot": [-0.275, -1.21009, -0.85217]
|
"east": {"uv": [65, 21], "uv_size": [0.5, 1]},
|
||||||
},
|
"south": {"uv": [45, 38], "uv_size": [3, 1]},
|
||||||
{
|
"west": {"uv": [22, 65], "uv_size": [0.5, 1]},
|
||||||
"name": "group6",
|
"up": {"uv": [40, 54], "uv_size": [3, 0.5]},
|
||||||
"parent": "deco",
|
"down": {"uv": [54, 41.5], "uv_size": [3, -0.5]}
|
||||||
"pivot": [0.45, -1.21009, 3.69783]
|
}
|
||||||
},
|
}
|
||||||
{
|
]
|
||||||
"name": "safety",
|
|
||||||
"parent": "deco",
|
|
||||||
"pivot": [0.41875, -1.21009, 0.24783]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "safety_illuminated",
|
|
||||||
"parent": "safety",
|
|
||||||
"pivot": [0.75, 0.41491, 1.86034]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "trigger",
|
|
||||||
"parent": "deco",
|
|
||||||
"pivot": [-0.275, -1.21009, -0.65217]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "octagon2",
|
|
||||||
"parent": "deco",
|
|
||||||
"pivot": [0.5096, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "boltcover",
|
|
||||||
"parent": "deco",
|
|
||||||
"pivot": [-1.67471, -0.2104, 5.35]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "mag_release",
|
|
||||||
"parent": "deco",
|
|
||||||
"pivot": [0.35, -1.56936, 7.10269]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "stock",
|
"name": "stock",
|
||||||
"parent": "aug_default",
|
"parent": "gun",
|
||||||
"pivot": [0, -5.5, -0.5]
|
"pivot": [0, -5.5, -0.5]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -1627,117 +1599,6 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "receiver",
|
|
||||||
"parent": "aug_default",
|
|
||||||
"pivot": [0, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "group8",
|
|
||||||
"parent": "receiver",
|
|
||||||
"pivot": [-0.65, 1.2, 2.17712]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "octagon",
|
|
||||||
"parent": "receiver",
|
|
||||||
"pivot": [0, 1.6, -9.95]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "gastube",
|
|
||||||
"parent": "receiver",
|
|
||||||
"pivot": [0, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "group3",
|
|
||||||
"parent": "gastube",
|
|
||||||
"pivot": [-0.6, 1.2, -8.33188]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cover2",
|
|
||||||
"parent": "gastube",
|
|
||||||
"pivot": [0, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cover",
|
|
||||||
"parent": "cover2",
|
|
||||||
"pivot": [0, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "group2",
|
|
||||||
"parent": "receiver",
|
|
||||||
"pivot": [0, 1.6, -2.401]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "side_rail",
|
|
||||||
"parent": "aug_default",
|
|
||||||
"pivot": [0.45, -3.8, -6.9]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "foregrip",
|
|
||||||
"parent": "aug_default",
|
|
||||||
"pivot": [0.06945, 0.40393, -3.87787]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "grip",
|
|
||||||
"parent": "foregrip",
|
|
||||||
"pivot": [0, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "pins",
|
|
||||||
"parent": "aug_default",
|
|
||||||
"pivot": [0.0096, 0.9, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "aug_charge",
|
|
||||||
"parent": "gun",
|
|
||||||
"pivot": [0.53109, 1.12994, -3.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "aug_bolt",
|
|
||||||
"parent": "gun",
|
|
||||||
"pivot": [1.67471, -0.6104, 5.55]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "group15",
|
|
||||||
"parent": "aug_bolt",
|
|
||||||
"pivot": [-0.02802, 7.52082, 2.66108]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "positioning2",
|
|
||||||
"parent": "gun",
|
|
||||||
"pivot": [0, -5.5, -0.5]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "laser_pos",
|
|
||||||
"parent": "positioning2",
|
|
||||||
"pivot": [-0.82505, 1.56465, -0.82],
|
|
||||||
"rotation": [0, 0, -45]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "muzzle_pos",
|
|
||||||
"parent": "positioning2",
|
|
||||||
"pivot": [0, 1.6, -11.75]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "muzzle_flash",
|
|
||||||
"parent": "positioning2",
|
|
||||||
"pivot": [0, 1.6, -14.1]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "scope_pos",
|
|
||||||
"parent": "positioning2",
|
|
||||||
"pivot": [0, 2.9, 0.9]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "shell",
|
|
||||||
"parent": "positioning2",
|
|
||||||
"pivot": [-0.12, 1.71, 7.7]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "constraint",
|
|
||||||
"parent": "gun",
|
|
||||||
"pivot": [0, 3.32, -14.1]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "QQQQQ",
|
"name": "QQQQQ",
|
||||||
"parent": "gun",
|
"parent": "gun",
|
||||||
|
@ -1758,21 +1619,6 @@
|
||||||
"down": {"uv": [40, 33], "uv_size": [3, -2]}
|
"down": {"uv": [40, 33], "uv_size": [3, -2]}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"origin": [-1.2004, 1.40678, 4.40678],
|
|
||||||
"size": [2.4008, 0.89362, 0.39362],
|
|
||||||
"inflate": -0.002,
|
|
||||||
"pivot": [0, 1.7, 5.5],
|
|
||||||
"rotation": [30, 0, 0],
|
|
||||||
"uv": {
|
|
||||||
"north": {"uv": [45, 37], "uv_size": [3, 1]},
|
|
||||||
"east": {"uv": [65, 21], "uv_size": [0.5, 1]},
|
|
||||||
"south": {"uv": [45, 38], "uv_size": [3, 1]},
|
|
||||||
"west": {"uv": [22, 65], "uv_size": [0.5, 1]},
|
|
||||||
"up": {"uv": [40, 54], "uv_size": [3, 0.5]},
|
|
||||||
"down": {"uv": [54, 41.5], "uv_size": [3, -0.5]}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"origin": [-1.1996, 1.40758, 4.30758],
|
"origin": [-1.1996, 1.40758, 4.30758],
|
||||||
"size": [2.2992, 0.89202, 0.09202],
|
"size": [2.2992, 0.89202, 0.09202],
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -663,6 +663,22 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"rpk_fire_1p_s": {
|
||||||
|
"sounds": [
|
||||||
|
{
|
||||||
|
"name": "superbwarfare:rpk/rpk_fire_1p_s",
|
||||||
|
"stream": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"rpk_fire_3p_s": {
|
||||||
|
"sounds": [
|
||||||
|
{
|
||||||
|
"name": "superbwarfare:rpk/rpk_fire_3p_s",
|
||||||
|
"stream": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
"rpk_far": {
|
"rpk_far": {
|
||||||
"sounds": [
|
"sounds": [
|
||||||
{
|
{
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 48 KiB |
Binary file not shown.
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 33 KiB |
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"Spread": 2.3,
|
"Spread": 2.3,
|
||||||
"RecoilX": 0.002,
|
"RecoilX": 0,
|
||||||
"RecoilY": 0.007,
|
"RecoilY": 0.007,
|
||||||
"Damage": 6,
|
"Damage": 6,
|
||||||
"Headshot": 1.5,
|
"Headshot": 1.5,
|
||||||
|
|
Loading…
Add table
Reference in a new issue