mirror of
https://github.com/GTNewHorizons/Botania.git
synced 2026-11-13 16:54:06 +00:00
Added Overgrowth Seeds.
This commit is contained in:
1 parent
46deec9843
commit
b14622fcac
19 files changed
+171
-50
No files matched your search
@@ -0,0 +1,82 @@
|
||||
/**
|
||||
* This class was created by <Vazkii>. It's distributed as
|
||||
* part of the Botania Mod. Get the Source Code in github:
|
||||
* https://github.com/Vazkii/Botania
|
||||
*
|
||||
* Botania is Open Source and distributed under a
|
||||
* Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License
|
||||
* (http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_GB)
|
||||
*
|
||||
* File Created @ [Jan 26, 2015, 6:08:29 PM (GMT)]
|
||||
*/
|
||||
package vazkii.botania.common.block;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.EnumPlantType;
|
||||
import net.minecraftforge.common.IPlantable;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import vazkii.botania.api.lexicon.ILexiconable;
|
||||
import vazkii.botania.api.lexicon.LexiconEntry;
|
||||
import vazkii.botania.client.core.helper.IconHelper;
|
||||
import vazkii.botania.common.lexicon.LexiconData;
|
||||
import vazkii.botania.common.lib.LibBlockNames;
|
||||
|
||||
public class BlockEnchantedSoil extends BlockMod implements ILexiconable {
|
||||
|
||||
IIcon iconSide;
|
||||
|
||||
public BlockEnchantedSoil() {
|
||||
super(Material.grass);
|
||||
setHardness(0.6F);
|
||||
setStepSound(soundTypeGrass);
|
||||
setBlockName(LibBlockNames.ENCHANTED_SOIL);
|
||||
}
|
||||
|
||||
@Override
|
||||
boolean registerInCreative() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerBlockIcons(IIconRegister par1IconRegister) {
|
||||
blockIcon = IconHelper.forBlock(par1IconRegister, this, 0);
|
||||
iconSide = IconHelper.forBlock(par1IconRegister, this, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public IIcon getIcon(int side, int meta) {
|
||||
return side == 0 ? Blocks.dirt.getIcon(0, 0) : side == 1 ? blockIcon : iconSide;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_) {
|
||||
return Blocks.dirt.getItemDropped(0, p_149650_2_, p_149650_3_);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canSustainPlant(IBlockAccess world, int x, int y, int z, ForgeDirection direction, IPlantable plantable) {
|
||||
return plantable.getPlantType(world, x, y - 1, z) == EnumPlantType.Plains;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean canSilkHarvest() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LexiconEntry getEntry(World world, int x, int y, int z, EntityPlayer player, ItemStack lexicon) {
|
||||
return LexiconData.overgrowthSeed;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -36,40 +36,6 @@ import vazkii.botania.common.block.decor.BlockStarfield;
|
||||
import vazkii.botania.common.block.decor.BlockThatch;
|
||||
import vazkii.botania.common.block.decor.BlockTinyPotato;
|
||||
import vazkii.botania.common.block.decor.BlockUnstable;
|
||||
import vazkii.botania.common.block.decor.quartz.BlockSpecialQuartz;
|
||||
import vazkii.botania.common.block.decor.quartz.BlockSpecialQuartzSlab;
|
||||
import vazkii.botania.common.block.decor.quartz.BlockSpecialQuartzStairs;
|
||||
import vazkii.botania.common.block.decor.slabs.BlockModSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.BlockReedSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.BlockThatchSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.bricks.BlockCustomBrickSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.bricks.BlockSnowBrickSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.bricks.BlockSoulBrickSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.bricks.BlockTileSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.living.BlockDreamwoodPlankSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.living.BlockDreamwoodSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.living.BlockLivingrockBrickSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.living.BlockLivingrockSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.living.BlockLivingwoodPlankSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.living.BlockLivingwoodSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.prismarine.BlockDarkPrismarineSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.prismarine.BlockPrismarineBrickSlab;
|
||||
import vazkii.botania.common.block.decor.slabs.prismarine.BlockPrismarineSlab;
|
||||
import vazkii.botania.common.block.decor.stairs.BlockReedStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.BlockThatchStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.bricks.BlockCustomBrickStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.bricks.BlockSnowBrickStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.bricks.BlockSoulBrickStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.bricks.BlockTileStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.living.BlockDreamwoodPlankStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.living.BlockDreamwoodStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.living.BlockLivingrockBrickStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.living.BlockLivingrockStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.living.BlockLivingwoodPlankStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.living.BlockLivingwoodStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.prismarine.BlockDarkPrismarineStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.prismarine.BlockPrismarineBrickStairs;
|
||||
import vazkii.botania.common.block.decor.stairs.prismarine.BlockPrismarineStairs;
|
||||
import vazkii.botania.common.block.dispenser.BehaviourSeeds;
|
||||
import vazkii.botania.common.block.dispenser.BehaviourWand;
|
||||
import vazkii.botania.common.block.mana.BlockAlchemyCatalyst;
|
||||
@@ -159,7 +125,6 @@ import vazkii.botania.common.block.tile.string.TileRedStringContainer;
|
||||
import vazkii.botania.common.block.tile.string.TileRedStringDispenser;
|
||||
import vazkii.botania.common.block.tile.string.TileRedStringFertilizer;
|
||||
import vazkii.botania.common.block.tile.string.TileRedStringRelay;
|
||||
import vazkii.botania.common.core.handler.ConfigHandler;
|
||||
import vazkii.botania.common.item.ModItems;
|
||||
import vazkii.botania.common.lib.LibBlockNames;
|
||||
import vazkii.botania.common.lib.LibOreDict;
|
||||
@@ -222,6 +187,7 @@ public final class ModBlocks {
|
||||
public static Block manaFlame;
|
||||
public static Block prism;
|
||||
public static Block dirtPath;
|
||||
public static Block enchantedSoil;
|
||||
|
||||
public static void init() {
|
||||
flower = new BlockModFlower();
|
||||
@@ -279,7 +245,8 @@ public final class ModBlocks {
|
||||
manaFlame = new BlockManaFlame();
|
||||
prism = new BlockPrism();
|
||||
dirtPath = new BlockDirtPath();
|
||||
|
||||
enchantedSoil = new BlockEnchantedSoil();
|
||||
|
||||
ModFluffBlocks.init();
|
||||
|
||||
for(int i = 0; i < 16; i++)
|
||||
|
||||
@@ -29,6 +29,7 @@ import vazkii.botania.api.lexicon.LexiconEntry;
|
||||
import vazkii.botania.api.subtile.ISubTileContainer;
|
||||
import vazkii.botania.api.subtile.SubTileEntity;
|
||||
import vazkii.botania.api.wand.IWandBindable;
|
||||
import vazkii.botania.common.block.ModBlocks;
|
||||
import vazkii.botania.common.block.tile.string.TileRedStringRelay;
|
||||
|
||||
public class TileSpecialFlower extends TileMod implements IWandBindable, ISubTileContainer {
|
||||
@@ -90,6 +91,8 @@ public class TileSpecialFlower extends TileMod implements IWandBindable, ISubTil
|
||||
}
|
||||
|
||||
subTile.onUpdate();
|
||||
if(worldObj.getBlock(xCoord, yCoord - 1, zCoord) == ModBlocks.enchantedSoil)
|
||||
subTile.onUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -92,6 +92,7 @@ public final class BotaniaCreativeTab extends CreativeTabs {
|
||||
addItem(ModItems.vineBall);
|
||||
addItem(ModItems.regenIvy);
|
||||
addItem(ModItems.worldSeed);
|
||||
addItem(ModItems.overgrowthSeed);
|
||||
if(Botania.thaumcraftLoaded)
|
||||
addItem(ModItems.manaInkwell);
|
||||
addBlock(ModBlocks.forestDrum);
|
||||
|
||||
@@ -27,21 +27,26 @@ public final class ChestGenHandler {
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.manaResource, 1, 1), 1, 1, 8));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.manaResource, 1, 1), 1, 3, 2));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 6));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 2));
|
||||
|
||||
c = ChestGenHooks.DUNGEON_CHEST;
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.manaResource, 1, 0), 1, 5, 9));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.lexicon), 1, 1, 6));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.manaBottle), 1, 1, 5));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 6));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 2));
|
||||
|
||||
c = ChestGenHooks.PYRAMID_DESERT_CHEST;
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 6));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 2));
|
||||
|
||||
c = ChestGenHooks.MINESHAFT_CORRIDOR;
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 6));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 2));
|
||||
|
||||
c = ChestGenHooks.PYRAMID_JUNGLE_DISPENSER;
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 6));
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 2));
|
||||
|
||||
c = ChestGenHooks.VILLAGE_BLACKSMITH;
|
||||
ChestGenHooks.addItem(c, new WeightedRandomChestContent(new ItemStack(ModItems.blackLotus), 1, 1, 6));
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* This class was created by <Vazkii>. It's distributed as
|
||||
* part of the Botania Mod. Get the Source Code in github:
|
||||
* https://github.com/Vazkii/Botania
|
||||
*
|
||||
* Botania is Open Source and distributed under a
|
||||
* Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License
|
||||
* (http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_GB)
|
||||
*
|
||||
* File Created @ [Jan 26, 2015, 5:59:21 PM (GMT)]
|
||||
*/
|
||||
package vazkii.botania.common.item;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
import vazkii.botania.common.block.ModBlocks;
|
||||
import vazkii.botania.common.lib.LibItemNames;
|
||||
|
||||
public class ItemOvergrowthSeed extends ItemMod {
|
||||
|
||||
public ItemOvergrowthSeed() {
|
||||
setUnlocalizedName(LibItemNames.OVERGROWTH_SEED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int s, float xs, float ys, float zs) {
|
||||
Block block = world.getBlock(x, y, z);
|
||||
ItemStack blockStack = new ItemStack(block);
|
||||
int[] ids = OreDictionary.getOreIDs(blockStack);
|
||||
for(int i : ids) {
|
||||
String name = OreDictionary.getOreName(i);
|
||||
if(name.equals("grass")) {
|
||||
world.playAuxSFX(2001, x, y, z, Block.getIdFromBlock(block));
|
||||
world.setBlock(x, y, z, ModBlocks.enchantedSoil);
|
||||
stack.stackSize--;
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -199,6 +199,7 @@ public final class ModItems {
|
||||
public static Item worldSeed;
|
||||
public static Item spellCloth;
|
||||
public static Item thornChakram;
|
||||
public static Item overgrowthSeed;
|
||||
|
||||
public static void init() {
|
||||
lexicon = new ItemLexicon();
|
||||
@@ -305,6 +306,7 @@ public final class ModItems {
|
||||
worldSeed = new ItemWorldSeed();
|
||||
spellCloth = new ItemSpellCloth();
|
||||
thornChakram = new ItemThornChakram();
|
||||
overgrowthSeed = new ItemOvergrowthSeed();
|
||||
|
||||
OreDictionary.registerOre(LibOreDict.LEXICON, lexicon);
|
||||
for(int i = 0; i < 16; i++) {
|
||||
|
||||
@@ -159,6 +159,7 @@ public final class LexiconData {
|
||||
public static LexiconEntry worldSeed;
|
||||
public static LexiconEntry spellCloth;
|
||||
public static LexiconEntry thornChakram;
|
||||
public static LexiconEntry overgrowthSeed;
|
||||
|
||||
public static LexiconEntry baublesIntro;
|
||||
public static LexiconEntry tinyPlanet;
|
||||
@@ -614,6 +615,9 @@ public final class LexiconData {
|
||||
thornChakram = new BLexiconEntry(LibLexicon.TOOL_THORN_CHAKRAM, categoryTools);
|
||||
thornChakram.setLexiconPages(new PageText("0"), new PageCraftingRecipe("1", ModCraftingRecipes.recipeThornChakram));
|
||||
|
||||
overgrowthSeed = new BLexiconEntry(LibLexicon.TOOL_OVERGROWTH_SEED, categoryTools);
|
||||
overgrowthSeed.setLexiconPages(new PageText("0"));
|
||||
|
||||
// BAUBLES ENTRIES
|
||||
baublesIntro = new BLexiconEntry(LibLexicon.BAUBLE_INTRO, categoryBaubles);
|
||||
baublesIntro.setPriority().setLexiconPages(new PageText("0"), new PageImage("1", LibResources.ENTRY_BAUBLES), new PageText("2"));
|
||||
|
||||
@@ -69,6 +69,7 @@ public final class LibBlockNames {
|
||||
public static final String MANA_FLAME = "manaFlame";
|
||||
public static final String PRISM = "prism";
|
||||
public static final String DIRT_PATH = "dirtPath";
|
||||
public static final String ENCHANTED_SOIL = "enchantedSoil";
|
||||
|
||||
public static final String SUBTILE_PUREDAISY = "puredaisy";
|
||||
public static final String SUBTILE_MANASTAR = "manastar";
|
||||
|
||||
@@ -118,6 +118,7 @@ public final class LibItemNames {
|
||||
public static final String WORLD_SEED = "worldSeed";
|
||||
public static final String SPELL_CLOTH = "spellCloth";
|
||||
public static final String THORN_CHAKRAM = "thornChakram";
|
||||
public static final String OVERGROWTH_SEED = "overgrowthSeed";
|
||||
|
||||
public static final String[] LENS_NAMES = new String[] {
|
||||
"lensNormal",
|
||||
|
||||
@@ -140,6 +140,7 @@ public final class LibLexicon {
|
||||
public static final String TOOL_WORLD_SEED = "worldSeed";
|
||||
public static final String TOOL_SPELL_CLOTH = "spellCloth";
|
||||
public static final String TOOL_THORN_CHAKRAM = "thornChakram";
|
||||
public static final String TOOL_OVERGROWTH_SEED = "overgrowthSeed";
|
||||
|
||||
public static final String BAUBLE_INTRO = "bIntro";
|
||||
public static final String BAUBLE_TINY_PLANET = "tinyPlanet";
|
||||
|
||||
Reference in new issue
Block a user