mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
radaway recipes, simplified IV bag code
This commit is contained in:
parent
337891905f
commit
0eb71db3a6
@ -131,12 +131,12 @@ public class ConsumableRecipes {
|
||||
CraftingManager.addRecipeAuto(new ItemStack(ModItems.med_bag, 1), new Object[] { "LL", "SI", "LL", 'L', ModItems.plate_polymer, 'S', ModItems.syringe_metal_super, 'I', ModItems.radaway });
|
||||
|
||||
//IV Bags
|
||||
CraftingManager.addRecipeAuto(new ItemStack(ModItems.iv_blood, 4), new Object[] { "S", "I", "S", 'S', ModItems.plate_polymer, 'I', IRON.plate() });
|
||||
CraftingManager.addRecipeAuto(new ItemStack(ModItems.iv_empty, 4), new Object[] { "S", "I", "S", 'S', ModItems.plate_polymer, 'I', IRON.plate() });
|
||||
|
||||
//Radaway
|
||||
CraftingManager.addRecipeAuto(new ItemStack(ModItems.radaway, 1), new Object[] { "S", "M", "W", 'S', ModItems.plate_polymer, 'M', ModBlocks.mush, 'W', Items.potionitem });
|
||||
CraftingManager.addRecipeAuto(new ItemStack(ModItems.radaway_strong, 1), new Object[] { "S", "M", "W", 'S', Items.pumpkin_seeds, 'M', ModBlocks.mush, 'W', ModItems.radaway });
|
||||
CraftingManager.addRecipeAuto(new ItemStack(ModItems.radaway_flush, 1), new Object[] { "S", "M", "W", 'S', I.dust(), 'M', ModBlocks.mush, 'W', ModItems.radaway_strong });
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.radaway, 1), new Object[] { ModItems.iv_blood, COAL.dust(), Items.pumpkin_seeds });
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.radaway_strong, 1), new Object[] { ModItems.radaway, ModBlocks.mush });
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.radaway_flush, 1), new Object[] { ModItems.radaway_strong, I.dust() });
|
||||
|
||||
//Cladding
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cladding_paint, 1), new Object[] { PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget(), Items.clay_ball, Items.glass_bottle });
|
||||
|
||||
@ -3268,20 +3268,31 @@ public class ModItems {
|
||||
syringe_mkunicorn = new ItemSyringe().setUnlocalizedName("syringe_mkunicorn").setFull3D().setCreativeTab(null).setTextureName(RefStrings.MODID + ":syringe_mkunicorn");
|
||||
|
||||
iv_empty = new ItemSimpleConsumable().setUseActionServer((stack, user) -> {
|
||||
stack.stackSize--;
|
||||
ItemSimpleConsumable.giveSoundAndDecrement(stack, user, "hbm:item.syringe", new ItemStack(ModItems.iv_blood));
|
||||
user.attackEntityFrom(DamageSource.magic, 5F);
|
||||
ItemSimpleConsumable.tryAddItem(user, new ItemStack(ModItems.iv_blood)); //are references resolved when the lambda is created or when it is called? must run some tests on this
|
||||
}).setUnlocalizedName("iv_empty").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":iv_empty");
|
||||
|
||||
iv_blood = new ItemSimpleConsumable().setUseActionServer((stack, user) -> {
|
||||
stack.stackSize--;
|
||||
ItemSimpleConsumable.giveSoundAndDecrement(stack, user, "hbm:item.radaway", new ItemStack(ModItems.iv_empty));
|
||||
user.heal(5F);
|
||||
ItemSimpleConsumable.tryAddItem(user, new ItemStack(ModItems.iv_empty));
|
||||
}).setUnlocalizedName("iv_empty").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":iv_blood");
|
||||
}).setUnlocalizedName("iv_blood").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":iv_blood");
|
||||
|
||||
radaway = new ItemSimpleConsumable().setUseActionServer((stack, user) -> {
|
||||
ItemSimpleConsumable.giveSoundAndDecrement(stack, user, "hbm:item.radaway", new ItemStack(ModItems.iv_empty));
|
||||
user.addPotionEffect(new PotionEffect(HbmPotion.radaway.id, 14, 9));
|
||||
}).setUnlocalizedName("radaway").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radaway");
|
||||
|
||||
radaway_strong = new ItemSimpleConsumable().setUseActionServer((stack, user) -> {
|
||||
ItemSimpleConsumable.giveSoundAndDecrement(stack, user, "hbm:item.radaway", new ItemStack(ModItems.iv_empty));
|
||||
ItemSimpleConsumable.addPotionEffect(user, HbmPotion.radaway, 14, 9);
|
||||
}).setUnlocalizedName("radaway_strong").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radaway_strong");
|
||||
|
||||
radaway_flush = new ItemSimpleConsumable().setUseActionServer((stack, user) -> {
|
||||
ItemSimpleConsumable.giveSoundAndDecrement(stack, user, "hbm:item.radaway", new ItemStack(ModItems.iv_empty));
|
||||
ItemSimpleConsumable.addPotionEffect(user, HbmPotion.radaway, 50, 19);
|
||||
}).setUnlocalizedName("radaway_flush").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radaway_flush");
|
||||
|
||||
med_bag = new ItemSyringe().setUnlocalizedName("med_bag").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":med_bag");
|
||||
radaway = new ItemSyringe().setUnlocalizedName("radaway").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radaway");
|
||||
radaway_strong = new ItemSyringe().setUnlocalizedName("radaway_strong").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radaway_strong");
|
||||
radaway_flush = new ItemSyringe().setUnlocalizedName("radaway_flush").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radaway_flush");
|
||||
radx = new ItemPill(0).setUnlocalizedName("radx").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":radx");
|
||||
siox = new ItemPill(0).setUnlocalizedName("siox").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":siox");
|
||||
xanax = new ItemPill(0).setUnlocalizedName("xanax").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":xanax_2");
|
||||
@ -6268,9 +6279,9 @@ public class ModItems {
|
||||
//Universal Tank
|
||||
GameRegistry.registerItem(fluid_tank_empty, fluid_tank_empty.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_tank_full, fluid_tank_full.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_barrel_empty, fluid_barrel_empty.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_tank_lead_full, fluid_tank_lead_full.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_tank_lead_empty, fluid_tank_lead_empty.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_tank_lead_full, fluid_tank_lead_full.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_barrel_empty, fluid_barrel_empty.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_barrel_full, fluid_barrel_full.getUnlocalizedName());
|
||||
GameRegistry.registerItem(fluid_barrel_infinite, fluid_barrel_infinite.getUnlocalizedName());
|
||||
|
||||
|
||||
@ -4,12 +4,15 @@ import java.util.function.BiConsumer;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.potion.HbmPotion;
|
||||
import com.hbm.util.Tuple.Pair;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class ItemSimpleConsumable extends Item {
|
||||
@ -44,6 +47,22 @@ public class ItemSimpleConsumable extends Item {
|
||||
return false;
|
||||
}
|
||||
|
||||
public static void giveSoundAndDecrement(ItemStack stack, EntityLivingBase entity, String sound, ItemStack container) {
|
||||
stack.stackSize--;
|
||||
entity.worldObj.playSoundAtEntity(entity, sound, 1.0F, 1.0F);
|
||||
ItemSimpleConsumable.tryAddItem(entity, container);
|
||||
}
|
||||
|
||||
public static void addPotionEffect(EntityLivingBase entity, Potion effect, int duration, int level) {
|
||||
|
||||
if(!entity.isPotionActive(effect)) {
|
||||
entity.addPotionEffect(new PotionEffect(effect.id, duration, level));
|
||||
} else {
|
||||
int d = entity.getActivePotionEffect(effect).getDuration() + duration;
|
||||
entity.addPotionEffect(new PotionEffect(effect.id, d, level));
|
||||
}
|
||||
}
|
||||
|
||||
public static void tryAddItem(EntityLivingBase entity, ItemStack stack) {
|
||||
if(entity instanceof EntityPlayer) {
|
||||
EntityPlayer player = (EntityPlayer) entity;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user