diff --git a/src/main/java/com/atsuishio/superbwarfare/event/GunEventHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/GunEventHandler.java index 91d37f652..08807fd38 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/GunEventHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/GunEventHandler.java @@ -294,24 +294,11 @@ public class GunEventHandler { } // 装填 - if ((stack.getItem() == ModItems.M_870.get() - || stack.getItem() == ModItems.MARLIN.get()) - && reload.iterativeLoadTimer.get() == 3 - ) { + if (data.iterativeAmmoLoadTime() == reload.iterativeLoadTimer.get()) { singleLoad(player, data); } - if (stack.getItem() == ModItems.SECONDARY_CATACLYSM.get() && reload.iterativeLoadTimer.get() == 1) { - singleLoad(player, data); - } - - if ((stack.getItem() == ModItems.K_98.get() || stack.getItem() == ModItems.MOSIN_NAGANT.get()) - && reload.iterativeLoadTimer.get() == 1 - ) { - singleLoad(player, data); - } - - // 二阶段结束 + // 二阶段打断 if (reload.iterativeLoadTimer.get() == 1) { // 装满或备弹耗尽结束 if (!data.hasBackupAmmo(player) || data.ammo.get() >= data.magazine()) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java index 7dbfc990e..609c87296 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java @@ -64,6 +64,8 @@ public class DefaultGunData { public int prepareEmptyTime; @SerializedName("IterativeTime") public int iterativeTime; + @SerializedName("IterativeAmmoLoadTime") + public int iterativeAmmoLoadTime = 1; @SerializedName("FinishTime") public int finishTime; diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/data/GunData.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/data/GunData.java index b85c64ecf..9147809f0 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/data/GunData.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/data/GunData.java @@ -211,6 +211,10 @@ public class GunData { return defaultGunData().iterativeTime; } + public int iterativeAmmoLoadTime() { + return defaultGunData().iterativeAmmoLoadTime; + } + public int defaultPrepareTime() { return defaultGunData().prepareTime; } diff --git a/src/main/resources/data/superbwarfare/guns/m_870.json b/src/main/resources/data/superbwarfare/guns/m_870.json index 042903b9c..b5e810601 100644 --- a/src/main/resources/data/superbwarfare/guns/m_870.json +++ b/src/main/resources/data/superbwarfare/guns/m_870.json @@ -14,6 +14,7 @@ "PrepareTime": 7, "PrepareLoadTime": 36, "IterativeTime": 16, + "IterativeAmmoLoadTime": 3, "FinishTime": 12, "BypassesArmor": 0.05, "SoundRadius": 16, diff --git a/src/main/resources/data/superbwarfare/guns/marlin.json b/src/main/resources/data/superbwarfare/guns/marlin.json index a831632af..8a87f7e7a 100644 --- a/src/main/resources/data/superbwarfare/guns/marlin.json +++ b/src/main/resources/data/superbwarfare/guns/marlin.json @@ -12,6 +12,7 @@ ], "PrepareTime": 7, "IterativeTime": 16, + "IterativeAmmoLoadTime": 3, "FinishTime": 19, "BypassesArmor": 0.3, "SoundRadius": 15,