diff --git a/thaumicbees_res/changelog.txt b/thaumicbees_res/changelog.txt index 603d05a..286e72f 100644 --- a/thaumicbees_res/changelog.txt +++ b/thaumicbees_res/changelog.txt @@ -1,3 +1,7 @@ +1.4.5 +Added the Jade Moon Dial - tells you what moon phase it currently is for breeding purposes. +Added a creative menu tab for certain Thaumic Bees items - misc resources, capsules, tools. + 1.4.4b Ported to 1.5! Wooo! diff --git a/thaumicbees_res/lang/thaumicbees/en_US.xml b/thaumicbees_res/lang/thaumicbees/en_US.xml index 5a2cc5f..6f33b40 100644 --- a/thaumicbees_res/lang/thaumicbees/en_US.xml +++ b/thaumicbees_res/lang/thaumicbees/en_US.xml @@ -5,6 +5,7 @@ Handful of Jelly Babies Thaumium Scoop Thaumium Grafter + Jade Moon Dial Greatwood Planks @@ -99,7 +100,7 @@ Full Moon Waning Gibbous - Waxing Gibbous + Waxing Gibbous Waning Half Waxing Half Waning Crescent @@ -108,6 +109,7 @@ Thaumaturge's Backpack + Thaumic Bees Esoteric diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.0.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.0.png new file mode 100644 index 0000000..e565a33 Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.0.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.1.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.1.png new file mode 100644 index 0000000..1aa29db Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.1.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.2.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.2.png new file mode 100644 index 0000000..f039cb3 Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.2.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.3.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.3.png new file mode 100644 index 0000000..38426a4 Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.3.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.4.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.4.png new file mode 100644 index 0000000..d4c5f0d Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.4.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.5.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.5.png new file mode 100644 index 0000000..025e3c6 Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.5.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.6.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.6.png new file mode 100644 index 0000000..60726f0 Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.6.png differ diff --git a/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.7.png b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.7.png new file mode 100644 index 0000000..9d8dedf Binary files /dev/null and b/thaumicbees_res/mods/thaumicbees/textures/items/moonDial.7.png differ diff --git a/thaumicbees_src/thaumicbees/item/ItemCapsule.java b/thaumicbees_src/thaumicbees/item/ItemCapsule.java index 43ce439..caeab7d 100644 --- a/thaumicbees_src/thaumicbees/item/ItemCapsule.java +++ b/thaumicbees_src/thaumicbees/item/ItemCapsule.java @@ -10,6 +10,8 @@ import thaumicbees.item.types.CapsuleType; import thaumicbees.item.types.LiquidType; import thaumicbees.item.types.PlankType; import thaumicbees.main.CommonProxy; +import thaumicbees.main.ThaumicBees; +import thaumicbees.main.utils.TabThaumicBees; import thaumicbees.main.utils.VersionInfo; import net.minecraft.block.Block; import net.minecraft.client.renderer.texture.IconRegister; @@ -34,7 +36,7 @@ public class ItemCapsule extends Item { super(itemId); this.capsuleType = type; - this.setCreativeTab(Tabs.tabApiculture); + this.setCreativeTab(TabThaumicBees.tabThaumicBees); this.setHasSubtypes(true); this.setMaxStackSize(maxStackSize); } diff --git a/thaumicbees_src/thaumicbees/item/ItemCrystalAspect.java b/thaumicbees_src/thaumicbees/item/ItemCrystalAspect.java index f82fac0..4636a35 100644 --- a/thaumicbees_src/thaumicbees/item/ItemCrystalAspect.java +++ b/thaumicbees_src/thaumicbees/item/ItemCrystalAspect.java @@ -8,7 +8,9 @@ import cpw.mods.fml.relauncher.SideOnly; import forestry.api.core.Tabs; import thaumcraft.api.EnumTag; import thaumicbees.main.CommonProxy; +import thaumicbees.main.ThaumicBees; import thaumicbees.main.utils.LocalizationManager; +import thaumicbees.main.utils.TabThaumicBees; import thaumicbees.main.utils.VersionInfo; import thaumicbees.main.utils.compat.ForestryHelper; import net.minecraft.client.renderer.texture.IconRegister; @@ -21,7 +23,7 @@ public class ItemCrystalAspect extends Item public ItemCrystalAspect(int itemId) { super(itemId); - this.setCreativeTab(Tabs.tabApiculture); + this.setCreativeTab(TabThaumicBees.tabThaumicBees); this.setHasSubtypes(true); this.setUnlocalizedName("crystalAspect"); } diff --git a/thaumicbees_src/thaumicbees/item/ItemMiscResources.java b/thaumicbees_src/thaumicbees/item/ItemMiscResources.java index fa3b726..827af46 100644 --- a/thaumicbees_src/thaumicbees/item/ItemMiscResources.java +++ b/thaumicbees_src/thaumicbees/item/ItemMiscResources.java @@ -7,6 +7,8 @@ import cpw.mods.fml.relauncher.SideOnly; import forestry.api.core.Tabs; import thaumicbees.item.types.ResourceType; import thaumicbees.main.CommonProxy; +import thaumicbees.main.ThaumicBees; +import thaumicbees.main.utils.TabThaumicBees; import thaumicbees.main.utils.VersionInfo; import thaumicbees.main.utils.compat.ForestryHelper; import net.minecraft.client.renderer.texture.IconRegister; @@ -23,7 +25,7 @@ public class ItemMiscResources extends Item { super(ID); this.setUnlocalizedName("tb.miscResources"); - this.setCreativeTab(CreativeTabs.tabMaterials); + this.setCreativeTab(TabThaumicBees.tabThaumicBees); this.setHasSubtypes(true); } diff --git a/thaumicbees_src/thaumicbees/item/ItemMoonDial.java b/thaumicbees_src/thaumicbees/item/ItemMoonDial.java new file mode 100644 index 0000000..a232b7e --- /dev/null +++ b/thaumicbees_src/thaumicbees/item/ItemMoonDial.java @@ -0,0 +1,55 @@ +package thaumicbees.item; + +import java.util.List; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import thaumicbees.item.types.PollenType; +import thaumicbees.main.ThaumicBees; +import thaumicbees.main.utils.MoonPhase; +import thaumicbees.main.utils.TabThaumicBees; +import thaumicbees.main.utils.VersionInfo; +import thaumicbees.main.utils.compat.ForestryHelper; +import net.minecraft.client.renderer.texture.IconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.Icon; + +public class ItemMoonDial extends Item +{ + @SideOnly(Side.CLIENT) + private Icon[] icons; + + public ItemMoonDial(int id) + { + super(id); + this.setCreativeTab(TabThaumicBees.tabThaumicBees); + this.setUnlocalizedName("moonDial"); + } + + @SideOnly(Side.CLIENT) + public void registerIcons(IconRegister par1IconRegister) + { + this.icons = new Icon[MoonPhase.values().length]; + for (int i = 0; i < MoonPhase.values().length; ++i) + { + this.icons[i] = par1IconRegister.registerIcon(VersionInfo.ModName.toLowerCase() + ":moonDial." + i); + } + this.itemIcon = this.icons[0]; + } + + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4) + { + par3List.add("\u00A77" + + MoonPhase.getMoonPhaseFromTime(MinecraftServer.getServer().worldServers[0].getWorldTime()).getLocalizedName()); + } + + @Override + public Icon getIconFromDamage(int damage) + { + return this.icons[MoonPhase.getMoonPhaseFromTime(MinecraftServer.getServer().worldServers[0].getWorldTime()).ordinal()]; + } +} diff --git a/thaumicbees_src/thaumicbees/item/types/ResourceType.java b/thaumicbees_src/thaumicbees/item/types/ResourceType.java index a6023c7..0f96958 100644 --- a/thaumicbees_src/thaumicbees/item/types/ResourceType.java +++ b/thaumicbees_src/thaumicbees/item/types/ResourceType.java @@ -11,8 +11,8 @@ public enum ResourceType // Dummy items for Thaumanomicon research icons. // These won't ever actually exist in-game, and so - RESEARCH_StartNode("startNode", false), - RESEARCH_BeeInfusion("beeInfusion", false), + RESEARCH_STARTNODE("startNode", false), + RESEARCH_BEEINFUSION("beeInfusion", false), ; private ResourceType(String n, boolean show) diff --git a/thaumicbees_src/thaumicbees/main/Config.java b/thaumicbees_src/thaumicbees/main/Config.java index 2833137..ffbc00f 100644 --- a/thaumicbees_src/thaumicbees/main/Config.java +++ b/thaumicbees_src/thaumicbees/main/Config.java @@ -23,6 +23,7 @@ import thaumicbees.item.ItemCrystalAspect; import thaumicbees.item.ItemDrop; import thaumicbees.item.ItemMagicHiveFrame; import thaumicbees.item.ItemMiscResources; +import thaumicbees.item.ItemMoonDial; import thaumicbees.item.ItemNugget; import thaumicbees.item.ItemPollen; import thaumicbees.item.ItemPropolis; @@ -35,6 +36,7 @@ import thaumicbees.item.types.NuggetType; import thaumicbees.item.types.PlankType; import thaumicbees.item.types.ResourceType; import thaumicbees.main.utils.LocalizationManager; +import thaumicbees.main.utils.TabThaumicBees; import thaumicbees.main.utils.compat.EquivalentExchangeHelper; import thaumicbees.main.utils.compat.ForestryHelper; import thaumicbees.main.utils.compat.ThaumcraftHelper; @@ -76,6 +78,7 @@ public class Config public static ItemThaumiumScoop thaumiumScoop; public static ItemThaumiumGrafter thaumiumGrafter; public static ItemNugget nuggets; + public static ItemMoonDial moonDial; //----- Liquid Capsules -------------------- public static ItemCapsule magicCapsule; @@ -285,9 +288,10 @@ public class Config } } + moonDial = new ItemMoonDial(tbConfig.getItem("moonDial", itemIDBase++).getInt()); + // Other tools I might need in the future itemIDBase++; - itemIDBase++; nuggets = new ItemNugget(tbConfig.getItem("beeNuggets", itemIDBase++).getInt()); nuggets.setUnlocalizedName("beeNuggets"); diff --git a/thaumicbees_src/thaumicbees/main/utils/CraftingManager.java b/thaumicbees_src/thaumicbees/main/utils/CraftingManager.java index 14c6c31..e0ef583 100644 --- a/thaumicbees_src/thaumicbees/main/utils/CraftingManager.java +++ b/thaumicbees_src/thaumicbees/main/utils/CraftingManager.java @@ -120,6 +120,13 @@ public class CraftingManager 'D', Block.dirt, 'w', Config.wax.getStackForType(WaxType.SOUL) }); + + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Config.moonDial), new Object[] { + "rqr", "qDq", "rqr", + 'r', Item.redstone, + 'q', Item.netherQuartz, + 'D', "dyeGreen" + })); if (OreDictionary.getOres("ingotCopper").size() <= 0) { diff --git a/thaumicbees_src/thaumicbees/main/utils/MoonPhase.java b/thaumicbees_src/thaumicbees/main/utils/MoonPhase.java index e7237bf..71bfa7a 100644 --- a/thaumicbees_src/thaumicbees/main/utils/MoonPhase.java +++ b/thaumicbees_src/thaumicbees/main/utils/MoonPhase.java @@ -42,13 +42,18 @@ public enum MoonPhase return flag; } - public String getName() + public String getLocalizedName() { return LocalizationManager.getLocalizedString("tb.moon." + this.phaseName); } public static MoonPhase getMoonPhase(World w) { - return MoonPhase.values()[(int)((w.getWorldTime() - 0) / 24000L) % 8]; + return getMoonPhaseFromTime(w.getWorldTime()); + } + + public static MoonPhase getMoonPhaseFromTime(long time) + { + return MoonPhase.values()[(int)((time - 6000) / 24000L) % 8]; } } diff --git a/thaumicbees_src/thaumicbees/main/utils/TabThaumicBees.java b/thaumicbees_src/thaumicbees/main/utils/TabThaumicBees.java new file mode 100644 index 0000000..07a910a --- /dev/null +++ b/thaumicbees_src/thaumicbees/main/utils/TabThaumicBees.java @@ -0,0 +1,24 @@ +package thaumicbees.main.utils; + +import thaumicbees.item.types.ResourceType; +import thaumicbees.main.ThaumicBees; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +public class TabThaumicBees extends CreativeTabs +{ + public static TabThaumicBees tabThaumicBees = new TabThaumicBees(); + + public TabThaumicBees() + { + super(getNextID(), "thaumicBees"); + } + + public ItemStack getIconItemStack() + { + return ThaumicBees.getConfig().miscResources.getStackForType(ResourceType.RESEARCH_BEEINFUSION); + } +} \ No newline at end of file diff --git a/thaumicbees_src/thaumicbees/main/utils/compat/ThaumcraftHelper.java b/thaumicbees_src/thaumicbees/main/utils/compat/ThaumcraftHelper.java index ec3c602..bef8d37 100644 --- a/thaumicbees_src/thaumicbees/main/utils/compat/ThaumcraftHelper.java +++ b/thaumicbees_src/thaumicbees/main/utils/compat/ThaumcraftHelper.java @@ -537,7 +537,7 @@ public class ThaumcraftHelper ObjectTags tags; tags = new ObjectTags().add(EnumTag.WOOD, 10).add(EnumTag.PLANT, 10).add(EnumTag.INSECT, 10); - ResearchItem startNode = new ResearchItem("TBSTARTNODE", tags, 10, 1, Config.miscResources.getStackForType(ResourceType.RESEARCH_StartNode)) + ResearchItem startNode = new ResearchItem("TBSTARTNODE", tags, 10, 1, Config.miscResources.getStackForType(ResourceType.RESEARCH_STARTNODE)) .setParents(ResearchList.getResearch("UTFT")) .registerResearchItem(); @@ -548,7 +548,7 @@ public class ThaumcraftHelper tags = new ObjectTags().add(EnumTag.INSECT, 15).add(EnumTag.MAGIC, 5).add(EnumTag.WATER, 5).add(EnumTag.EARTH, 5) .add(EnumTag.WIND, 5).add(EnumTag.FIRE, 5); - ResearchItem beeInfusion = new ResearchItem("BEEINFUSION", tags, 5, 3, Config.miscResources.getStackForType(ResourceType.RESEARCH_BeeInfusion)) + ResearchItem beeInfusion = new ResearchItem("BEEINFUSION", tags, 5, 3, Config.miscResources.getStackForType(ResourceType.RESEARCH_BEEINFUSION)) .setParents(starkHint).setHidden() .registerResearchItem();