Added the Potion Flask and a few of the potion effects - max amount of effects that can be added to a single flask is currently 3

This commit is contained in:
WayofTime 2016-07-26 19:44:42 -04:00
parent 944b8232e6
commit 98406793a1
9 changed files with 47 additions and 4 deletions

View file

@ -51,6 +51,8 @@ public class ItemComponent extends Item implements IVariantProvider
public static final String NEURO_TOXIN = "neurotoxin";
public static final String ANTISEPTIC = "antiseptic";
public static final String REAGENT_HOLDING = "reagentHolding";
public static final String CATALYST_LENGTH_1 = "mundaneLength";
public static final String CATALYST_POWER_1 = "mundanePower";
public ItemComponent()
{
@ -93,6 +95,8 @@ public class ItemComponent extends Item implements IVariantProvider
names.add(25, NEURO_TOXIN);
names.add(26, ANTISEPTIC);
names.add(27, REAGENT_HOLDING);
names.add(28, CATALYST_LENGTH_1);
names.add(29, CATALYST_POWER_1);
}
@Override

View file

@ -33,6 +33,7 @@ public class AlchemyTablePotionAugmentRecipe extends AlchemyTablePotionRecipe
this.wantedPotion = baseEffect.getPotion();
this.lengthAugment = lengthAugment;
this.powerAugment = powerAugment;
}
public AlchemyTablePotionAugmentRecipe(int lpDrained, int ticksRequired, int tierRequired, ItemStack inputItem, PotionEffect baseEffect, double lengthAugment, int powerAugment)

View file

@ -132,7 +132,7 @@ public class AlchemyTablePotionRecipe extends AlchemyTableRecipe
public boolean isPotionFlaskValidInput(ItemStack stack)
{
List<PotionEffect> effectList = PotionUtils.getEffectsFromStack(stack);
if (effectList.size() + 1 >= temporaryMaximumEffectsOnThePotionFlaskYesThisIsALongFieldItIsJustSoIRemember)
if (effectList.size() >= temporaryMaximumEffectsOnThePotionFlaskYesThisIsALongFieldItIsJustSoIRemember)
{
return false;
}
@ -164,7 +164,7 @@ public class AlchemyTablePotionRecipe extends AlchemyTableRecipe
ItemStack outputStack = inputStack.copy();
List<PotionEffect> effectList = new ArrayList<PotionEffect>();
List<PotionEffect> effectList = PotionUtils.getEffectsFromStack(outputStack);
effectList.add(baseEffect);
PotionUtils.appendEffects(outputStack, effectList);

View file

@ -359,6 +359,8 @@ public class ModRecipes
AlchemyTableRecipeRegistry.registerRecipe(new AlchemyTableDyeableRecipe(0, 100, 0, new ItemStack(ModItems.sigilHolding)));
AlchemyTableRecipeRegistry.registerRecipe(new ItemStack(ModItems.potionFlask), 1000, 200, 2, new ItemStack(Items.POTIONITEM), Items.NETHER_WART, Items.REDSTONE, Items.GLOWSTONE_DUST);
AlchemyTableRecipeRegistry.registerRecipe(ItemComponent.getStack(ItemComponent.CATALYST_LENGTH_1), 1000, 100, 2, Items.GUNPOWDER, Items.NETHER_WART, "gemLapis");
AlchemyTableRecipeRegistry.registerRecipe(ItemComponent.getStack(ItemComponent.CATALYST_POWER_1), 1000, 100, 2, Items.GUNPOWDER, Items.NETHER_WART, "dustRedstone");
}
public static void addOreDoublingAlchemyRecipes()
@ -384,7 +386,28 @@ public class ModRecipes
public static void addPotionRecipes()
{
AlchemyTableRecipeRegistry.registerRecipe(new AlchemyTablePotionRecipe(0, 100, 0, new ItemStack(Items.BLAZE_POWDER), new PotionEffect(MobEffects.STRENGTH, 3600, 0)));
AlchemyTableRecipeRegistry.registerRecipe(BMPotionUtils.getLengthAugmentRecipe(0, 100, 0, new ItemStack(Items.BLAZE_ROD), new PotionEffect(MobEffects.STRENGTH, 3600, 0), 1));
addPotionRecipe(1000, 1, new ItemStack(Items.GHAST_TEAR), new PotionEffect(MobEffects.REGENERATION, 450));
addPotionRecipe(1000, 1, new ItemStack(Items.GOLDEN_CARROT), new PotionEffect(MobEffects.NIGHT_VISION, 2 * 60 * 20));
addPotionRecipe(1000, 1, new ItemStack(Items.MAGMA_CREAM), new PotionEffect(MobEffects.FIRE_RESISTANCE, 2 * 60 * 20));
addPotionRecipe(1000, 1, new ItemStack(Items.WATER_BUCKET), new PotionEffect(MobEffects.WATER_BREATHING, 2 * 60 * 20));
addPotionRecipe(1000, 1, new ItemStack(Items.SUGAR), new PotionEffect(MobEffects.SPEED, 2 * 60 * 20));
}
static ItemStack mundaneLengtheningStack = ItemComponent.getStack(ItemComponent.CATALYST_LENGTH_1);
static ItemStack mundanePowerStack = ItemComponent.getStack(ItemComponent.CATALYST_POWER_1);
public static void addPotionRecipe(int lpDrained, int tier, ItemStack inputStack, PotionEffect baseEffect)
{
AlchemyTableRecipeRegistry.registerRecipe(new AlchemyTablePotionRecipe(lpDrained, 100, tier, inputStack, baseEffect));
List<ItemStack> lengtheningList = new ArrayList<ItemStack>();
lengtheningList.add(inputStack);
lengtheningList.add(mundaneLengtheningStack);
AlchemyTableRecipeRegistry.registerRecipe(BMPotionUtils.getLengthAugmentRecipe(lpDrained, 100, tier, lengtheningList, baseEffect, 1));
List<ItemStack> powerList = new ArrayList<ItemStack>();
powerList.add(inputStack);
powerList.add(mundanePowerStack);
AlchemyTableRecipeRegistry.registerRecipe(BMPotionUtils.getPowerAugmentRecipe(lpDrained, 100, tier, powerList, baseEffect, 1));
}
}