优化NBT#NormalReloadTime

This commit is contained in:
17146 2024-12-24 14:53:17 +08:00
parent fdaa4c48d6
commit c00da95dbf
23 changed files with 27 additions and 28 deletions

View file

@ -273,6 +273,7 @@ public class GunEventHandler {
return 1;
}
@SuppressWarnings("ConstantValue")
private static boolean handleButterflyBullet(Perk perk, ItemStack heldItem, Player player) {
int perkLevel = PerkHelper.getItemPerkLevel(perk, heldItem);
@ -321,7 +322,7 @@ public class GunEventHandler {
stack.getOrCreateTag().putBoolean("is_empty_reloading", true);
playGunEmptyReloadSounds(player);
} else {
data.putInt("ReloadTime", (int) tag.getDouble("normal_reload_time") + 1);
data.putInt("ReloadTime", GunsTool.getGunIntTag(stack, "NormalReloadTime") + 1);
stack.getOrCreateTag().putBoolean("is_normal_reloading", true);
playGunNormalReloadSounds(player);
}
@ -845,9 +846,7 @@ public class GunEventHandler {
ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, player)).getBlockPos())));
if (stack.is(ModItems.MARLIN.get())) {
ModUtils.queueServerWork((int) (5 + 1.5 * shooterHeight), () -> {
SoundTool.playLocalSound(serverPlayer, ModSounds.SHELL_CASING_NORMAL.get(), (float) Math.max(1.5 - 0.2 * shooterHeight, 0), 1);
});
ModUtils.queueServerWork((int) (5 + 1.5 * shooterHeight), () -> SoundTool.playLocalSound(serverPlayer, ModSounds.SHELL_CASING_NORMAL.get(), (float) Math.max(1.5 - 0.2 * shooterHeight, 0), 1));
}
}
}

View file

@ -1,9 +1,9 @@
package com.atsuishio.superbwarfare.network.message;
import com.atsuishio.superbwarfare.network.ModVariables;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.atsuishio.superbwarfare.init.ModItems;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.network.ModVariables;
import com.atsuishio.superbwarfare.tools.GunsTool;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.world.entity.player.Player;
@ -64,7 +64,7 @@ public class ReloadMessage {
CompoundTag tag = stack.getOrCreateTag();
boolean canSingleReload = tag.getDouble("iterative_time") != 0;
boolean canReload = (tag.getDouble("normal_reload_time") != 0 || GunsTool.getGunIntTag(stack, "EmptyReloadTime") != 0) && tag.getDouble("clipLoad") != 1;
boolean canReload = (GunsTool.getGunIntTag(stack, "NormalReloadTime") != 0 || GunsTool.getGunIntTag(stack, "EmptyReloadTime") != 0) && tag.getDouble("clipLoad") != 1;
boolean clipLoad = tag.getInt("ammo") == 0 && tag.getDouble("clipLoad") == 1;
// 检查备弹

View file

@ -55,7 +55,7 @@ public class GunsTool {
// TODO 临时使用移植完毕后删除
private static final Set<String> STRING_SET = Set.of("EmptyReloadTime", "FireMode", "Weight", "SoundRadius", "BurstSize", "ProjectileAmount",
"Spread");
"Spread", "NormalReloadTime");
public static void initGun(Level level, ItemStack stack, String location) {
if (level.getServer() == null) return;

View file

@ -12,7 +12,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 64,
"NormalReloadTime": 64,
"EmptyReloadTime": 85,
"BypassesArmor": 0.05,
"SoundRadius": 18,

View file

@ -12,7 +12,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 66,
"NormalReloadTime": 66,
"EmptyReloadTime": 83,
"BypassesArmor": 0.01,
"SoundRadius": 16,

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 52,
"NormalReloadTime": 52,
"EmptyReloadTime": 58,
"BypassesArmor": 0.23,
"SoundRadius": 12,

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 52,
"NormalReloadTime": 52,
"EmptyReloadTime": 65,
"BypassesArmor": 0.2,
"SoundRadius": 14,

View file

@ -12,7 +12,7 @@
"semi": 0,
"burst": 0,
"auto": 1,
"normal_reload_time": 73,
"NormalReloadTime": 73,
"EmptyReloadTime": 95,
"BypassesArmor": 0.25,
"SoundRadius": 13,

View file

@ -11,7 +11,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 30,
"NormalReloadTime": 30,
"EmptyReloadTime": 35,
"BypassesArmor": 0.15,
"SoundRadius": 8,

View file

@ -11,7 +11,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 30,
"NormalReloadTime": 30,
"EmptyReloadTime": 35,
"BypassesArmor": 0.15,
"SoundRadius": 8,

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 56,
"NormalReloadTime": 56,
"EmptyReloadTime": 64,
"BypassesArmor": 0.25,
"SoundRadius": 14,

View file

@ -11,7 +11,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 30,
"NormalReloadTime": 30,
"EmptyReloadTime": 35,
"BypassesArmor": 0.2,
"SoundRadius": 10,

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 56,
"NormalReloadTime": 56,
"EmptyReloadTime": 64,
"BypassesArmor": 0.25,
"SoundRadius": 14,

View file

@ -11,7 +11,7 @@
"semi": 0,
"burst": 0,
"auto": 1,
"normal_reload_time": 114,
"NormalReloadTime": 114,
"EmptyReloadTime": 133,
"BypassesArmor": 0.25,
"SoundRadius": 15,

View file

@ -15,7 +15,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 60,
"NormalReloadTime": 60,
"EmptyReloadTime": 78,
"BypassesArmor": 0.6,
"SoundRadius": 18

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 54,
"NormalReloadTime": 54,
"EmptyReloadTime": 71,
"BypassesArmor": 0.4,
"SoundRadius": 16,

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 63,
"NormalReloadTime": 63,
"EmptyReloadTime": 92,
"BypassesArmor": 1,
"SoundRadius": 22

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 60,
"NormalReloadTime": 60,
"EmptyReloadTime": 74,
"BypassesArmor": 0.28,
"SoundRadius": 13,

View file

@ -11,7 +11,7 @@
"semi": 1,
"burst": 0,
"auto": 1,
"normal_reload_time": 73,
"NormalReloadTime": 73,
"EmptyReloadTime": 95,
"BypassesArmor": 0.23,
"SoundRadius": 14,

View file

@ -13,7 +13,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 59,
"NormalReloadTime": 59,
"EmptyReloadTime": 89,
"BypassesArmor": 0.8,
"SoundRadius": 20

View file

@ -11,7 +11,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 54,
"NormalReloadTime": 54,
"EmptyReloadTime": 75,
"BypassesArmor": 0.23,
"SoundRadius": 16,

View file

@ -12,7 +12,7 @@
"semi": 1,
"burst": 0,
"auto": 0,
"normal_reload_time": 56,
"NormalReloadTime": 56,
"EmptyReloadTime": 70,
"BypassesArmor": 0.45,
"SoundRadius": 17,

View file

@ -12,7 +12,7 @@
"burst": 1,
"auto": 1,
"BurstSize": 3,
"normal_reload_time": 46,
"NormalReloadTime": 46,
"EmptyReloadTime": 64,
"BypassesArmor": 0.15,
"SoundRadius": 11,