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

@ -3,6 +3,7 @@ Version 2.0.3-54
------------------------------------------------------
- Eliminated some of the "wonkiness" from the Air Sigil
- Fixed the Hellfire Forge so that swapping Tartaric gems will not give free stuff.
- 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.
------------------------------------------------------
Version 2.0.3-53

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));
}
}

View file

@ -145,6 +145,16 @@
"textures": {
"layer0": "bloodmagic:items/ReagentHolding"
}
},
"mundanelength": {
"textures": {
"layer0": "bloodmagic:items/MundaneLengtheningCatalyst"
}
},
"mundanepower": {
"textures": {
"layer0": "bloodmagic:items/MundanePowerCatalyst"
}
}
}
}

View file

@ -100,6 +100,10 @@ item.BloodMagic.baseComponent.antiseptic.name=Antiseptic
item.BloodMagic.cuttingFluid.basicCuttingFluid.name=Basic Cutting Fluid
item.BloodMagic.cuttingFluid.explosive.name=Explosive Powder
item.BloodMagic.baseComponent.mundaneLength.name=Simple Lengthening Catalyst
item.BloodMagic.baseComponent.mundanePower.name=Simple Power Catalyst
item.BloodMagic.demonCrystal.crystalDefault.name=Demon Will Crystal
item.BloodMagic.demonCrystal.crystalCorrosive.name=Corrosive Will Crystal
item.BloodMagic.demonCrystal.crystalDestructive.name=Destructive Will Crystal

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B