继续清理tag
This commit is contained in:
parent
a832317c25
commit
56750c0e25
34 changed files with 360 additions and 165 deletions
|
@ -1,4 +1,4 @@
|
||||||
// 1.20.1 2024-12-30T14:34:41.442112 Tags for minecraft:item mod id superbwarfare
|
// 1.20.1 2024-12-30T15:07:23.9778545 Tags for minecraft:item mod id superbwarfare
|
||||||
cf8d49a8d2872286d1a9c3d4a7e1c2b7690db0b8 data/forge/tags/items/dusts.json
|
cf8d49a8d2872286d1a9c3d4a7e1c2b7690db0b8 data/forge/tags/items/dusts.json
|
||||||
0fa06c2ff83bf09797e3ddff90f62d1124e645b4 data/forge/tags/items/dusts/coal_coke.json
|
0fa06c2ff83bf09797e3ddff90f62d1124e645b4 data/forge/tags/items/dusts/coal_coke.json
|
||||||
295ddf906b7133a0558d03e9a60eea18281fe430 data/forge/tags/items/dusts/iron.json
|
295ddf906b7133a0558d03e9a60eea18281fe430 data/forge/tags/items/dusts/iron.json
|
||||||
|
@ -26,15 +26,8 @@ af6fd64b4a685c353f243763db268f7b2304c009 data/forge/tags/items/storage_blocks/le
|
||||||
30d1daa7590f7364b5bc2dc777a00caf2f5eecb0 data/forge/tags/items/storage_blocks/silver.json
|
30d1daa7590f7364b5bc2dc777a00caf2f5eecb0 data/forge/tags/items/storage_blocks/silver.json
|
||||||
3743c2790deca7e779d3e4b82f092de39b446988 data/forge/tags/items/storage_blocks/steel.json
|
3743c2790deca7e779d3e4b82f092de39b446988 data/forge/tags/items/storage_blocks/steel.json
|
||||||
144e54d908121dee498b2ebba3b24b09fd6f18d9 data/forge/tags/items/storage_blocks/tungsten.json
|
144e54d908121dee498b2ebba3b24b09fd6f18d9 data/forge/tags/items/storage_blocks/tungsten.json
|
||||||
cedce5ff7bbc95b40cbfced0f03a3da712118049 data/superbwarfare/tags/items/can_apply_barrel.json
|
|
||||||
4b0864ba4b2bb2ca3b30bdc2fefe3077f5020466 data/superbwarfare/tags/items/can_apply_grip.json
|
|
||||||
41a5f975239ec6e000229dfc212b9d886496cccc data/superbwarfare/tags/items/can_apply_magazine.json
|
|
||||||
cedce5ff7bbc95b40cbfced0f03a3da712118049 data/superbwarfare/tags/items/can_apply_scope.json
|
|
||||||
29af1d9a8f837510bc039feb578330f1a053543f data/superbwarfare/tags/items/can_apply_stock.json
|
|
||||||
cedce5ff7bbc95b40cbfced0f03a3da712118049 data/superbwarfare/tags/items/can_custom_gun.json
|
|
||||||
52598e22974c8da0d2852defe4c9005e1d67744b data/superbwarfare/tags/items/gun.json
|
52598e22974c8da0d2852defe4c9005e1d67744b data/superbwarfare/tags/items/gun.json
|
||||||
62eb408544731ce4cfcd119d8a6cc74731189ac0 data/superbwarfare/tags/items/handgun.json
|
62eb408544731ce4cfcd119d8a6cc74731189ac0 data/superbwarfare/tags/items/handgun.json
|
||||||
49fbb8c030fdfafec1f291acc1cdff406c777c7e data/superbwarfare/tags/items/has_shell_effect.json
|
|
||||||
68ec25b0ccd68abbbe2f33ab7097572c2140c9da data/superbwarfare/tags/items/launcher.json
|
68ec25b0ccd68abbbe2f33ab7097572c2140c9da data/superbwarfare/tags/items/launcher.json
|
||||||
b404c6fd99d2ca68c6738f225cb7d68ee443c10a data/superbwarfare/tags/items/machine_gun.json
|
b404c6fd99d2ca68c6738f225cb7d68ee443c10a data/superbwarfare/tags/items/machine_gun.json
|
||||||
a53020091752016da6602ee1b8b7e08823614344 data/superbwarfare/tags/items/military_armor.json
|
a53020091752016da6602ee1b8b7e08823614344 data/superbwarfare/tags/items/military_armor.json
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:qbz_95",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:trachelium",
|
|
||||||
"superbwarfare:mk_14"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:qbz_95",
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:trachelium",
|
|
||||||
"superbwarfare:mk_14"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:qbz_95",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:mk_14"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:qbz_95",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:trachelium",
|
|
||||||
"superbwarfare:mk_14"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:trachelium",
|
|
||||||
"superbwarfare:mk_14"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:qbz_95",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:trachelium",
|
|
||||||
"superbwarfare:mk_14"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"values": [
|
|
||||||
"superbwarfare:ak_47",
|
|
||||||
"superbwarfare:ak_12",
|
|
||||||
"superbwarfare:svd",
|
|
||||||
"superbwarfare:m_60",
|
|
||||||
"superbwarfare:mk_14",
|
|
||||||
"superbwarfare:vector",
|
|
||||||
"superbwarfare:sks",
|
|
||||||
"superbwarfare:rpk",
|
|
||||||
"superbwarfare:hk_416",
|
|
||||||
"superbwarfare:aa_12",
|
|
||||||
"superbwarfare:m_4",
|
|
||||||
"superbwarfare:devotion",
|
|
||||||
"superbwarfare:glock_17",
|
|
||||||
"superbwarfare:glock_18",
|
|
||||||
"superbwarfare:m_1911",
|
|
||||||
"superbwarfare:qbz_95"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -214,22 +214,23 @@ public class ClickHandler {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).edit) {
|
if (player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).edit) {
|
||||||
|
if (!(stack.getItem() instanceof GunItem gunItem)) return;
|
||||||
if (ModKeyMappings.EDIT_GRIP.getKeyModifier().isActive(KeyConflictContext.IN_GAME)) {
|
if (ModKeyMappings.EDIT_GRIP.getKeyModifier().isActive(KeyConflictContext.IN_GAME)) {
|
||||||
if (key == ModKeyMappings.EDIT_GRIP.getKey().getValue() && stack.is(ModTags.Items.CAN_APPLY_GRIP)) {
|
if (key == ModKeyMappings.EDIT_GRIP.getKey().getValue() && gunItem.canCustomGrip(stack)) {
|
||||||
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(4));
|
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(4));
|
||||||
editModelShake();
|
editModelShake();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (key == ModKeyMappings.EDIT_SCOPE.getKey().getValue() && stack.is(ModTags.Items.CAN_APPLY_SCOPE)) {
|
if (key == ModKeyMappings.EDIT_SCOPE.getKey().getValue() && gunItem.canCustomScope(stack)) {
|
||||||
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(0));
|
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(0));
|
||||||
editModelShake();
|
editModelShake();
|
||||||
} else if (key == ModKeyMappings.EDIT_BARREL.getKey().getValue() && stack.is(ModTags.Items.CAN_APPLY_BARREL)) {
|
} else if (key == ModKeyMappings.EDIT_BARREL.getKey().getValue() && gunItem.canCustomBarrel(stack)) {
|
||||||
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(1));
|
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(1));
|
||||||
editModelShake();
|
editModelShake();
|
||||||
} else if (key == ModKeyMappings.EDIT_MAGAZINE.getKey().getValue() && stack.is(ModTags.Items.CAN_APPLY_MAGAZINE)) {
|
} else if (key == ModKeyMappings.EDIT_MAGAZINE.getKey().getValue() && gunItem.canCustomMagazine(stack)) {
|
||||||
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(2));
|
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(2));
|
||||||
editModelShake();
|
editModelShake();
|
||||||
} else if (key == ModKeyMappings.EDIT_STOCK.getKey().getValue() && stack.is(ModTags.Items.CAN_APPLY_STOCK)) {
|
} else if (key == ModKeyMappings.EDIT_STOCK.getKey().getValue() && gunItem.canCustomStock(stack)) {
|
||||||
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(3));
|
ModUtils.PACKET_HANDLER.sendToServer(new EditMessage(3));
|
||||||
editModelShake();
|
editModelShake();
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@ package com.atsuishio.superbwarfare.client.tooltip;
|
||||||
import com.atsuishio.superbwarfare.client.tooltip.component.GunImageComponent;
|
import com.atsuishio.superbwarfare.client.tooltip.component.GunImageComponent;
|
||||||
import com.atsuishio.superbwarfare.init.ModKeyMappings;
|
import com.atsuishio.superbwarfare.init.ModKeyMappings;
|
||||||
import com.atsuishio.superbwarfare.init.ModPerks;
|
import com.atsuishio.superbwarfare.init.ModPerks;
|
||||||
import com.atsuishio.superbwarfare.init.ModTags;
|
|
||||||
import com.atsuishio.superbwarfare.item.gun.GunItem;
|
import com.atsuishio.superbwarfare.item.gun.GunItem;
|
||||||
import com.atsuishio.superbwarfare.perk.AmmoPerk;
|
import com.atsuishio.superbwarfare.perk.AmmoPerk;
|
||||||
import com.atsuishio.superbwarfare.perk.Perk;
|
import com.atsuishio.superbwarfare.perk.Perk;
|
||||||
|
@ -75,7 +74,7 @@ public class ClientGunImageTooltip implements ClientTooltipComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected boolean shouldRenderEditTooltip() {
|
protected boolean shouldRenderEditTooltip() {
|
||||||
return stack.is(ModTags.Items.CAN_CUSTOM_GUN);
|
return gunItem.canCustom(stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected boolean shouldRenderPerks() {
|
protected boolean shouldRenderPerks() {
|
||||||
|
|
|
@ -98,30 +98,7 @@ public class ModItemTagProvider extends ItemTagsProvider {
|
||||||
|
|
||||||
this.tag(ModTags.Items.REVOLVER).add(ModItems.TRACHELIUM.get());
|
this.tag(ModTags.Items.REVOLVER).add(ModItems.TRACHELIUM.get());
|
||||||
|
|
||||||
this.tag(ModTags.Items.HAS_SHELL_EFFECT).add(ModItems.AK_47.get(), ModItems.AK_12.get(), ModItems.SVD.get(), ModItems.M_60.get(), ModItems.MK_14.get(), ModItems.VECTOR.get(),
|
|
||||||
ModItems.SKS.get(), ModItems.RPK.get(), ModItems.HK_416.get(), ModItems.AA_12.get(), ModItems.M_4.get(), ModItems.DEVOTION.get(), ModItems.GLOCK_17.get(),
|
|
||||||
ModItems.GLOCK_18.get(), ModItems.M_1911.get(), ModItems.QBZ_95.get());
|
|
||||||
|
|
||||||
this.tag(ModTags.Items.MILITARY_ARMOR).add(ModItems.RU_CHEST_6B43.get(), ModItems.US_CHEST_IOTV.get());
|
this.tag(ModTags.Items.MILITARY_ARMOR).add(ModItems.RU_CHEST_6B43.get(), ModItems.US_CHEST_IOTV.get());
|
||||||
|
|
||||||
this.tag(ModTags.Items.CAN_CUSTOM_GUN).add(ModItems.AK_12.get(), ModItems.AK_47.get(), ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.QBZ_95.get(), ModItems.VECTOR.get(), ModItems.TRACHELIUM.get(),
|
|
||||||
ModItems.MK_14.get());
|
|
||||||
|
|
||||||
this.tag(ModTags.Items.CAN_APPLY_BARREL).add(ModItems.AK_12.get(), ModItems.AK_47.get(), ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.QBZ_95.get(), ModItems.VECTOR.get(), ModItems.TRACHELIUM.get(),
|
|
||||||
ModItems.MK_14.get());
|
|
||||||
|
|
||||||
this.tag(ModTags.Items.CAN_APPLY_GRIP).add(ModItems.AK_12.get(), ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.QBZ_95.get(), ModItems.AK_47.get(), ModItems.VECTOR.get(), ModItems.TRACHELIUM.get(),
|
|
||||||
ModItems.MK_14.get());
|
|
||||||
|
|
||||||
this.tag(ModTags.Items.CAN_APPLY_SCOPE).add(ModItems.AK_12.get(), ModItems.AK_47.get(), ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.QBZ_95.get(), ModItems.VECTOR.get(), ModItems.TRACHELIUM.get(),
|
|
||||||
ModItems.MK_14.get());
|
|
||||||
|
|
||||||
this.tag(ModTags.Items.CAN_APPLY_MAGAZINE).add(ModItems.AK_12.get(), ModItems.AK_47.get(), ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.QBZ_95.get(), ModItems.VECTOR.get(),
|
|
||||||
ModItems.MK_14.get());
|
|
||||||
|
|
||||||
this.tag(ModTags.Items.CAN_APPLY_STOCK).add(ModItems.AK_12.get(), ModItems.AK_47.get(), ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.VECTOR.get(), ModItems.TRACHELIUM.get(),
|
|
||||||
ModItems.MK_14.get());
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static TagKey<Item> forgeTag(String name) {
|
private static TagKey<Item> forgeTag(String name) {
|
||||||
|
|
|
@ -8,6 +8,7 @@ import com.atsuishio.superbwarfare.entity.IArmedVehicleEntity;
|
||||||
import com.atsuishio.superbwarfare.entity.ICannonEntity;
|
import com.atsuishio.superbwarfare.entity.ICannonEntity;
|
||||||
import com.atsuishio.superbwarfare.entity.SpeedboatEntity;
|
import com.atsuishio.superbwarfare.entity.SpeedboatEntity;
|
||||||
import com.atsuishio.superbwarfare.init.*;
|
import com.atsuishio.superbwarfare.init.*;
|
||||||
|
import com.atsuishio.superbwarfare.item.gun.GunItem;
|
||||||
import com.atsuishio.superbwarfare.network.ModVariables;
|
import com.atsuishio.superbwarfare.network.ModVariables;
|
||||||
import com.atsuishio.superbwarfare.network.message.LaserShootMessage;
|
import com.atsuishio.superbwarfare.network.message.LaserShootMessage;
|
||||||
import com.atsuishio.superbwarfare.network.message.ShootMessage;
|
import com.atsuishio.superbwarfare.network.message.ShootMessage;
|
||||||
|
@ -489,7 +490,7 @@ public class ClientEventHandler {
|
||||||
|
|
||||||
public static void playGunClientSounds(Player player) {
|
public static void playGunClientSounds(Player player) {
|
||||||
ItemStack stack = player.getMainHandItem();
|
ItemStack stack = player.getMainHandItem();
|
||||||
if (!stack.is(ModTags.Items.GUN)) {
|
if (!(stack.getItem() instanceof GunItem gunItem)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -530,7 +531,7 @@ public class ClientEventHandler {
|
||||||
ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, player)).getBlockPos())));
|
ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, player)).getBlockPos())));
|
||||||
|
|
||||||
ModUtils.queueClientWork((int) (1 + 1.5 * shooterHeight), () -> {
|
ModUtils.queueClientWork((int) (1 + 1.5 * shooterHeight), () -> {
|
||||||
if (stack.is(ModTags.Items.HAS_SHELL_EFFECT)) {
|
if (gunItem.ejectShell(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), 1);
|
||||||
} else if (stack.is(ModTags.Items.SNIPER_RIFLE)) {
|
} else if (stack.is(ModTags.Items.SNIPER_RIFLE)) {
|
||||||
|
@ -954,7 +955,7 @@ public class ClientEventHandler {
|
||||||
Player player = Minecraft.getInstance().player;
|
Player player = Minecraft.getInstance().player;
|
||||||
if (player == null) return;
|
if (player == null) return;
|
||||||
ItemStack stack = player.getMainHandItem();
|
ItemStack stack = player.getMainHandItem();
|
||||||
if (!stack.is(ModTags.Items.GUN)) return;
|
if (!(stack.getItem() instanceof GunItem gunItem)) return;
|
||||||
|
|
||||||
float times = (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
|
float times = (float) Math.min(Minecraft.getInstance().getDeltaFrameTime(), 1.6);
|
||||||
int barrelType = GunsTool.getAttachmentType(stack, GunsTool.AttachmentType.BARREL);
|
int barrelType = GunsTool.getAttachmentType(stack, GunsTool.AttachmentType.BARREL);
|
||||||
|
@ -978,7 +979,7 @@ public class ClientEventHandler {
|
||||||
default -> 2.0;
|
default -> 2.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!stack.is(ModTags.Items.CAN_CUSTOM_GUN)) {
|
if (!gunItem.canCustom(stack)) {
|
||||||
recoil = 1.6;
|
recoil = 1.6;
|
||||||
gripRecoilX = 0.75;
|
gripRecoilX = 0.75;
|
||||||
gripRecoilY = 1.25;
|
gripRecoilY = 1.25;
|
||||||
|
|
|
@ -312,11 +312,8 @@ public class GunEventHandler {
|
||||||
*/
|
*/
|
||||||
private static void handleGunReload(Player player) {
|
private static void handleGunReload(Player player) {
|
||||||
ItemStack stack = player.getMainHandItem();
|
ItemStack stack = player.getMainHandItem();
|
||||||
GunItem gunItem = null;
|
if (!(stack.getItem() instanceof GunItem gunItem)) return;
|
||||||
if (stack.getItem() instanceof GunItem gunItem1) {
|
|
||||||
gunItem = gunItem1;
|
|
||||||
}
|
|
||||||
if (gunItem == null) return;
|
|
||||||
CompoundTag tag = stack.getOrCreateTag();
|
CompoundTag tag = stack.getOrCreateTag();
|
||||||
CompoundTag data = stack.getOrCreateTag().getCompound("GunData");
|
CompoundTag data = stack.getOrCreateTag().getCompound("GunData");
|
||||||
// 启动换弹
|
// 启动换弹
|
||||||
|
@ -401,12 +398,7 @@ public class GunEventHandler {
|
||||||
|
|
||||||
public static void playGunNormalReload(Player player) {
|
public static void playGunNormalReload(Player player) {
|
||||||
ItemStack stack = player.getMainHandItem();
|
ItemStack stack = player.getMainHandItem();
|
||||||
|
if (!(stack.getItem() instanceof GunItem gunItem)) return;
|
||||||
GunItem gunItem = null;
|
|
||||||
if (stack.getItem() instanceof GunItem gunItem1) {
|
|
||||||
gunItem = gunItem1;
|
|
||||||
}
|
|
||||||
if (gunItem == null) return;
|
|
||||||
|
|
||||||
if (player.getInventory().hasAnyMatching(item -> item.is(ModItems.CREATIVE_AMMO_BOX.get()))) {
|
if (player.getInventory().hasAnyMatching(item -> item.is(ModItems.CREATIVE_AMMO_BOX.get()))) {
|
||||||
GunsTool.setGunIntTag(stack, "Ammo", GunsTool.getGunIntTag(stack, "Magazine", 0) + stack.getOrCreateTag().getInt("customMag")
|
GunsTool.setGunIntTag(stack, "Ammo", GunsTool.getGunIntTag(stack, "Magazine", 0) + stack.getOrCreateTag().getInt("customMag")
|
||||||
|
|
|
@ -28,15 +28,6 @@ public class ModTags {
|
||||||
public static final TagKey<Item> REVOLVER = tag("revolver");
|
public static final TagKey<Item> REVOLVER = tag("revolver");
|
||||||
|
|
||||||
public static final TagKey<Item> NORMAL_GUN = tag("normal_gun");
|
public static final TagKey<Item> NORMAL_GUN = tag("normal_gun");
|
||||||
public static final TagKey<Item> CAN_CUSTOM_GUN = tag("can_custom_gun");
|
|
||||||
|
|
||||||
public static final TagKey<Item> CAN_APPLY_BARREL = tag("can_apply_barrel");
|
|
||||||
public static final TagKey<Item> CAN_APPLY_SCOPE = tag("can_apply_scope");
|
|
||||||
public static final TagKey<Item> CAN_APPLY_GRIP = tag("can_apply_grip");
|
|
||||||
public static final TagKey<Item> CAN_APPLY_MAGAZINE = tag("can_apply_magazine");
|
|
||||||
public static final TagKey<Item> CAN_APPLY_STOCK= tag("can_apply_stock");
|
|
||||||
|
|
||||||
public static final TagKey<Item> HAS_SHELL_EFFECT= tag("has_shell_effect");
|
|
||||||
|
|
||||||
public static final TagKey<Item> MILITARY_ARMOR = tag("military_armor");
|
public static final TagKey<Item> MILITARY_ARMOR = tag("military_armor");
|
||||||
public static final TagKey<Item> MILITARY_ARMOR_HEAVY = tag("military_armor_heavy");
|
public static final TagKey<Item> MILITARY_ARMOR_HEAVY = tag("military_armor_heavy");
|
||||||
|
|
|
@ -55,11 +55,7 @@ public abstract class GunItem extends Item {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
GunItem gunItem = null;
|
if (!(stack.getItem() instanceof GunItem gunItem)) return;
|
||||||
if (stack.getItem() instanceof GunItem gunItem1) {
|
|
||||||
gunItem = gunItem1;
|
|
||||||
}
|
|
||||||
if (gunItem == null) return;
|
|
||||||
|
|
||||||
if (!ItemNBTTool.getBoolean(stack, "init", false)) {
|
if (!ItemNBTTool.getBoolean(stack, "init", false)) {
|
||||||
GunsTool.initGun(level, stack, this.getDescriptionId().substring(this.getDescriptionId().lastIndexOf('.') + 1));
|
GunsTool.initGun(level, stack, this.getDescriptionId().substring(this.getDescriptionId().lastIndexOf('.') + 1));
|
||||||
|
@ -270,4 +266,32 @@ public abstract class GunItem extends Item {
|
||||||
public boolean useBackpackAmmo(ItemStack stack) {
|
public boolean useBackpackAmmo(ItemStack stack) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -162,4 +162,9 @@ public class Glock17Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean bulletInBarrel(ItemStack stack) {
|
public boolean bulletInBarrel(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -170,4 +170,9 @@ public class Glock18Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -153,4 +153,9 @@ public class M1911Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean bulletInBarrel(ItemStack stack) {
|
public boolean bulletInBarrel(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -318,4 +318,29 @@ public class Trachelium extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean isMagazineReload(ItemStack stack) {
|
public boolean isMagazineReload(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -154,4 +154,9 @@ public class DevotionItem extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -178,4 +178,9 @@ public class M60Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -155,4 +155,9 @@ public class RpkItem extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -219,4 +219,39 @@ public class AK12Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -233,4 +233,39 @@ public class AK47Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -235,4 +235,39 @@ public class Hk416Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -234,4 +234,39 @@ public class M4Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -233,4 +233,39 @@ public class Mk14Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -236,4 +236,34 @@ public class Qbz95Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -163,4 +163,9 @@ public class SksItem extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean bulletInBarrel(ItemStack stack) {
|
public boolean bulletInBarrel(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -187,4 +187,9 @@ public class Aa12Item extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -209,4 +209,39 @@ public class VectorItem extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean autoWeapon(ItemStack stack) {
|
public boolean autoWeapon(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustom(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomBarrel(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomGrip(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomMagazine(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomScope(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canCustomStock(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -148,4 +148,9 @@ public class SvdItem extends GunItem implements GeoItem, AnimatedItem {
|
||||||
public boolean bulletInBarrel(ItemStack stack) {
|
public boolean bulletInBarrel(ItemStack stack) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean ejectShell(ItemStack stack) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
package com.atsuishio.superbwarfare.network.message;
|
package com.atsuishio.superbwarfare.network.message;
|
||||||
|
|
||||||
|
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||||
|
import com.atsuishio.superbwarfare.item.gun.GunItem;
|
||||||
import com.atsuishio.superbwarfare.network.ModVariables;
|
import com.atsuishio.superbwarfare.network.ModVariables;
|
||||||
import com.atsuishio.superbwarfare.tools.SoundTool;
|
import com.atsuishio.superbwarfare.tools.SoundTool;
|
||||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
|
||||||
import com.atsuishio.superbwarfare.init.ModTags;
|
|
||||||
import net.minecraft.network.FriendlyByteBuf;
|
import net.minecraft.network.FriendlyByteBuf;
|
||||||
import net.minecraft.world.entity.player.Player;
|
import net.minecraft.world.entity.player.Player;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
|
@ -39,9 +39,10 @@ public class EditModeMessage {
|
||||||
|
|
||||||
if (type == 0) {
|
if (type == 0) {
|
||||||
ItemStack mainHandItem = player.getMainHandItem();
|
ItemStack mainHandItem = player.getMainHandItem();
|
||||||
|
if (!(mainHandItem.getItem() instanceof GunItem gunItem)) return;
|
||||||
var cap = player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null);
|
var cap = player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null);
|
||||||
|
|
||||||
if (mainHandItem.is(ModTags.Items.CAN_CUSTOM_GUN)) {
|
if (gunItem.canCustom(mainHandItem)) {
|
||||||
if (!player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).edit) {
|
if (!player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).edit) {
|
||||||
SoundTool.playLocalSound(player, ModSounds.EDIT_MODE.get(), 1f, 1f);
|
SoundTool.playLocalSound(player, ModSounds.EDIT_MODE.get(), 1f, 1f);
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,11 +103,7 @@ public class GunsTool {
|
||||||
|
|
||||||
public static void reload(Player player, ItemStack stack, GunInfo.Type type, boolean extraOne) {
|
public static void reload(Player player, ItemStack stack, GunInfo.Type type, boolean extraOne) {
|
||||||
CompoundTag tag = stack.getOrCreateTag();
|
CompoundTag tag = stack.getOrCreateTag();
|
||||||
GunItem gunItem = null;
|
if (!(stack.getItem() instanceof GunItem gunItem)) return;
|
||||||
if (stack.getItem() instanceof GunItem gunItem1) {
|
|
||||||
gunItem = gunItem1;
|
|
||||||
}
|
|
||||||
if (gunItem == null) return;
|
|
||||||
|
|
||||||
int mag = GunsTool.getGunIntTag(stack, "Magazine", 0) + tag.getInt("customMag");
|
int mag = GunsTool.getGunIntTag(stack, "Magazine", 0) + tag.getInt("customMag");
|
||||||
int ammo = gunItem.getAmmoCount(stack);
|
int ammo = gunItem.getAmmoCount(stack);
|
||||||
|
|
Loading…
Add table
Reference in a new issue