Large amount of work on the book

This commit is contained in:
WayofTime 2015-04-24 16:09:40 -04:00
parent 45642e44bf
commit 9329387b6c
9 changed files with 421 additions and 300 deletions

View file

@ -105,6 +105,7 @@ import WayofTime.alchemicalWizardry.common.entity.mob.EntityShadeElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntitySmallEarthGolem;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityWaterElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityWingedFireDemon;
import WayofTime.alchemicalWizardry.common.guide.RecipeHolder;
import WayofTime.alchemicalWizardry.common.harvest.AgriCraftCropHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.BloodMagicHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.CactusReedHarvestHandler;
@ -1175,6 +1176,11 @@ public class AlchemicalWizardry
if(Loader.isModLoaded("guideapi"))
{
long initialTime = System.nanoTime();
RecipeHolder.init();
long finalTime = System.nanoTime();
AlchemicalWizardry.logger.info("Recipe Holder initialized: took " + (finalTime - initialTime)/1000000f + "ms.");
this.registerBMBook();
}

View file

@ -8,6 +8,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
@ -17,10 +18,9 @@ import net.minecraft.util.MathHelper;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import WayofTime.alchemicalWizardry.ModItems;
import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry;
import WayofTime.alchemicalWizardry.api.items.interfaces.IBloodOrb;
import WayofTime.alchemicalWizardry.client.nei.NEIConfig;
import cpw.mods.fml.common.registry.GameRegistry;
public class APISpellHelper
@ -185,15 +185,23 @@ public class APISpellHelper
public static ItemStack getOrbForLevel(int level)
{
for (Item item : NEIConfig.bloodOrbs)
switch(level)
{
if (((IBloodOrb) item).getOrbLevel() == level)
{
return new ItemStack(item);
}
}
return null;
case 1:
return new ItemStack(ModItems.weakBloodOrb);
case 2:
return new ItemStack(ModItems.apprenticeBloodOrb);
case 3:
return new ItemStack(ModItems.magicianBloodOrb);
case 4:
return new ItemStack(ModItems.masterBloodOrb);
case 5:
return new ItemStack(ModItems.archmageBloodOrb);
case 6:
return new ItemStack(ModItems.transcendentBloodOrb);
default:
return new ItemStack(Blocks.fire);
}
}
public static MovingObjectPosition raytraceFromEntity(World world, Entity player, boolean par3, double range)

View file

@ -1,18 +1,164 @@
package WayofTime.alchemicalWizardry.common.book;
import java.awt.Color;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.StatCollector;
import WayofTime.alchemicalWizardry.ModItems;
import WayofTime.alchemicalWizardry.api.guide.PageAltarRecipe;
import WayofTime.alchemicalWizardry.api.guide.PageOrbRecipe;
import WayofTime.alchemicalWizardry.common.guide.RecipeHolder;
import amerifrance.guideapi.api.GuideRegistry;
import amerifrance.guideapi.api.abstraction.CategoryAbstract;
import amerifrance.guideapi.api.abstraction.EntryAbstract;
import amerifrance.guideapi.api.abstraction.IPage;
import amerifrance.guideapi.api.base.Book;
import amerifrance.guideapi.api.util.PageHelper;
import amerifrance.guideapi.categories.CategoryItemStack;
import amerifrance.guideapi.entries.EntryUniText;
import amerifrance.guideapi.pages.PageIRecipe;
import amerifrance.guideapi.pages.PageUnlocImage;
public class BloodMagicGuide
{
public static Book bloodMagicGuide;
public static List<CategoryAbstract> categories = new ArrayList<CategoryAbstract>();
public static List<CategoryAbstract> categories = new ArrayList();
public static void registerGuide()
{
registerArchitectBook();
bloodMagicGuide = new Book(categories, "guide.BloodMagic.book.title", "guide.BloodMagic.welcomeMessage", "guide.BloodMagic.book.name", new Color(190, 10, 0));
GuideRegistry.registerBook(bloodMagicGuide);
}
public static void registerArchitectBook()
{
List<EntryAbstract> entries = new ArrayList();
ArrayList<IPage> introPages = new ArrayList();
introPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.intro")));
entries.add(new EntryUniText(introPages, "guide.BloodMagic.entryName.architect.intro"));
ArrayList<IPage> bloodAltarPages = new ArrayList();
bloodAltarPages.add(new PageIRecipe(RecipeHolder.bloodAltarRecipe));
bloodAltarPages.add(new PageIRecipe(RecipeHolder.knifeRecipe));
bloodAltarPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.bloodAltar.1")));
bloodAltarPages.add(new PageAltarRecipe(RecipeHolder.weakBloodOrbRecipe));
bloodAltarPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.bloodAltar.2")));
entries.add(new EntryUniText(bloodAltarPages, "guide.BloodMagic.entryName.architect.bloodAltar"));
ArrayList<IPage> soulNetworkPages = new ArrayList();
soulNetworkPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.soulNetwork")));
entries.add(new EntryUniText(soulNetworkPages, "guide.BloodMagic.entryName.architect.soulNetwork"));
ArrayList<IPage> blankSlatePages = new ArrayList();
blankSlatePages.add(new PageAltarRecipe(RecipeHolder.blankSlateRecipe));
blankSlatePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.blankSlate")));
entries.add(new EntryUniText(blankSlatePages, "guide.BloodMagic.entryName.architect.blankSlate"));
ArrayList<IPage> divinationSigilPages = new ArrayList();
divinationSigilPages.add(new PageOrbRecipe(RecipeHolder.divinationSigilRecipe));
divinationSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.divination")));
entries.add(new EntryUniText(divinationSigilPages, "guide.BloodMagic.entryName.architect.divination"));
ArrayList<IPage> waterSigilPages = new ArrayList();
waterSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.waterSigil.1")));
waterSigilPages.add(new PageOrbRecipe(RecipeHolder.waterSigilRecipe));
waterSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.waterSigil.2")));
entries.add(new EntryUniText(waterSigilPages, "guide.BloodMagic.entryName.architect.waterSigil"));
ArrayList<IPage> lavaCrystalPages = new ArrayList();
lavaCrystalPages.add(new PageOrbRecipe(RecipeHolder.lavaCrystalRecipe));
lavaCrystalPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.lavaCrystal")));
entries.add(new EntryUniText(lavaCrystalPages, "guide.BloodMagic.entryName.architect.lavaCrystal"));
ArrayList<IPage> hellHarvestPages = new ArrayList();
hellHarvestPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.hellHarvest")));
entries.add(new EntryUniText(hellHarvestPages, "guide.BloodMagic.entryName.architect.hellHarvest"));
ArrayList<IPage> lavaSigilPages = new ArrayList();
lavaSigilPages.add(new PageIRecipe(RecipeHolder.lavaSigilRecipe));
lavaSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.lavaSigil")));
entries.add(new EntryUniText(lavaSigilPages, "guide.BloodMagic.entryName.architect.lavaSigil"));
ArrayList<IPage> blankRunePages = new ArrayList();
blankRunePages.add(new PageOrbRecipe(RecipeHolder.blankRuneRecipe));
blankRunePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.blankRunes.1")));
blankRunePages.add(new PageUnlocImage("", new ResourceLocation("alchemicalwizardry:textures/misc/screenshots/altars/T2.png"), true));
blankRunePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.blankRunes.2")));
entries.add(new EntryUniText(blankRunePages, "guide.BloodMagic.entryName.architect.blankRunes"));
ArrayList<IPage> speedRunePages = new ArrayList();
speedRunePages.add(new PageIRecipe(RecipeHolder.speedRuneRecipe));
speedRunePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.speedRunes")));
entries.add(new EntryUniText(speedRunePages, "guide.BloodMagic.entryName.architect.speedRunes"));
ArrayList<IPage> apprenticeOrbPages = new ArrayList();
apprenticeOrbPages.add(new PageAltarRecipe(RecipeHolder.apprenticeBloodOrbRecipe));
apprenticeOrbPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.apprenticeOrb")));
entries.add(new EntryUniText(apprenticeOrbPages, "guide.BloodMagic.entryName.architect.apprenticeOrb"));
ArrayList<IPage> voidSigilPages = new ArrayList();
voidSigilPages.add(new PageOrbRecipe(RecipeHolder.voidSigilRecipe));
voidSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.voidSigil")));
entries.add(new EntryUniText(voidSigilPages, "guide.BloodMagic.entryName.architect.voidSigil"));
ArrayList<IPage> airSigilPages = new ArrayList();
airSigilPages.add(new PageOrbRecipe(RecipeHolder.airSigilRecipe));
airSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.airSigil")));
entries.add(new EntryUniText(airSigilPages, "guide.BloodMagic.entryName.architect.airSigil"));
ArrayList<IPage> sightSigilPages = new ArrayList();
sightSigilPages.add(new PageOrbRecipe(RecipeHolder.sightSigilRecipe));
sightSigilPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.sightSigil")));
entries.add(new EntryUniText(sightSigilPages, "guide.BloodMagic.entryName.architect.sightSigil"));
ArrayList<IPage> advancedAltarPages = new ArrayList();
advancedAltarPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.advancedAltar")));
entries.add(new EntryUniText(advancedAltarPages, "guide.BloodMagic.entryName.architect.advancedAltar"));
ArrayList<IPage> fastMinerPages = new ArrayList();
fastMinerPages.add(new PageOrbRecipe(RecipeHolder.fastMinerRecipe));
fastMinerPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.fastMiner")));
entries.add(new EntryUniText(fastMinerPages, "guide.BloodMagic.entryName.architect.fastMiner"));
ArrayList<IPage> soulFrayPages = new ArrayList();
soulFrayPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.soulFray")));
entries.add(new EntryUniText(soulFrayPages, "guide.BloodMagic.entryName.architect.soulFray"));
ArrayList<IPage> greenGrovePages = new ArrayList();
greenGrovePages.add(new PageOrbRecipe(RecipeHolder.greenGroveRecipe));
greenGrovePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.greenGrove")));
entries.add(new EntryUniText(greenGrovePages, "guide.BloodMagic.entryName.architect.greenGrove"));
ArrayList<IPage> daggerPages = new ArrayList();
daggerPages.add(new PageAltarRecipe(RecipeHolder.daggerRecipe));
daggerPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.dagger")));
entries.add(new EntryUniText(daggerPages, "guide.BloodMagic.entryName.architect.dagger"));
ArrayList<IPage> sacrificePages = new ArrayList();
sacrificePages.add(new PageIRecipe(RecipeHolder.selfSacrificeRuneRecipe));
sacrificePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.sacrifice.1")));
sacrificePages.add(new PageIRecipe(RecipeHolder.sacrificeRuneRecipe));
sacrificePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.sacrifice.2")));
entries.add(new EntryUniText(sacrificePages, "guide.BloodMagic.entryName.architect.sacrifice"));
ArrayList<IPage> bloodPackPages = new ArrayList();
bloodPackPages.add(new PageIRecipe(RecipeHolder.bloodPackRecipe));
bloodPackPages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.bloodPack")));
entries.add(new EntryUniText(bloodPackPages, "guide.BloodMagic.entryName.architect.bloodPack"));
ArrayList<IPage> fivePeoplePages = new ArrayList();
fivePeoplePages.addAll(PageHelper.pagesForLongText(StatCollector.translateToLocal("aw.entries.architect.fivePeople")));
entries.add(new EntryUniText(fivePeoplePages, "guide.BloodMagic.entryName.architect.fivePeople"));
categories.add(new CategoryItemStack(entries, "guide.BloodMagic.category.architect", new ItemStack(ModItems.divinationSigil)));
}
}

View file

@ -0,0 +1,172 @@
package WayofTime.alchemicalWizardry.common.guide;
import java.util.List;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.IRecipe;
import WayofTime.alchemicalWizardry.ModBlocks;
import WayofTime.alchemicalWizardry.ModItems;
import WayofTime.alchemicalWizardry.api.altarRecipeRegistry.AltarRecipe;
import WayofTime.alchemicalWizardry.api.altarRecipeRegistry.AltarRecipeRegistry;
public class RecipeHolder
{
private static List recipeList;
public static IRecipe bloodAltarRecipe;
public static IRecipe knifeRecipe;
public static IRecipe divinationSigilRecipe;
public static IRecipe waterSigilRecipe;
public static IRecipe lavaCrystalRecipe;
public static IRecipe lavaSigilRecipe;
public static IRecipe blankRuneRecipe;
public static IRecipe speedRuneRecipe;
public static IRecipe voidSigilRecipe;
public static IRecipe airSigilRecipe;
public static IRecipe sightSigilRecipe;
public static IRecipe fastMinerRecipe;
public static IRecipe greenGroveRecipe;
public static IRecipe sacrificeRuneRecipe;
public static IRecipe selfSacrificeRuneRecipe;
public static IRecipe bloodPackRecipe;
public static IRecipe capacityRuneRecipe;
public static IRecipe dislocationRuneRecipe;
public static IRecipe magnetismSigilRecipe;
public static IRecipe phantomBridgeRecipe;
public static IRecipe holdingSigilRecipe;
public static IRecipe affinitySigilRecipe;
public static IRecipe ritualStoneRecipe;
public static IRecipe masterStoneRecipe;
public static IRecipe bloodLampRecipe;
public static IRecipe emptySocketRecipe;
public static IRecipe soulForgeRecipe;
public static IRecipe inhibitorRecipe;
public static IRecipe ritualDiviner1Recipe;
public static IRecipe ritualDiviner2Recipe;
public static IRecipe ritualDiviner3Recipe;
public static IRecipe bloodStoneRecipe;
public static IRecipe whirlwindSigilRecipe;
public static IRecipe compressionSigilRecipe;
public static IRecipe enderSeveranceSigilRecipe;
public static IRecipe teleposerRecipe;
public static IRecipe suppressionSigilRecipe;
public static IRecipe superiorCapacityRecipe;
public static IRecipe orbRuneRecipe;
public static IRecipe keyOfBindingRecipe;
public static IRecipe energyBazookaRecipe;
public static IRecipe accelerationRuneRecipe;
public static IRecipe harvestSigilRecipe;
public static IRecipe crystalCluserRecipe;
public static AltarRecipe weakBloodOrbRecipe;
public static AltarRecipe apprenticeBloodOrbRecipe;
public static AltarRecipe magicianBloodOrbRecipe;
public static AltarRecipe masterBloodOrbRecipe;
public static AltarRecipe archmageBloodOrbRecipe;
public static AltarRecipe transcendentBloodOrbRecipe;
public static AltarRecipe blankSlateRecipe;
public static AltarRecipe reinforcedSlateRecipe;
public static AltarRecipe imbuedSlateRecipe;
public static AltarRecipe demonicSlateRecipe;
public static AltarRecipe etherealSlateRecipe;
public static AltarRecipe daggerRecipe;
public static AltarRecipe weakActivationRecipe;
public static AltarRecipe filledSocketRecipe;
public static void init()
{
recipeList = CraftingManager.getInstance().getRecipeList();
bloodAltarRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.blockAltar));
knifeRecipe = getRecipeForItemStack(new ItemStack(ModItems.sacrificialDagger));
divinationSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.divinationSigil));
waterSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.waterSigil));
lavaCrystalRecipe = getRecipeForItemStack(new ItemStack(ModItems.lavaCrystal));
lavaSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.lavaSigil));
blankRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.bloodRune));
speedRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.speedRune));
voidSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.voidSigil));
airSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.airSigil));
sightSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemSeerSigil));
fastMinerRecipe = getRecipeForItemStack(new ItemStack(ModItems.sigilOfTheFastMiner));
greenGroveRecipe = getRecipeForItemStack(new ItemStack(ModItems.growthSigil));
sacrificeRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.runeOfSacrifice));
selfSacrificeRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.runeOfSelfSacrifice));
bloodPackRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemBloodPack));
capacityRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.bloodRune, 1, 1));
dislocationRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.bloodRune, 1, 2));
magnetismSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.sigilOfMagnetism));
phantomBridgeRecipe = getRecipeForItemStack(new ItemStack(ModItems.sigilOfTheBridge));
holdingSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.sigilOfHolding));
affinitySigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.sigilOfElementalAffinity));
ritualStoneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.ritualStone));
masterStoneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.blockMasterStone));
bloodLampRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemBloodLightSigil));
emptySocketRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.emptySocket));
soulForgeRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.armourForge));
inhibitorRecipe = getRecipeForItemStack(new ItemStack(ModItems.armourInhibitor));
ritualDiviner1Recipe = getRecipeForItemStack(new ItemStack(ModItems.itemRitualDiviner));
ritualDiviner2Recipe = getRecipeForItemStack(new ItemStack(ModItems.itemRitualDiviner, 1, 1));
ritualDiviner3Recipe = getRecipeForItemStack(new ItemStack(ModItems.itemRitualDiviner, 1, 2));
bloodStoneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.largeBloodStoneBrick));
whirlwindSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.sigilOfWind));
compressionSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemCompressionSigil));
enderSeveranceSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemSigilOfEnderSeverance));
teleposerRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.blockTeleposer));
suppressionSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemSigilOfSupression));
superiorCapacityRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.bloodRune, 1, 4));
orbRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.bloodRune, 1, 3));
keyOfBindingRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemKeyOfDiablo));
energyBazookaRecipe = getRecipeForItemStack(new ItemStack(ModItems.energyBazooka));
accelerationRuneRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.bloodRune, 1, 5));
harvestSigilRecipe = getRecipeForItemStack(new ItemStack(ModItems.itemHarvestSigil));
crystalCluserRecipe = getRecipeForItemStack(new ItemStack(ModBlocks.blockCrystal));
weakBloodOrbRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.weakBloodOrb));
apprenticeBloodOrbRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.apprenticeBloodOrb));
magicianBloodOrbRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.magicianBloodOrb));
masterBloodOrbRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.masterBloodOrb));
archmageBloodOrbRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.archmageBloodOrb));
transcendentBloodOrbRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.transcendentBloodOrb));
blankSlateRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.blankSlate));
reinforcedSlateRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.reinforcedSlate));
imbuedSlateRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.imbuedSlate));
demonicSlateRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.demonicSlate));
etherealSlateRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.baseItems, 1, 27));
daggerRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.daggerOfSacrifice));
weakActivationRecipe = getAltarRecipeForItemStack(new ItemStack(ModItems.activationCrystal, 1, 0));
filledSocketRecipe = getAltarRecipeForItemStack(new ItemStack(ModBlocks.bloodSocket));
}
private static IRecipe getRecipeForItemStack(ItemStack stack)
{
for(Object obj : recipeList)
{
IRecipe recipe = (IRecipe)obj;
if(recipe.getRecipeOutput() != null && stack.isItemEqual(recipe.getRecipeOutput()))
{
return recipe;
}
}
return null;
}
private static AltarRecipe getAltarRecipeForItemStack(ItemStack stack)
{
for(AltarRecipe recipe : AltarRecipeRegistry.altarRecipes)
{
if(recipe.getResult() != null && stack.isItemEqual(recipe.getResult()))
{
return recipe;
}
}
return null;
}
}

View file

@ -244,6 +244,10 @@ bm.string.drain=Drain
bm.string.tier=Tier
bm.string.crafting.orb.shaped=Shaped Orb Crafting
bm.string.crafting.orb.shapeless=Shapeless Orb Crafting
text.recipe.altar=Blood Altar
text.recipe.altar.tier=Tier: %s
text.recipe.altar.bloodRequired=LP: %s
text.recipe.shapedOrb=Shaped Orb Recipe
#Entities
entity.AWWayofTime.EarthElemental.name=Earth Elemental

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 87 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

After

Width:  |  Height:  |  Size: 189 KiB

File diff suppressed because one or more lines are too long