From eafc615fd20070a42f2c704faa0dce3af5969736 Mon Sep 17 00:00:00 2001 From: Toshayo Date: Thu, 22 Jun 2023 14:42:30 +0200 Subject: [PATCH] Added night vision goggles --- .../com/hbm/crafting/ConsumableRecipes.java | 3 +- src/main/java/com/hbm/items/ModItems.java | 5 ++- .../hbm/items/armor/ItemModNightVision.java | 41 ++++++++++++++++++ src/main/resources/assets/hbm/lang/en_US.lang | 3 ++ src/main/resources/assets/hbm/lang/fr_FR.lang | 3 ++ src/main/resources/assets/hbm/lang/ru_RU.lang | 3 ++ .../hbm/textures/items/night_vision.png | Bin 0 -> 906 bytes 7 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/hbm/items/armor/ItemModNightVision.java create mode 100644 src/main/resources/assets/hbm/textures/items/night_vision.png diff --git a/src/main/java/com/hbm/crafting/ConsumableRecipes.java b/src/main/java/com/hbm/crafting/ConsumableRecipes.java index d4dd9d69c..09a1a8f3d 100644 --- a/src/main/java/com/hbm/crafting/ConsumableRecipes.java +++ b/src/main/java/com/hbm/crafting/ConsumableRecipes.java @@ -201,7 +201,8 @@ public class ConsumableRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.gas_tester, 1), new Object[] { "G", "C", "I", 'G', GOLD.plate(), 'C', ModItems.circuit_aluminium, 'I', IRON.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.defuser_gold, 1), new Object[] { "GPG", "PRP", "GPG", 'G', Items.gunpowder, 'P', GOLD.plate(), 'R', "record" }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.ballistic_gauntlet, 1), new Object[] { " WS", "WRS", " RS", 'W', ModItems.wire_copper, 'R', ModItems.ring_starmetal, 'S', STEEL.plate() }); - + CraftingManager.addRecipeAuto(new ItemStack(ModItems.night_vision, 1), "PIP", "RCR", "PIP", 'P', STEEL.plate(), 'W', ModItems.wire_schrabidium, 'R', ModItems.ring_starmetal, 'I', ModItems.ingot_schrabidium, 'C', ModItems.circuit_schrabidium); + //Stealth boy CraftingManager.addRecipeAuto(new ItemStack(ModItems.stealth_boy, 1), new Object[] { " B", "LI", "LC", 'B', Blocks.stone_button, 'L', Items.leather, 'I', STEEL.ingot(), 'C', ModItems.circuit_red_copper }); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 006fd1a9e..7ac1dea09 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -2169,6 +2169,7 @@ public class ModItems { public static Item gas_tester; public static Item defuser_gold; public static Item ballistic_gauntlet; + public static Item night_vision; public static Item hazmat_helmet; public static Item hazmat_plate; @@ -3402,6 +3403,7 @@ public class ModItems { gas_tester = new ItemModSensor().setUnlocalizedName("gas_tester").setTextureName(RefStrings.MODID + ":gas_tester"); defuser_gold = new ItemModDefuser().setUnlocalizedName("defuser_gold").setTextureName(RefStrings.MODID + ":defuser_gold"); ballistic_gauntlet = new ItemModTwoKick().setUnlocalizedName("ballistic_gauntlet").setTextureName(RefStrings.MODID + ":ballistic_gauntlet"); + night_vision = new ItemModNightVision().setUnlocalizedName("night_vision").setTextureName(RefStrings.MODID + ":night_vision"); cap_nuka = new Item().setUnlocalizedName("cap_nuka").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cap_nuka"); cap_quantum = new Item().setUnlocalizedName("cap_quantum").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cap_quantum"); @@ -7616,7 +7618,8 @@ public class ModItems { GameRegistry.registerItem(gas_tester, gas_tester.getUnlocalizedName()); GameRegistry.registerItem(defuser_gold, defuser_gold.getUnlocalizedName()); GameRegistry.registerItem(ballistic_gauntlet, ballistic_gauntlet.getUnlocalizedName()); - + GameRegistry.registerItem(night_vision, night_vision.getUnlocalizedName()); + //Chaos GameRegistry.registerItem(chocolate_milk, chocolate_milk.getUnlocalizedName()); GameRegistry.registerItem(cbt_device, cbt_device.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/armor/ItemModNightVision.java b/src/main/java/com/hbm/items/armor/ItemModNightVision.java new file mode 100644 index 000000000..6df89d2a6 --- /dev/null +++ b/src/main/java/com/hbm/items/armor/ItemModNightVision.java @@ -0,0 +1,41 @@ +package com.hbm.items.armor; + +import com.hbm.handler.ArmorModHandler; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; +import net.minecraft.util.EnumChatFormatting; + +import java.util.List; + +public class ItemModNightVision extends ItemArmorMod { + public ItemModNightVision() { + super(ArmorModHandler.helmet_only, true, false, false, false); + } + + @Override + public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { + list.add(EnumChatFormatting.AQUA + I18n.format("item.night_vision.description.item")); + list.add(""); + super.addInformation(itemstack, player, list, bool); + } + + @Override + public void addDesc(List list, ItemStack stack, ItemStack armor) { + list.add(EnumChatFormatting.YELLOW + I18n.format("item.night_vision.description.in_armor", stack.getDisplayName())); + } + + @Override + public void modUpdate(EntityLivingBase entity, ItemStack armor) { + if(!entity.worldObj.isRemote && entity instanceof EntityPlayer && armor.getItem() instanceof ArmorFSBPowered && ArmorFSBPowered.hasFSBArmor((EntityPlayer)entity)) { + entity.addPotionEffect(new PotionEffect(Potion.nightVision.id, 15 * 20, 0)); + + if(entity.getRNG().nextInt(50) == 0) { + armor.damageItem(1, entity); + } + } + } +} diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index fa62d042a..7ad3b28de 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -3066,6 +3066,9 @@ item.mysteryshovel.name=Brittle Spade item.n2_charge.name=Large Explosive Charge item.neutrino_lens.name=Neutrino Lens item.neutron_reflector.name=Neutron Reflector +item.night_vision.name=Night Vision Goggles +item.night_vision.description.item=Grants you night vision (requires full electric set) +item.night_vision.description.in_armor=%s (grants night vision) item.niter.name=Niter item.no9.name=Mining Helmet item.nossy_hat.name=Fabulous Hat diff --git a/src/main/resources/assets/hbm/lang/fr_FR.lang b/src/main/resources/assets/hbm/lang/fr_FR.lang index 0635ab9d1..2da92f416 100644 --- a/src/main/resources/assets/hbm/lang/fr_FR.lang +++ b/src/main/resources/assets/hbm/lang/fr_FR.lang @@ -477,6 +477,9 @@ item.plate_titanium.name=Plaque en titane item.plate_aluminium.name=Plaque d'aluminium item.wire_red_copper.name=Fil de cuivre rouge item.neutron_reflector.name=Reflecteur neutronique +item.night_vision.name=Lunettes de vision nocturne +item.night_vision.description.item=Donne la vision nocturne (nécessite un set électrique complet) +item.night_vision.description.in_armor=%s (donne la vision nocturne) item.nugget_beryllium.name=Pépite de béryllium item.wire_aluminium.name=Fil d'aluminium diff --git a/src/main/resources/assets/hbm/lang/ru_RU.lang b/src/main/resources/assets/hbm/lang/ru_RU.lang index 4aa131493..1603c36c8 100644 --- a/src/main/resources/assets/hbm/lang/ru_RU.lang +++ b/src/main/resources/assets/hbm/lang/ru_RU.lang @@ -2618,6 +2618,9 @@ item.plate_titanium.name=Титановая пластина item.plate_aluminium.name=Алюминиевая пластина item.wire_red_copper.name=Провод из красной меди item.neutron_reflector.name=Отражатель нейтронов +item.night_vision.name=Очки ночного зрения +item.night_vision.description.item=Даёт ночное зрение (нуждается в полном электрическом сете) +item.night_vision.description.in_armor=%s (даёт ночное зрение) item.nugget_beryllium.name=Бериллиевый самородок item.nugget_bismuth.name=Самородок висмута item.nugget_tantalium.name=Самородок тантала diff --git a/src/main/resources/assets/hbm/textures/items/night_vision.png b/src/main/resources/assets/hbm/textures/items/night_vision.png new file mode 100644 index 0000000000000000000000000000000000000000..096c7b5b39d1c09318a8e719850ab58718efcbbf GIT binary patch literal 906 zcmV;519kj~P)EX>4Tx04R}tkv&MmKpe$iQ?*hm4i*t{$WWauNELC^DionYs1;guFuC*#nlvOS zE{=k0!NHHks)LKOt`4q(Aou~|>f)s6A|?JWDYS_7;J6>}?mh0_0YbgZG^=X@&~)2O zCE{WxyDA1=(St#R5JXI7mN6$uNpu`v_we!cF3PhypZjz4sX2=QK9P8q8KzCVK|H-_ z8=Uuv!>lN)#OK80CS8#Dk?V@bZ=4G*3p_Jyrc?98VPdh+#!4HrqNx#25l2)_r+gvf zvC4UivsSLM<~{ifLpgnAnd>x1kia6AAVGwJDoQBBMwC{a6bmWZk9Y77yMBpW3b{&P z=bb;{@U#SB#pQP7X zTI2}m-v%zOTbi;5TgF>mV(jg7zL?h zRXS9<6`-(y2|{nVE+$zNJQ@?@9mN|FN-|Vv;9Oz{=|$SV;4{7O zetdkqFCRP-`70dfrYVE~pkA-Dx;hhoIJmia&`c(i00cq6+}w+JxWILP-kqPHQLUb0 zj6tb+Zf}3#x?ccL>Lb0qPjTJv*tSh7HOkP?2ueMVL>%X)d2({pzqR#E*K%12@appq zok;Y{>FJp!K&f;P_x)>qxR#Ls!=HBb%F0_gHa2-JEX$(N@TldoGCD8-z~LJ5ed{HK z!Y%-di&;KAy9)hUE-M?3$Hc^IM7!O>nBc!~EX(5Z(hv2&7!%NLw}|HR1(eEA?3vPC z&!g*k?Dx&;N~MGl0wDyIN{Rix+0ZZcOlhSuyDe3W!L4Mf@7D-w%6VS9T$64to1wBc8)X8_o?jn-ci4^Nizoo|c*Ae9k07*qoM6N<$f=O+b!2kdN literal 0 HcmV?d00001