From 74857554e2336a81428c13eb65a37acb5210c7a4 Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Sat, 28 Sep 2024 00:59:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=AB=98=E7=88=86=E5=BC=B9?= =?UTF-8?q?=E7=9A=84=E8=B4=B4=E5=9B=BE=EF=BC=8C=E9=85=8D=E6=96=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../superbwarfare/event/GunEventHandler.java | 4 ++- .../item/gun/shotgun/Aa12Item.java | 2 +- .../item/gun/shotgun/AbekiriItem.java | 2 +- .../item/gun/shotgun/M870Item.java | 2 +- .../network/message/FireMessage.java | 2 ++ .../superbwarfare/tools/TooltipTool.java | 4 +-- .../assets/superbwarfare/lang/en_us.json | 4 ++- .../assets/superbwarfare/lang/zh_cn.json | 4 ++- .../superbwarfare/models/item/he_bullet.json | 6 +++++ .../textures/item/perk/he_bullet.png | Bin 0 -> 876 bytes .../recipes/perk/he_bullet_perk_crafting.json | 24 ++++++++++++++++++ 11 files changed, 46 insertions(+), 8 deletions(-) create mode 100644 src/main/resources/assets/superbwarfare/models/item/he_bullet.json create mode 100644 src/main/resources/assets/superbwarfare/textures/item/perk/he_bullet.png create mode 100644 src/main/resources/data/superbwarfare/recipes/perk/he_bullet_perk_crafting.json diff --git a/src/main/java/net/mcreator/superbwarfare/event/GunEventHandler.java b/src/main/java/net/mcreator/superbwarfare/event/GunEventHandler.java index 97f0948da..3899e9282 100644 --- a/src/main/java/net/mcreator/superbwarfare/event/GunEventHandler.java +++ b/src/main/java/net/mcreator/superbwarfare/event/GunEventHandler.java @@ -195,6 +195,7 @@ public class GunEventHandler { if (!player.level().isClientSide()) { float headshot = (float) heldItem.getOrCreateTag().getDouble("headshot"); float damage = (float) (heldItem.getOrCreateTag().getDouble("damage") + heldItem.getOrCreateTag().getDouble("sentinelChargeDamage")) * (float) heldItem.getOrCreateTag().getDouble("levelDamageMultiple"); + float velocity = (float) heldItem.getOrCreateTag().getDouble("velocity"); boolean zoom = player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zoom; var perk = PerkHelper.getPerkByType(heldItem, Perk.Type.AMMO); @@ -238,6 +239,7 @@ public class GunEventHandler { } else if (perk == ModPerks.HE_BULLET.get()) { int level = PerkHelper.getItemPerkLevel(perk, heldItem); projectile.heBullet(true, level); + velocity *= 0.6f; } var dmgPerk = PerkHelper.getPerkByType(heldItem, Perk.Type.DAMAGE); @@ -247,7 +249,7 @@ public class GunEventHandler { } projectile.setPos(player.getX() - 0.1 * player.getLookAngle().x, player.getEyeY() - 0.1 - 0.1 * player.getLookAngle().y, player.getZ() + -0.1 * player.getLookAngle().z); - projectile.shoot(player.getLookAngle().x, player.getLookAngle().y + 0.0005f, player.getLookAngle().z, 1 * (float) heldItem.getOrCreateTag().getDouble("velocity"), + projectile.shoot(player.getLookAngle().x, player.getLookAngle().y + 0.0005f, player.getLookAngle().z, velocity, (float) spared); player.level().addFreshEntity(projectile); } diff --git a/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/Aa12Item.java b/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/Aa12Item.java index f502230d9..50e8dc91b 100644 --- a/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/Aa12Item.java +++ b/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/Aa12Item.java @@ -168,7 +168,7 @@ public class Aa12Item extends GunItem implements GeoItem, AnimatedItem { @Override public void appendHoverText(ItemStack stack, @Nullable Level level, List list, TooltipFlag flag) { - TooltipTool.addShotgunTips(list, stack, 8); + TooltipTool.addShotgunTips(list, stack); } @Override diff --git a/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/AbekiriItem.java b/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/AbekiriItem.java index 086c05458..3fbeb7cee 100644 --- a/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/AbekiriItem.java +++ b/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/AbekiriItem.java @@ -159,7 +159,7 @@ public class AbekiriItem extends GunItem implements GeoItem, AnimatedItem { @Override public void appendHoverText(ItemStack stack, @Nullable Level level, List list, TooltipFlag flag) { - TooltipTool.addShotgunTips(list, stack, 8); + TooltipTool.addShotgunTips(list, stack); } public static ItemStack getGunInstance() { diff --git a/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/M870Item.java b/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/M870Item.java index 16adcaa09..43d5e8e5a 100644 --- a/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/M870Item.java +++ b/src/main/java/net/mcreator/superbwarfare/item/gun/shotgun/M870Item.java @@ -158,7 +158,7 @@ public class M870Item extends GunItem implements GeoItem, AnimatedItem { @Override public void appendHoverText(ItemStack stack, @Nullable Level level, List list, TooltipFlag flag) { - TooltipTool.addShotgunTips(list, stack, 12); + TooltipTool.addShotgunTips(list, stack); } @Override diff --git a/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java b/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java index dfeb812e4..3bb5bda46 100644 --- a/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java +++ b/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java @@ -225,6 +225,7 @@ public class FireMessage { } else if (perk == ModPerks.HE_BULLET.get()) { int level = PerkHelper.getItemPerkLevel(perk, heldItem); projectile.heBullet(true, level); + velocity *= 0.6f; } var dmgPerk = PerkHelper.getPerkByType(heldItem, Perk.Type.DAMAGE); @@ -348,6 +349,7 @@ public class FireMessage { } else if (perk == ModPerks.HE_BULLET.get()) { int level = PerkHelper.getItemPerkLevel(perk, heldItem); projectile.heBullet(true, level); + velocity *= 0.6f; } var dmgPerk = PerkHelper.getPerkByType(heldItem, Perk.Type.DAMAGE); diff --git a/src/main/java/net/mcreator/superbwarfare/tools/TooltipTool.java b/src/main/java/net/mcreator/superbwarfare/tools/TooltipTool.java index 84ec40a8b..f145923db 100644 --- a/src/main/java/net/mcreator/superbwarfare/tools/TooltipTool.java +++ b/src/main/java/net/mcreator/superbwarfare/tools/TooltipTool.java @@ -43,7 +43,7 @@ public class TooltipTool { addPerkTips(tooltip, stack); } - public static void addShotgunTips(List tooltip, ItemStack stack, int count) { + public static void addShotgunTips(List tooltip, ItemStack stack) { tooltip.add(Component.literal("")); double damage = ItemNBTTool.getDouble(stack, "damage", 0) @@ -51,7 +51,7 @@ public class TooltipTool { tooltip.add(Component.translatable("des.superbwarfare.tips.damage").withStyle(ChatFormatting.GRAY) .append(Component.literal("").withStyle(ChatFormatting.RESET)) - .append(Component.literal(new DecimalFormat("##.#").format(damage) + " * " + count).withStyle(ChatFormatting.GREEN))); + .append(Component.literal(new DecimalFormat("##.#").format(damage) + " * " + new DecimalFormat("##").format(ItemNBTTool.getDouble(stack, "projectile_amount", 0))).withStyle(ChatFormatting.GREEN))); addLevelTips(tooltip, stack); addBypassTips(tooltip, stack); diff --git a/src/main/resources/assets/superbwarfare/lang/en_us.json b/src/main/resources/assets/superbwarfare/lang/en_us.json index 9f6edd615..c79c1a04f 100644 --- a/src/main/resources/assets/superbwarfare/lang/en_us.json +++ b/src/main/resources/assets/superbwarfare/lang/en_us.json @@ -220,7 +220,9 @@ "item.superbwarfare.longer_wire": "Longer Wire", "des.superbwarfare.longer_wire": "Increases the range of Taser Gun", "item.superbwarfare.jhp_bullet": "JHP Bullet", - "des.superbwarfare.jhp_bullet": "增加对低护甲目标的伤害", + "des.superbwarfare.jhp_bullet": "增加对无护甲目标的伤害,但伤害会随着护甲值上升而迅速降低", + "item.superbwarfare.he_bullet": "Explosion Bullet", + "des.superbwarfare.he_bullet": "子弹在命中后会爆炸", "item.superbwarfare.heal_clip": "Heal Clip", "des.superbwarfare.heal_clip": "Reloading after dealing a final blow will heal you and your nearby allies", diff --git a/src/main/resources/assets/superbwarfare/lang/zh_cn.json b/src/main/resources/assets/superbwarfare/lang/zh_cn.json index e4ce78a3f..91c5c2165 100644 --- a/src/main/resources/assets/superbwarfare/lang/zh_cn.json +++ b/src/main/resources/assets/superbwarfare/lang/zh_cn.json @@ -220,7 +220,9 @@ "item.superbwarfare.longer_wire": "延长导线", "des.superbwarfare.longer_wire": "增加泰瑟枪的射程", "item.superbwarfare.jhp_bullet": "空尖弹", - "des.superbwarfare.jhp_bullet": "增加对低护甲目标的伤害", + "des.superbwarfare.jhp_bullet": "增加对无护甲目标的伤害,但伤害会随着护甲值上升而迅速降低", + "item.superbwarfare.he_bullet": "爆炸子弹", + "des.superbwarfare.he_bullet": "子弹在命中后会爆炸", "item.superbwarfare.heal_clip": "治疗弹匣", "des.superbwarfare.heal_clip": "最后一击后短时间内填装,可治疗自身和附近队友", diff --git a/src/main/resources/assets/superbwarfare/models/item/he_bullet.json b/src/main/resources/assets/superbwarfare/models/item/he_bullet.json new file mode 100644 index 000000000..0f67c16c9 --- /dev/null +++ b/src/main/resources/assets/superbwarfare/models/item/he_bullet.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "superbwarfare:item/perk/he_bullet" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/superbwarfare/textures/item/perk/he_bullet.png b/src/main/resources/assets/superbwarfare/textures/item/perk/he_bullet.png new file mode 100644 index 0000000000000000000000000000000000000000..e84c4817b404380158ef0c3729a1de0802f59e69 GIT binary patch literal 876 zcmV-y1C#uTP)_ z#51H!8qIL7P8(!^eEyu~sPHHdBuGNEWxvY$Bk>*q5Rh%)#?b)4dc8i^Hlzj)hePvd z4!W+x`FwjiJeUu+NFD$N4``YO0Py_njc9`@Sz@l_D04#jE2-&wWvF$$$Ft zbjlfT3jF&1zO|2&1-M4?z<*CSc<|iE;#$d55DPFT@_{zrNWorVmjrjszRq3akRqD82l&Fl zR|HX_g~)HV$5X1ul<MyAXST&oF6> zrjXZ2j3NP2iV{inSEF@~4gpDBA8LUm<7;n+#kWBlu^v;iF^cv8#-N~~92v@ce0f2m zFDUK-Zpq6vI=*MQ`+SKr6(Rws0w#1nbzagBgvQE+N)F&wNm49Lkq5*Aa9*(49*28? zu@GFjYmYCrDF?+o;D!7vvY~uXqVvn$K9dA+2d9X|B*PTqrTYVw9N-Iq6vQUoNxQ*V zmrikc>0X~Ja8@%!5sER03K16<`9_HA1nmk=lGST}M_4QeaADyKiJW;{)O;gk8=?OF zUTKd}?FQZ2;1W?(fczOam@3+c}BfOXnq^Ne|#98>HEGB3&2ern7lQ_slFjJXJG7T6cGSO ze~snT2%&ppOc4oFOn_WCVL`dPiXE;1s@ot3V%6sL1Bq+FU4YsK)W%(a+6L6dXczeV z{Pkjf%ddgeY6Y|91B3wf#aqBV1k8tP_}Awh3it=RE_t?m?nkl!0000