调整武器初始方法

This commit is contained in:
Atsuihsio 2024-05-07 16:00:38 +08:00
parent a4776f98cc
commit 077d612d01
7 changed files with 165 additions and 64 deletions

View file

@ -27,6 +27,11 @@ public class TargetModTabs {
output.accept(Abekiri.getGunInstance()); output.accept(Abekiri.getGunInstance());
output.accept(Trachelium.getGunInstance()); output.accept(Trachelium.getGunInstance());
output.accept(VectorItem.getGunInstance()); output.accept(VectorItem.getGunInstance());
output.accept(SksItem.getGunInstance());
output.accept(AK47Item.getGunInstance());
output.accept(Devotion.getGunInstance());
output.accept(HuntingRifle.getGunInstance());
output.accept(M79Item.getGunInstance());
output.accept(Mk14Item.getGunInstance()); output.accept(Mk14Item.getGunInstance());
output.accept(MarlinItem.getGunInstance()); output.accept(MarlinItem.getGunInstance());

View file

@ -3,7 +3,9 @@ package net.mcreator.target.item.gun;
import com.google.common.collect.HashMultimap; import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import net.mcreator.target.client.renderer.item.AK47ItemRenderer; import net.mcreator.target.client.renderer.item.AK47ItemRenderer;
import net.mcreator.target.init.TargetModItems;
import net.mcreator.target.procedures.AK47WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure; import net.mcreator.target.procedures.AK47WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure;
import net.mcreator.target.tools.ItemNBTTool;
import net.mcreator.target.tools.TooltipTool; import net.mcreator.target.tools.TooltipTool;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.model.HumanoidModel;
@ -162,5 +164,36 @@ public class AK47Item extends GunItem implements GeoItem {
public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) { public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) {
super.inventoryTick(itemstack, world, entity, slot, selected); super.inventoryTick(itemstack, world, entity, slot, selected);
AK47WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack); AK47WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack);
if (!ItemNBTTool.getBoolean(itemstack, "init", false)) {
initGun(itemstack, false);
} }
}
public static ItemStack getGunInstance() {
ItemStack stack = new ItemStack(TargetModItems.AK_47.get());
initGun(stack, true);
return stack;
}
private static void initGun(ItemStack stack, boolean isCreative) {
stack.getOrCreateTag().putDouble("zoomspeed", 1.1);
stack.getOrCreateTag().putDouble("zoom", 1.25);
stack.getOrCreateTag().putDouble("rifle", 1);
stack.getOrCreateTag().putDouble("autorifle", 1);
stack.getOrCreateTag().putDouble("dev", 4);
stack.getOrCreateTag().putDouble("recoilx", 0.0025);
stack.getOrCreateTag().putDouble("recoily", 0.012);
stack.getOrCreateTag().putDouble("damage", 8.5);
stack.getOrCreateTag().putDouble("headshot", 2);
stack.getOrCreateTag().putDouble("velocity", 30);
stack.getOrCreateTag().putDouble("mag", 30);
stack.getOrCreateTag().putBoolean("init", true);
if (isCreative) {
stack.getOrCreateTag().putDouble("ammo", stack.getOrCreateTag().getDouble("mag"));
}
}
} }

View file

@ -3,7 +3,9 @@ package net.mcreator.target.item.gun;
import com.google.common.collect.HashMultimap; import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import net.mcreator.target.client.renderer.item.DevotionItemRenderer; import net.mcreator.target.client.renderer.item.DevotionItemRenderer;
import net.mcreator.target.init.TargetModItems;
import net.mcreator.target.procedures.DevotionWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure; import net.mcreator.target.procedures.DevotionWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure;
import net.mcreator.target.tools.ItemNBTTool;
import net.mcreator.target.tools.TooltipTool; import net.mcreator.target.tools.TooltipTool;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.model.HumanoidModel;
@ -153,5 +155,38 @@ public class Devotion extends GunItem implements GeoItem {
public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) { public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) {
super.inventoryTick(itemstack, world, entity, slot, selected); super.inventoryTick(itemstack, world, entity, slot, selected);
DevotionWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack); DevotionWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack);
if (!ItemNBTTool.getBoolean(itemstack, "init", false)) {
initGun(itemstack, false);
}
}
public static ItemStack getGunInstance() {
ItemStack stack = new ItemStack(TargetModItems.DEVOTION.get());
initGun(stack, true);
return stack;
}
private static void initGun(ItemStack stack, boolean isCreative) {
stack.getOrCreateTag().putDouble("zoomspeed", 0.9);
stack.getOrCreateTag().putDouble("zoom", 2);
stack.getOrCreateTag().putDouble("rifle", 1);
stack.getOrCreateTag().putDouble("autorifle", 1);
stack.getOrCreateTag().putDouble("mg", 1);
stack.getOrCreateTag().putDouble("dev", 5);
stack.getOrCreateTag().putDouble("bipod", 1);
stack.getOrCreateTag().putDouble("recoilx", 0.0018);
stack.getOrCreateTag().putDouble("recoily", 0.01);
stack.getOrCreateTag().putDouble("damage", 7);
stack.getOrCreateTag().putDouble("headshot", 2);
stack.getOrCreateTag().putDouble("velocity", 40);
stack.getOrCreateTag().putDouble("mag", 55);
stack.getOrCreateTag().putDouble("firemode", 2);
stack.getOrCreateTag().putBoolean("init", true);
if (isCreative) {
stack.getOrCreateTag().putDouble("ammo", stack.getOrCreateTag().getDouble("mag"));
}
} }
} }

View file

@ -3,7 +3,9 @@ package net.mcreator.target.item.gun;
import com.google.common.collect.HashMultimap; import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import net.mcreator.target.client.renderer.item.HuntingRifleItemRenderer; import net.mcreator.target.client.renderer.item.HuntingRifleItemRenderer;
import net.mcreator.target.init.TargetModItems;
import net.mcreator.target.procedures.HrrelodingProcedure; import net.mcreator.target.procedures.HrrelodingProcedure;
import net.mcreator.target.tools.ItemNBTTool;
import net.mcreator.target.tools.TooltipTool; import net.mcreator.target.tools.TooltipTool;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.model.HumanoidModel;
@ -148,5 +150,34 @@ public class HuntingRifle extends GunItem implements GeoItem {
public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) { public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) {
super.inventoryTick(itemstack, world, entity, slot, selected); super.inventoryTick(itemstack, world, entity, slot, selected);
HrrelodingProcedure.execute(entity, itemstack); HrrelodingProcedure.execute(entity, itemstack);
if (!ItemNBTTool.getBoolean(itemstack, "init", false)) {
initGun(itemstack, false);
}
}
public static ItemStack getGunInstance() {
ItemStack stack = new ItemStack(TargetModItems.HUNTING_RIFLE.get());
initGun(stack, true);
return stack;
}
private static void initGun(ItemStack stack, boolean isCreative) {
stack.getOrCreateTag().putDouble("zoomspeed", 1);
stack.getOrCreateTag().putDouble("zoom", 1.25);
stack.getOrCreateTag().putDouble("sniperguns", 1);
stack.getOrCreateTag().putDouble("dev", 7);
stack.getOrCreateTag().putDouble("recoilx", 0.004);
stack.getOrCreateTag().putDouble("recoily", 0.03);
stack.getOrCreateTag().putDouble("damage", 40);
stack.getOrCreateTag().putDouble("headshot", 3);
stack.getOrCreateTag().putDouble("velocity", 50);
stack.getOrCreateTag().putDouble("mag", 1);
stack.getOrCreateTag().putBoolean("init", true);
if (isCreative) {
stack.getOrCreateTag().putDouble("ammo", stack.getOrCreateTag().getDouble("mag"));
}
} }
} }

View file

@ -5,6 +5,7 @@ import com.google.common.collect.Multimap;
import net.mcreator.target.init.TargetModItems; import net.mcreator.target.init.TargetModItems;
import net.mcreator.target.client.renderer.item.M79ItemRenderer; import net.mcreator.target.client.renderer.item.M79ItemRenderer;
import net.mcreator.target.procedures.M79WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure; import net.mcreator.target.procedures.M79WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure;
import net.mcreator.target.tools.ItemNBTTool;
import net.mcreator.target.tools.TooltipTool; import net.mcreator.target.tools.TooltipTool;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.model.HumanoidModel;
@ -153,6 +154,10 @@ public class M79Item extends GunItem implements GeoItem {
itemstack.getOrCreateTag().putDouble("maxammo", getAmmoCount(player)); itemstack.getOrCreateTag().putDouble("maxammo", getAmmoCount(player));
} }
M79WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack); M79WuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack);
if (!ItemNBTTool.getBoolean(itemstack, "init", false)) {
initGun(itemstack, false);
}
} }
public static double getAmmoCount(Player player) { public static double getAmmoCount(Player player) {
@ -165,8 +170,32 @@ public class M79Item extends GunItem implements GeoItem {
} }
return sum; return sum;
} }
protected static boolean check(ItemStack stack) { protected static boolean check(ItemStack stack) {
return stack.getItem() == TargetModItems.GRENADE_40MM.get(); return stack.getItem() == TargetModItems.GRENADE_40MM.get();
} }
public static ItemStack getGunInstance() {
ItemStack stack = new ItemStack(TargetModItems.M_79.get());
initGun(stack, true);
return stack;
}
private static void initGun(ItemStack stack, boolean isCreative) {
stack.getOrCreateTag().putDouble("zoomspeed", 1);
stack.getOrCreateTag().putDouble("zoom", 1.25);
stack.getOrCreateTag().putDouble("sniperguns", 1);
stack.getOrCreateTag().putDouble("dev", 7);
stack.getOrCreateTag().putDouble("recoilx", 0.004);
stack.getOrCreateTag().putDouble("recoily", 0.03);
stack.getOrCreateTag().putDouble("damage", 40);
stack.getOrCreateTag().putDouble("headshot", 3);
stack.getOrCreateTag().putDouble("velocity", 50);
stack.getOrCreateTag().putDouble("mag", 1);
stack.getOrCreateTag().putBoolean("init", true);
if (isCreative) {
stack.getOrCreateTag().putDouble("ammo", stack.getOrCreateTag().getDouble("mag"));
}
}
} }

View file

@ -3,7 +3,9 @@ package net.mcreator.target.item.gun;
import com.google.common.collect.HashMultimap; import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import net.mcreator.target.client.renderer.item.SksItemRenderer; import net.mcreator.target.client.renderer.item.SksItemRenderer;
import net.mcreator.target.init.TargetModItems;
import net.mcreator.target.procedures.SksWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure; import net.mcreator.target.procedures.SksWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure;
import net.mcreator.target.tools.ItemNBTTool;
import net.mcreator.target.tools.TooltipTool; import net.mcreator.target.tools.TooltipTool;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.model.HumanoidModel;
@ -154,5 +156,34 @@ public class SksItem extends GunItem implements GeoItem {
public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) { public void inventoryTick(ItemStack itemstack, Level world, Entity entity, int slot, boolean selected) {
super.inventoryTick(itemstack, world, entity, slot, selected); super.inventoryTick(itemstack, world, entity, slot, selected);
SksWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack); SksWuPinZaiBeiBaoZhongShiMeiKeFaShengProcedure.execute(entity, itemstack);
if (!ItemNBTTool.getBoolean(itemstack, "init", false)) {
initGun(itemstack, false);
}
}
public static ItemStack getGunInstance() {
ItemStack stack = new ItemStack(TargetModItems.SKS.get());
initGun(stack, true);
return stack;
}
private static void initGun(ItemStack stack, boolean isCreative) {
stack.getOrCreateTag().putDouble("zoomspeed", 1);
stack.getOrCreateTag().putDouble("zoom", 1.25);
stack.getOrCreateTag().putDouble("rifle", 1);
stack.getOrCreateTag().putDouble("dev", 5);
stack.getOrCreateTag().putDouble("recoilx", 0.004);
stack.getOrCreateTag().putDouble("recoily", 0.015);
stack.getOrCreateTag().putDouble("damage", 9.5);
stack.getOrCreateTag().putDouble("headshot", 2);
stack.getOrCreateTag().putDouble("velocity", 40);
stack.getOrCreateTag().putDouble("mag", 20);
stack.getOrCreateTag().putBoolean("init", true);
if (isCreative) {
stack.getOrCreateTag().putDouble("ammo", stack.getOrCreateTag().getDouble("mag"));
}
} }
} }

View file

@ -35,70 +35,7 @@ public class GunsDataProcedure {
itemstackiterator = (entity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY); itemstackiterator = (entity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY);
if (itemstackiterator.is(ItemTags.create(new ResourceLocation("target:gun")))) { if (itemstackiterator.is(ItemTags.create(new ResourceLocation("target:gun")))) {
if (itemstackiterator.getItem() == TargetModItems.SKS.get()) {
itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 1);
itemstackiterator.getOrCreateTag().putDouble("zoom", 1.25);
itemstackiterator.getOrCreateTag().putDouble("rifle", 1);
itemstackiterator.getOrCreateTag().putDouble("dev", 5);
itemstackiterator.getOrCreateTag().putDouble("recoilx", 0.004);
itemstackiterator.getOrCreateTag().putDouble("recoily", 0.015);
itemstackiterator.getOrCreateTag().putDouble("damage", 9.5);
itemstackiterator.getOrCreateTag().putDouble("headshot", 2);
itemstackiterator.getOrCreateTag().putDouble("velocity", 40);
itemstackiterator.getOrCreateTag().putDouble("mag", 20);
}
if (itemstackiterator.getItem() == TargetModItems.AK_47.get()) {
itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 1.1);
itemstackiterator.getOrCreateTag().putDouble("zoom", 1.25);
itemstackiterator.getOrCreateTag().putDouble("rifle", 1);
itemstackiterator.getOrCreateTag().putDouble("autorifle", 1);
itemstackiterator.getOrCreateTag().putDouble("dev", 4);
itemstackiterator.getOrCreateTag().putDouble("recoilx", 0.0025);
itemstackiterator.getOrCreateTag().putDouble("recoily", 0.012);
itemstackiterator.getOrCreateTag().putDouble("damage", 8.5);
itemstackiterator.getOrCreateTag().putDouble("headshot", 2);
itemstackiterator.getOrCreateTag().putDouble("velocity", 30);
itemstackiterator.getOrCreateTag().putDouble("mag", 30);
}
if (itemstackiterator.getItem() == TargetModItems.DEVOTION.get()) {
itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 0.9);
itemstackiterator.getOrCreateTag().putDouble("zoom", 2);
itemstackiterator.getOrCreateTag().putDouble("rifle", 1);
itemstackiterator.getOrCreateTag().putDouble("autorifle", 1);
itemstackiterator.getOrCreateTag().putDouble("mg", 1);
itemstackiterator.getOrCreateTag().putDouble("dev", 5);
itemstackiterator.getOrCreateTag().putDouble("bipod", 1);
itemstackiterator.getOrCreateTag().putDouble("recoilx", 0.0018);
itemstackiterator.getOrCreateTag().putDouble("recoily", 0.01);
itemstackiterator.getOrCreateTag().putDouble("damage", 7);
itemstackiterator.getOrCreateTag().putDouble("headshot", 2);
itemstackiterator.getOrCreateTag().putDouble("velocity", 40);
itemstackiterator.getOrCreateTag().putDouble("mag", 55);
itemstackiterator.getOrCreateTag().putDouble("firemode", 2);
}
if (itemstackiterator.getItem() == TargetModItems.HUNTING_RIFLE.get()) {
itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 1);
itemstackiterator.getOrCreateTag().putDouble("zoom", 1.25);
itemstackiterator.getOrCreateTag().putDouble("sniperguns", 1);
itemstackiterator.getOrCreateTag().putDouble("dev", 7);
itemstackiterator.getOrCreateTag().putDouble("recoilx", 0.004);
itemstackiterator.getOrCreateTag().putDouble("recoily", 0.03);
itemstackiterator.getOrCreateTag().putDouble("damage", 40);
itemstackiterator.getOrCreateTag().putDouble("headshot", 3);
itemstackiterator.getOrCreateTag().putDouble("velocity", 50);
itemstackiterator.getOrCreateTag().putDouble("mag", 1);
}
if (itemstackiterator.getItem() == TargetModItems.M_79.get()) {
itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 0.95);
itemstackiterator.getOrCreateTag().putDouble("zoom", 1.25);
itemstackiterator.getOrCreateTag().putDouble("dev", 1);
itemstackiterator.getOrCreateTag().putDouble("recoilx", 0.004);
itemstackiterator.getOrCreateTag().putDouble("recoily", 0.023);
itemstackiterator.getOrCreateTag().putDouble("damage", 40);
itemstackiterator.getOrCreateTag().putDouble("velocity", 3.75);
itemstackiterator.getOrCreateTag().putDouble("mag", 1);
}
if (itemstackiterator.getItem() == TargetModItems.M_98B.get()) { if (itemstackiterator.getItem() == TargetModItems.M_98B.get()) {
itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 0.85); itemstackiterator.getOrCreateTag().putDouble("zoomspeed", 0.85);
itemstackiterator.getOrCreateTag().putDouble("zoom", 4); itemstackiterator.getOrCreateTag().putDouble("zoom", 4);