From 5f0d51ee7c78e570e0533fe4dd8dfb9ba5d0016e Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Wed, 8 May 2024 15:29:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86SKS=E7=9A=84?= =?UTF-8?q?=E5=B4=A9=E6=BA=83bug=EF=BC=8C=E5=B0=86=E9=83=A8=E5=88=86?= =?UTF-8?q?=E8=A1=A8=E7=A4=BA=E6=AD=A6=E5=99=A8=E7=B1=BB=E5=9E=8B=E7=9A=84?= =?UTF-8?q?nbt=E8=BD=AC=E4=B8=BAtag=EF=BC=8C=E4=BF=AE=E5=A4=8D=E4=BA=86M60?= =?UTF-8?q?=E7=9A=84=E5=BC=B9=E9=93=BE=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mcreator/target/event/PlayerEventHandler.java | 12 +++++++----- .../target/procedures/DamageReduceProcedure.java | 12 +++++++----- .../procedures/WeapondrawhaveyProcedure.java | 4 ++++ src/main/resources/data/target/guns/aa_12.json | 2 -- src/main/resources/data/target/guns/abekiri.json | 1 - src/main/resources/data/target/guns/ak_47.json | 2 -- src/main/resources/data/target/guns/bocek.json | 1 - src/main/resources/data/target/guns/devotion.json | 3 --- src/main/resources/data/target/guns/hk_416.json | 2 -- .../resources/data/target/guns/hunting_rifle.json | 1 - src/main/resources/data/target/guns/kraber.json | 1 - src/main/resources/data/target/guns/m_4.json | 2 -- src/main/resources/data/target/guns/m_60.json | 3 --- src/main/resources/data/target/guns/m_870.json | 1 - src/main/resources/data/target/guns/m_98b.json | 1 - src/main/resources/data/target/guns/marlin.json | 1 - src/main/resources/data/target/guns/minigun.json | 3 --- src/main/resources/data/target/guns/mk_14.json | 2 -- src/main/resources/data/target/guns/rpk.json | 3 --- src/main/resources/data/target/guns/sentinel.json | 1 - src/main/resources/data/target/guns/sks.json | 3 +-- src/main/resources/data/target/guns/svd.json | 1 - .../resources/data/target/guns/trachelium.json | 1 - src/main/resources/data/target/guns/vector.json | 2 -- .../resources/data/target/tags/items/handgun.json | 6 ++++++ .../resources/data/target/tags/items/rifle.json | 15 +++++++++++++++ .../resources/data/target/tags/items/shotgun.json | 8 ++++++++ .../resources/data/target/tags/items/smg.json | 6 ++++++ .../data/target/tags/items/sniperrifle.json | 10 ++++++++++ 29 files changed, 64 insertions(+), 46 deletions(-) create mode 100644 src/main/resources/data/target/tags/items/handgun.json create mode 100644 src/main/resources/data/target/tags/items/rifle.json create mode 100644 src/main/resources/data/target/tags/items/shotgun.json create mode 100644 src/main/resources/data/target/tags/items/smg.json create mode 100644 src/main/resources/data/target/tags/items/sniperrifle.json diff --git a/src/main/java/net/mcreator/target/event/PlayerEventHandler.java b/src/main/java/net/mcreator/target/event/PlayerEventHandler.java index c6ccf9d89..44fbc312f 100644 --- a/src/main/java/net/mcreator/target/event/PlayerEventHandler.java +++ b/src/main/java/net/mcreator/target/event/PlayerEventHandler.java @@ -4,6 +4,8 @@ import net.mcreator.target.init.TargetModItems; import net.mcreator.target.init.TargetModTags; import net.mcreator.target.network.TargetModVariables; import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.ItemTags; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; @@ -170,26 +172,26 @@ public class PlayerEventHandler { if (stack.getItem() == TargetModItems.MINIGUN.get()) { return new java.text.DecimalFormat("##").format((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).rifleammo) + " " + firemode; } - if (stack.getOrCreateTag().getDouble("rifle") == 1) { + if (stack.is(ItemTags.create(new ResourceLocation("target:rifle")))) { stack.getOrCreateTag().putDouble("maxammo", ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).rifleammo)); return (new java.text.DecimalFormat("##").format(stack.getOrCreateTag().getDouble("ammo"))) + "/" + new java.text.DecimalFormat("##").format((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).rifleammo) + " " + firemode; } - if (stack.getOrCreateTag().getDouble("handgun") == 1 - || stack.getOrCreateTag().getDouble("smg") == 1) { + if (stack.is(ItemTags.create(new ResourceLocation("target:handgun"))) + || stack.is(ItemTags.create(new ResourceLocation("target:smg")))) { stack.getOrCreateTag().putDouble("maxammo", ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).handgunammo)); return (new java.text.DecimalFormat("##").format(stack.getOrCreateTag().getDouble("ammo"))) + "/" + new java.text.DecimalFormat("##").format((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).handgunammo) + " " + firemode; } - if (stack.getOrCreateTag().getDouble("shotgun") == 1) { + if (stack.is(ItemTags.create(new ResourceLocation("target:shotgun")))) { stack.getOrCreateTag().putDouble("maxammo", ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).shotgunammo)); return (new java.text.DecimalFormat("##").format(stack.getOrCreateTag().getDouble("ammo"))) + "/" + new java.text.DecimalFormat("##").format((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).shotgunammo) + " " + firemode; } - if (stack.getOrCreateTag().getDouble("sniperguns") == 1) { + if (stack.is(ItemTags.create(new ResourceLocation("target:sniperrifle")))) { stack.getOrCreateTag().putDouble("maxammo", ((player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new TargetModVariables.PlayerVariables())).sniperammo)); return (new java.text.DecimalFormat("##").format(stack.getOrCreateTag().getDouble("ammo"))) + "/" diff --git a/src/main/java/net/mcreator/target/procedures/DamageReduceProcedure.java b/src/main/java/net/mcreator/target/procedures/DamageReduceProcedure.java index 8cf06b420..83589ef07 100644 --- a/src/main/java/net/mcreator/target/procedures/DamageReduceProcedure.java +++ b/src/main/java/net/mcreator/target/procedures/DamageReduceProcedure.java @@ -4,6 +4,7 @@ import net.mcreator.target.init.TargetModItems; import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.ItemTags; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.damagesource.DamageTypes; import net.minecraft.world.entity.Entity; @@ -13,6 +14,7 @@ import net.minecraftforge.event.entity.living.LivingHurtEvent; import net.minecraftforge.eventbus.api.Event; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; +import net.minecraft.tags.ItemTags; import javax.annotation.Nullable; @@ -51,35 +53,35 @@ public class DamageReduceProcedure { if (damagesource.is(ResourceKey.create(Registries.DAMAGE_TYPE, new ResourceLocation("target:gunfire")))) { stack = (sourceentity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY); distanse = (entity.position()).distanceTo((sourceentity.position())); - if (stack.getOrCreateTag().getDouble("shotgun") == 1 || stack.getItem() == TargetModItems.BOCEK.get()) { + if (stack.is(ItemTags.create(new ResourceLocation("target:shotgun"))) || stack.getItem() == TargetModItems.BOCEK.get()) { if (distanse > 20) { ((LivingHurtEvent) event).setAmount(((float) (amount / (1 + 0.05 * (distanse - 20))))); damage = amount / (1 + 0.05 * (distanse - 20)); } else { damage = amount; } - } else if (stack.getOrCreateTag().getDouble("sniperguns") == 1) { + } else if (stack.is(ItemTags.create(new ResourceLocation("target:sniperrifle")))) { if (distanse > 200) { ((LivingHurtEvent) event).setAmount(((float) (amount / (1 + 0.001 * (distanse - 200))))); damage = amount / (1 + 0.001 * (distanse - 200)); } else { damage = amount; } - } else if (stack.getOrCreateTag().getDouble("handgun") == 1) { + } else if (stack.is(ItemTags.create(new ResourceLocation("target:handgun")))) { if (distanse > 40) { ((LivingHurtEvent) event).setAmount(((float) (amount / (1 + 0.04 * (distanse - 40))))); damage = amount / (1 + 0.04 * (distanse - 40)); } else { damage = amount; } - } else if (stack.getOrCreateTag().getDouble("smg") == 1) { + } else if (stack.is(ItemTags.create(new ResourceLocation("target:smg")))) { if (distanse > 50) { ((LivingHurtEvent) event).setAmount(((float) (amount / (1 + 0.03 * (distanse - 50))))); damage = amount / (1 + 0.03 * (distanse - 50)); } else { damage = amount; } - } else if (stack.getOrCreateTag().getDouble("rifle") == 1) { + } else if (stack.is(ItemTags.create(new ResourceLocation("target:rifle")))) { if (distanse > 100) { ((LivingHurtEvent) event).setAmount(((float) (amount / (1 + 0.005 * (distanse - 100))))); } else { diff --git a/src/main/java/net/mcreator/target/procedures/WeapondrawhaveyProcedure.java b/src/main/java/net/mcreator/target/procedures/WeapondrawhaveyProcedure.java index 8f4acfdd8..126b85fc2 100644 --- a/src/main/java/net/mcreator/target/procedures/WeapondrawhaveyProcedure.java +++ b/src/main/java/net/mcreator/target/procedures/WeapondrawhaveyProcedure.java @@ -6,6 +6,7 @@ import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.Entity; import net.mcreator.target.network.TargetModVariables; +import net.mcreator.target.init.TargetModItems; public class WeapondrawhaveyProcedure { public static void execute(Entity entity, ItemStack itemstack) { @@ -28,6 +29,9 @@ public class WeapondrawhaveyProcedure { } if (entity instanceof Player _player) _player.getCooldowns().addCooldown(itemstack.getItem(), 32); + if (itemstack.getItem() == TargetModItems.M_60.get() && itemstack.getOrCreateTag().getDouble("ammo") <= 5) { + itemstack.getOrCreateTag().putDouble("empty", 1); + } } if ((entity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY).getItem() == itemstack.getItem()) { if (itemstack.getOrCreateTag().getDouble("drawtime") < 29) { diff --git a/src/main/resources/data/target/guns/aa_12.json b/src/main/resources/data/target/guns/aa_12.json index 7116b7c67..c2d4f19bb 100644 --- a/src/main/resources/data/target/guns/aa_12.json +++ b/src/main/resources/data/target/guns/aa_12.json @@ -1,9 +1,7 @@ { "zoomspeed": 0.95, "zoom": 1.25, - "autorifle": 1, "dev": 3.5, - "shotgun": 1, "recoilx": 0.016, "recoily": 0.007, "damage": 1.5, diff --git a/src/main/resources/data/target/guns/abekiri.json b/src/main/resources/data/target/guns/abekiri.json index db91994ec..dce7d7969 100644 --- a/src/main/resources/data/target/guns/abekiri.json +++ b/src/main/resources/data/target/guns/abekiri.json @@ -2,7 +2,6 @@ "zoomspeed": 1.4, "zoom": 1.25, "dev": 5, - "shotgun": 1, "recoilx": 0.005, "recoily": 0.026, "damage": 2.5, diff --git a/src/main/resources/data/target/guns/ak_47.json b/src/main/resources/data/target/guns/ak_47.json index 4f9935863..8369f32e3 100644 --- a/src/main/resources/data/target/guns/ak_47.json +++ b/src/main/resources/data/target/guns/ak_47.json @@ -1,8 +1,6 @@ { "zoomspeed": 1.1, "zoom": 1.25, - "rifle": 1, - "autorifle": 1, "dev": 4, "recoilx": 0.0025, "recoily": 0.012, diff --git a/src/main/resources/data/target/guns/bocek.json b/src/main/resources/data/target/guns/bocek.json index a8bb042cb..6a56fa234 100644 --- a/src/main/resources/data/target/guns/bocek.json +++ b/src/main/resources/data/target/guns/bocek.json @@ -1,7 +1,6 @@ { "zoomspeed": 1, "zoom": 2, - "autorifle": 1, "dev": 4, "recoilx": 0.005, "recoily": 0.003, diff --git a/src/main/resources/data/target/guns/devotion.json b/src/main/resources/data/target/guns/devotion.json index 1b50127e5..0f2d84ad5 100644 --- a/src/main/resources/data/target/guns/devotion.json +++ b/src/main/resources/data/target/guns/devotion.json @@ -1,9 +1,6 @@ { "zoomspeed": 0.9, "zoom": 2, - "rifle": 1, - "autorifle": 1, - "mg": 1, "dev": 5, "bipod": 1, "recoilx": 0.0018, diff --git a/src/main/resources/data/target/guns/hk_416.json b/src/main/resources/data/target/guns/hk_416.json index 7a603b835..f57a0f935 100644 --- a/src/main/resources/data/target/guns/hk_416.json +++ b/src/main/resources/data/target/guns/hk_416.json @@ -1,8 +1,6 @@ { "zoomspeed": 1.3, "zoom": 1.25, - "rifle": 1, - "autorifle": 1, "dev": 4, "recoilx": 0.0016, "recoily": 0.009, diff --git a/src/main/resources/data/target/guns/hunting_rifle.json b/src/main/resources/data/target/guns/hunting_rifle.json index 00a8f7915..f6c51848b 100644 --- a/src/main/resources/data/target/guns/hunting_rifle.json +++ b/src/main/resources/data/target/guns/hunting_rifle.json @@ -1,7 +1,6 @@ { "zoomspeed": 1, "zoom": 1.25, - "sniperguns": 1, "dev": 7, "recoilx": 0.004, "recoily": 0.03, diff --git a/src/main/resources/data/target/guns/kraber.json b/src/main/resources/data/target/guns/kraber.json index c7138a639..b756cddc9 100644 --- a/src/main/resources/data/target/guns/kraber.json +++ b/src/main/resources/data/target/guns/kraber.json @@ -1,7 +1,6 @@ { "zoomspeed": 0.8, "zoom": 3, - "sniperguns": 1, "bipod": 1, "dev": 6, "recoilx": 0.008, diff --git a/src/main/resources/data/target/guns/m_4.json b/src/main/resources/data/target/guns/m_4.json index aee932735..33dc7f914 100644 --- a/src/main/resources/data/target/guns/m_4.json +++ b/src/main/resources/data/target/guns/m_4.json @@ -1,8 +1,6 @@ { "zoomspeed": 1.15, "zoom": 1.25, - "rifle": 1, - "autorifle": 1, "dev": 4, "recoilx": 0.0015, "recoily": 0.011, diff --git a/src/main/resources/data/target/guns/m_60.json b/src/main/resources/data/target/guns/m_60.json index f2ed6b9af..fbc7770cf 100644 --- a/src/main/resources/data/target/guns/m_60.json +++ b/src/main/resources/data/target/guns/m_60.json @@ -1,9 +1,6 @@ { "zoomspeed": 0.85, "zoom": 1.25, - "rifle": 1, - "autorifle": 1, - "mg": 1, "dev": 5, "bipod": 1, "recoilx": 0.004, diff --git a/src/main/resources/data/target/guns/m_870.json b/src/main/resources/data/target/guns/m_870.json index d49be24ee..37d5b3a88 100644 --- a/src/main/resources/data/target/guns/m_870.json +++ b/src/main/resources/data/target/guns/m_870.json @@ -2,7 +2,6 @@ "zoomspeed": 1.1, "zoom": 1.25, "dev": 3, - "shotgun": 1, "recoilx": 0.009, "recoily": 0.03, "damage": 2, diff --git a/src/main/resources/data/target/guns/m_98b.json b/src/main/resources/data/target/guns/m_98b.json index eb43b488f..a3e36fdc9 100644 --- a/src/main/resources/data/target/guns/m_98b.json +++ b/src/main/resources/data/target/guns/m_98b.json @@ -1,7 +1,6 @@ { "zoomspeed": 0.85, "zoom": 4, - "sniperguns": 1, "dev": 6, "recoilx": 0.007, "recoily": 0.013, diff --git a/src/main/resources/data/target/guns/marlin.json b/src/main/resources/data/target/guns/marlin.json index 81e6e3ac8..5d460e346 100644 --- a/src/main/resources/data/target/guns/marlin.json +++ b/src/main/resources/data/target/guns/marlin.json @@ -1,7 +1,6 @@ { "zoomspeed": 1.1, "zoom": 1.25, - "rifle": 1, "dev": 2, "recoilx": 0.004, "recoily": 0.011, diff --git a/src/main/resources/data/target/guns/minigun.json b/src/main/resources/data/target/guns/minigun.json index fc8880ce9..bce13de10 100644 --- a/src/main/resources/data/target/guns/minigun.json +++ b/src/main/resources/data/target/guns/minigun.json @@ -1,8 +1,5 @@ { "zoom": 1, - "rifle": 1, - "autorifle": 1, - "mg": 1, "dev": 5, "recoilx": 0.024, "recoily": 0.005, diff --git a/src/main/resources/data/target/guns/mk_14.json b/src/main/resources/data/target/guns/mk_14.json index a5456626f..1090ad6ed 100644 --- a/src/main/resources/data/target/guns/mk_14.json +++ b/src/main/resources/data/target/guns/mk_14.json @@ -1,8 +1,6 @@ { "zoomspeed": 0.9, "zoom": 3.4, - "rifle": 1, - "autorifle": 1, "dev": 6, "bipod": 1, "recoilx": 0.006, diff --git a/src/main/resources/data/target/guns/rpk.json b/src/main/resources/data/target/guns/rpk.json index 728e5bc01..cc61f52a4 100644 --- a/src/main/resources/data/target/guns/rpk.json +++ b/src/main/resources/data/target/guns/rpk.json @@ -1,9 +1,6 @@ { "zoomspeed": 1, "zoom": 1.25, - "rifle": 1, - "autorifle": 1, - "mg": 1, "dev": 5, "bipod": 1, "recoilx": 0.0035, diff --git a/src/main/resources/data/target/guns/sentinel.json b/src/main/resources/data/target/guns/sentinel.json index 02e3032ae..9afc56595 100644 --- a/src/main/resources/data/target/guns/sentinel.json +++ b/src/main/resources/data/target/guns/sentinel.json @@ -1,7 +1,6 @@ { "zoomspeed": 0.95, "zoom": 3, - "sniperguns": 1, "dev": 6, "recoilx": 0.007, "recoily": 0.018, diff --git a/src/main/resources/data/target/guns/sks.json b/src/main/resources/data/target/guns/sks.json index 5bf7128de..f282520de 100644 --- a/src/main/resources/data/target/guns/sks.json +++ b/src/main/resources/data/target/guns/sks.json @@ -1,7 +1,6 @@ { "zoomspeed": 1, "zoom": 1.25, - "rifle": 1, "dev": 5, "recoilx": 0.004, "recoily": 0.015, @@ -9,5 +8,5 @@ "headshot": 1.75, "velocity": 40, "mag": 20, - v + "projectileamount": 1 } \ No newline at end of file diff --git a/src/main/resources/data/target/guns/svd.json b/src/main/resources/data/target/guns/svd.json index 40794e816..88ed68030 100644 --- a/src/main/resources/data/target/guns/svd.json +++ b/src/main/resources/data/target/guns/svd.json @@ -1,7 +1,6 @@ { "zoomspeed": 0.9, "zoom": 4, - "sniperguns": 1, "dev": 6, "recoilx": 0.008, "recoily": 0.015, diff --git a/src/main/resources/data/target/guns/trachelium.json b/src/main/resources/data/target/guns/trachelium.json index 75678196c..456e3081b 100644 --- a/src/main/resources/data/target/guns/trachelium.json +++ b/src/main/resources/data/target/guns/trachelium.json @@ -2,7 +2,6 @@ "zoomspeed": 1.7, "zoom": 1.25, "dev": 3, - "handgun": 1, "recoilx": 0.005, "recoily": 0.022, "damage": 18, diff --git a/src/main/resources/data/target/guns/vector.json b/src/main/resources/data/target/guns/vector.json index 758a61d18..637615ef0 100644 --- a/src/main/resources/data/target/guns/vector.json +++ b/src/main/resources/data/target/guns/vector.json @@ -1,9 +1,7 @@ { "zoomspeed": 1.6, "zoom": 1.25, - "autorifle": 1, "dev": 3.5, - "smg": 1, "recoilx": 0.011, "recoily": 0.004, "damage": 4.5, diff --git a/src/main/resources/data/target/tags/items/handgun.json b/src/main/resources/data/target/tags/items/handgun.json new file mode 100644 index 000000000..75260eb35 --- /dev/null +++ b/src/main/resources/data/target/tags/items/handgun.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "target:trachelium" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/target/tags/items/rifle.json b/src/main/resources/data/target/tags/items/rifle.json new file mode 100644 index 000000000..6383131c1 --- /dev/null +++ b/src/main/resources/data/target/tags/items/rifle.json @@ -0,0 +1,15 @@ +{ + "replace": false, + "values": [ + "target:devotion", + "target:m_4", + "target:hk_416", + "target:rpk", + "target:sks", + "target:minigun", + "target:mk_14", + "target:m_60", + "target:marlin", + "target:ak_47" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/target/tags/items/shotgun.json b/src/main/resources/data/target/tags/items/shotgun.json new file mode 100644 index 000000000..0e2fdf88c --- /dev/null +++ b/src/main/resources/data/target/tags/items/shotgun.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "target:abekiri", + "target:aa_12", + "target:m_870" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/target/tags/items/smg.json b/src/main/resources/data/target/tags/items/smg.json new file mode 100644 index 000000000..6b71c1751 --- /dev/null +++ b/src/main/resources/data/target/tags/items/smg.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "target:vector" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/target/tags/items/sniperrifle.json b/src/main/resources/data/target/tags/items/sniperrifle.json new file mode 100644 index 000000000..7da981448 --- /dev/null +++ b/src/main/resources/data/target/tags/items/sniperrifle.json @@ -0,0 +1,10 @@ +{ + "replace": false, + "values": [ + "target:hunting_rifle", + "target:kraber", + "target:sentinel", + "target:svd", + "target:m_98b" + ] +} \ No newline at end of file