diff --git a/build.gradle b/build.gradle index 93ccdeb..287014e 100644 --- a/build.gradle +++ b/build.gradle @@ -23,7 +23,7 @@ apply plugin: 'maven-publish' sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 -version = "1.1.0" +version = "1.2.0" group = "net.anvilcraft" archivesBaseName = "classic-casting" diff --git a/src/main/java/net/anvilcraft/classiccasting/CCBlocks.java b/src/main/java/net/anvilcraft/classiccasting/CCBlocks.java index a9b5a4f..111bdcf 100644 --- a/src/main/java/net/anvilcraft/classiccasting/CCBlocks.java +++ b/src/main/java/net/anvilcraft/classiccasting/CCBlocks.java @@ -2,6 +2,7 @@ package net.anvilcraft.classiccasting; import cpw.mods.fml.common.registry.GameRegistry; import net.anvilcraft.classiccasting.blocks.BlockAlembic; +import net.anvilcraft.classiccasting.blocks.BlockArcaneWood; import net.anvilcraft.classiccasting.blocks.BlockCrystal; import net.anvilcraft.classiccasting.blocks.BlockInfusionWorkbench; import net.anvilcraft.classiccasting.items.ItemBlockAlembic; @@ -12,14 +13,17 @@ public class CCBlocks { public static Block alembic; public static Block crystal; public static Block infusionWorkbench; + public static Block blockArcaneWood; public static void init() { alembic = new BlockAlembic(); crystal = new BlockCrystal(); infusionWorkbench = new BlockInfusionWorkbench(); + blockArcaneWood = new BlockArcaneWood(); GameRegistry.registerBlock(alembic, ItemBlockAlembic.class, "alembic"); GameRegistry.registerBlock(crystal, ItemBlockCrystal.class, "crystal"); GameRegistry.registerBlock(infusionWorkbench, "infusionWorkbench"); + GameRegistry.registerBlock(blockArcaneWood, "blockArcaneWood"); } } diff --git a/src/main/java/net/anvilcraft/classiccasting/Recipes.java b/src/main/java/net/anvilcraft/classiccasting/Recipes.java index 4950b02..2217c90 100644 --- a/src/main/java/net/anvilcraft/classiccasting/Recipes.java +++ b/src/main/java/net/anvilcraft/classiccasting/Recipes.java @@ -45,6 +45,33 @@ public class Recipes { ) ); + Research.arcaneRecipes.put( + "ArcaneWood1", + ThaumcraftApi.addArcaneCraftingRecipe( + "MAGBLOCKS", + new ItemStack(CCBlocks.blockArcaneWood, 2), + new AspectList().add(Aspects.VIS, 20), + "WWW", + "WWW", + "WWW", + 'W', + "logWood" + ) + ); + + Research.arcaneRecipes.put( + "ArcaneWood2", + ThaumcraftApi.addArcaneCraftingRecipe( + "MAGBLOCKS", + new ItemStack(CCBlocks.blockArcaneWood, 4), + new AspectList().add(Aspects.VIS, 20), + "WW", + "WW", + 'W', + new ItemStack(ConfigBlocks.blockMagicalLog, 1, 0) + ) + ); + Research.arcaneRecipes.put( "AuraCompass", ThaumcraftApi.addArcaneCraftingRecipe( @@ -100,9 +127,7 @@ public class Recipes { 'C', new ItemStack(ConfigItems.itemShard, 1, 8), 'W', - // TODO: this is arcane wood, but that doesn't really exist yet. - // Just pretend the planks are magical - new ItemStack(Blocks.planks, 1, 0) + CCBlocks.blockArcaneWood ) ); diff --git a/src/main/java/net/anvilcraft/classiccasting/Research.java b/src/main/java/net/anvilcraft/classiccasting/Research.java index 170a7b5..5e81d43 100644 --- a/src/main/java/net/anvilcraft/classiccasting/Research.java +++ b/src/main/java/net/anvilcraft/classiccasting/Research.java @@ -115,6 +115,8 @@ public class Research { .setPages( new ResearchPage("classiccasting.research_page.MAGBLOCKS.1"), new ResearchPage(arcaneRecipes.get("ArcaneStone")), + new ResearchPage(arcaneRecipes.get("ArcaneWood1")), + new ResearchPage(arcaneRecipes.get("ArcaneWood2")), new ResearchPage("classiccasting.research_page.MAGBLOCKS.2"), new ResearchPage(infusionStructure), new ResearchPage("classiccasting.research_page.MAGBLOCKS.3") diff --git a/src/main/java/net/anvilcraft/classiccasting/blocks/BlockArcaneWood.java b/src/main/java/net/anvilcraft/classiccasting/blocks/BlockArcaneWood.java new file mode 100644 index 0000000..cd615ba --- /dev/null +++ b/src/main/java/net/anvilcraft/classiccasting/blocks/BlockArcaneWood.java @@ -0,0 +1,35 @@ +package net.anvilcraft.classiccasting.blocks; + +import net.anvilcraft.classiccasting.ClassicCastingTab; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.world.IBlockAccess; + +public class BlockArcaneWood extends Block { + + public BlockArcaneWood() { + super(Material.wood); + this.setHardness(2.0f); + this.setResistance(10.0f); + this.setStepSound(soundTypeWood); + this.setBlockName("classiccasting:blockArcaneWood"); + this.setCreativeTab(ClassicCastingTab.INSTANCE); + } + + @Override + public void registerBlockIcons(IIconRegister register) { + this.blockIcon = register.registerIcon("classiccasting:arcanewoodblock"); + } + + @Override + public int damageDropped(int md) { + return md; + } + + @Override + public boolean isBeaconBase(IBlockAccess arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) { + return true; + } + +} diff --git a/src/main/resources/assets/classiccasting/lang/en_US.lang b/src/main/resources/assets/classiccasting/lang/en_US.lang index 4479fa6..4fb9968 100644 --- a/src/main/resources/assets/classiccasting/lang/en_US.lang +++ b/src/main/resources/assets/classiccasting/lang/en_US.lang @@ -22,6 +22,7 @@ tile.classiccasting:alembic.name=Arcane Alembic tile.classiccasting:crystal.0.name=Crystal Core tile.classiccasting:crystal.1.name=Crystal Capacitor tile.classiccasting:infusionWorkbench.name=Arcane Stone +tile.classiccasting:blockArcaneWood.name=Arcane Wood Block # ---- RESEARCH ---- tc.research_category.CLASSICCASTING=Classic Casting diff --git a/src/main/resources/assets/classiccasting/textures/blocks/arcanewoodblock.png b/src/main/resources/assets/classiccasting/textures/blocks/arcanewoodblock.png new file mode 100644 index 0000000..d638b06 Binary files /dev/null and b/src/main/resources/assets/classiccasting/textures/blocks/arcanewoodblock.png differ