diff --git a/MODSRC/vazkii/botania/common/crafting/ModCrafingRecipes.java b/MODSRC/vazkii/botania/common/crafting/ModCrafingRecipes.java index e9c28f24a..41d4386e4 100644 --- a/MODSRC/vazkii/botania/common/crafting/ModCrafingRecipes.java +++ b/MODSRC/vazkii/botania/common/crafting/ModCrafingRecipes.java @@ -148,6 +148,7 @@ public final class ModCrafingRecipes { public static IRecipe recipeRainbowRod; public static IRecipe recipeSpectralPlatform; public static List recipesDreamwoodSpreader; + public static IRecipe recipeTornadoRod; public static void init() { // Lexicon Recipe @@ -867,6 +868,14 @@ public final class ModCrafingRecipes { 'E', LibOreDict.ELEMENTIUM); recipesDreamwoodSpreader = BotaniaAPI.getLatestAddedRecipes(16); + // Rod of the Skies Recipe + addOreDictRecipe(new ItemStack(ModItems.tornadoRod), + " F", " T ", "R ", + 'F', new ItemStack(Items.feather), + 'T', LibOreDict.LIVINGWOOD_TWIG, + 'R', LibOreDict.RUNE[3]); + recipeTornadoRod = BotaniaAPI.getLatestAddedRecipe(); + // Mana and Terrasteel Block Recipes addOreDictRecipe(new ItemStack(ModBlocks.storage, 1, 0), "III", "III", "III", diff --git a/MODSRC/vazkii/botania/common/item/ItemTornadoRod.java b/MODSRC/vazkii/botania/common/item/ItemTornadoRod.java index f629db146..486b4135f 100644 --- a/MODSRC/vazkii/botania/common/item/ItemTornadoRod.java +++ b/MODSRC/vazkii/botania/common/item/ItemTornadoRod.java @@ -19,6 +19,7 @@ import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraft.world.World; +import vazkii.botania.api.mana.ManaItemHandler; import vazkii.botania.client.core.helper.IconHelper; import vazkii.botania.common.Botania; import vazkii.botania.common.core.helper.ItemNBTHelper; @@ -29,7 +30,8 @@ public class ItemTornadoRod extends ItemMod { private static final int FLY_TIME = 20; private static final int FALL_MULTIPLIER = 3; - + private static final int COST = 350; + private static final String TAG_FLYING = "flying"; IIcon iconIdle, iconFlying; @@ -60,9 +62,15 @@ public class ItemTornadoRod extends ItemMod { @Override public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { - par3EntityPlayer.setItemInUse(par1ItemStack, getMaxItemUseDuration(par1ItemStack)); - if(par1ItemStack.getItemDamage() == 0) - setFlying(par1ItemStack, true); + int meta = par1ItemStack.getItemDamage(); + if(meta != 0 || ManaItemHandler.requestManaExact(par1ItemStack, par3EntityPlayer, COST, false)) { + par3EntityPlayer.setItemInUse(par1ItemStack, getMaxItemUseDuration(par1ItemStack)); + if(meta == 0) { + setFlying(par1ItemStack, true); + ManaItemHandler.requestManaExact(par1ItemStack, par3EntityPlayer, COST, true); + } + } + return par1ItemStack; } diff --git a/MODSRC/vazkii/botania/common/lexicon/LexiconData.java b/MODSRC/vazkii/botania/common/lexicon/LexiconData.java index 95388a202..51e04e3bf 100644 --- a/MODSRC/vazkii/botania/common/lexicon/LexiconData.java +++ b/MODSRC/vazkii/botania/common/lexicon/LexiconData.java @@ -126,6 +126,7 @@ public final class LexiconData { public static LexiconEntry openBucket; public static LexiconEntry spawnerMover; public static LexiconEntry rainbowRod; + public static LexiconEntry tornadoRod; public static LexiconEntry baublesIntro; public static LexiconEntry tinyPlanet; @@ -420,6 +421,9 @@ public final class LexiconData { rainbowRod = new ALexiconEntry(LibLexicon.TOOL_RAINBOW_ROD, categoryTools); rainbowRod.setLexiconPages(new PageText("0"), new PageText("1"), new PageCraftingRecipe("2", ModCrafingRecipes.recipeRainbowRod)); + tornadoRod = new BLexiconEntry(LibLexicon.TOOL_TORNADO_ROD, categoryTools); + tornadoRod.setLexiconPages(new PageText("0"), new PageCraftingRecipe("1", ModCrafingRecipes.recipeTornadoRod)); + // BAUBLES ENTRIES baublesIntro = new BLexiconEntry(LibLexicon.BAUBLE_INTRO, categoryBaubles); baublesIntro.setPriority().setLexiconPages(new PageText("0"), new PageImage("1", LibResources.ENTRY_BAUBLES), new PageText("2")); diff --git a/MODSRC/vazkii/botania/common/lib/LibLexicon.java b/MODSRC/vazkii/botania/common/lib/LibLexicon.java index d1d510834..c06253b29 100644 --- a/MODSRC/vazkii/botania/common/lib/LibLexicon.java +++ b/MODSRC/vazkii/botania/common/lib/LibLexicon.java @@ -104,6 +104,7 @@ public final class LibLexicon { public static final String TOOL_OPEN_BUCKET = "openBucket"; public static final String TOOL_SPAWNER_MOVER = "spawnerMover"; public static final String TOOL_RAINBOW_ROD = "rainbowRod"; + public static final String TOOL_TORNADO_ROD = "tornadoRod"; public static final String BAUBLE_INTRO = "bIntro"; public static final String BAUBLE_TINY_PLANET = "tinyPlanet"; diff --git a/resources/assets/botania/lang/en_US.lang b/resources/assets/botania/lang/en_US.lang index eaf9ece47..2c5a0de66 100644 --- a/resources/assets/botania/lang/en_US.lang +++ b/resources/assets/botania/lang/en_US.lang @@ -1065,6 +1065,11 @@ botania.page.rainbowRod0=&4Bifrost&0, the rainbow bridge that reaches between th botania.page.rainbowRod1=This bridge extends as far as a hundred blocks, and will vanish after about fifteen seconds.
Only one bridge can be created for any given &1Rod of Bifrost&0 at a time, as soon as the old bridge vanishes, a new one can be created. botania.page.rainbowRod2=Going my way!! Cut open a path and go! +# -- ROD OF THE SKIES +botania.entry.tornadoRod=Rod of the Skies +botania.page.tornadoRod0=The &1Rod of the Skies&0 is a magical instrument with the ability to propel one in the air at fast velocity for the cost of some &4Mana&0.
To do so, one would simply hold it like a bow and watch as their momentum increases.
The rod takes a small amount of time to recharge, but during that time it'll block any fall damage, keeping the user safe. +botania.page.tornadoRod1=A treasure from Lorule + # - BAUBLES # -- AN INTRODUCTION TO BAUBLES botania.entry.bIntro=An Introduction to Baubles