check to-dos for current state

This commit is contained in:
Mohammad-Ali Minaie
2017-02-06 22:03:27 -05:00
parent 66c1f5aca4
commit 1e1d620134
11 changed files with 209 additions and 7 deletions

View File

@@ -26,11 +26,14 @@ To-Dos
- [x] Update Forge Version 11.2
*** Priority ***
- [ ] Wrought Iron Ingot model
- [ ] Crafting for filled crucible
- [ ] Crafting Recipe for filled iron crucible
- [ ] Crafting Recipe for hot iron crucible
- [ ] Crafting Recipe for hot cooked iron crucible
- [ ] isItemValidForSlot tileBloomery
- [ ] Null Check for Crucible
- [x] Wrought Iron Ingot model
- [x] Crafting for filled crucible
- [x] Bloomery Recipe for filled iron crucible
- [x] Bloomery Recipe for hot iron crucible
- [x] Bloomery Recipe for hot cooked iron crucible
- [ ] Item Drop for failed crucible

View File

@@ -0,0 +1,20 @@
package nmd.primal.forgecraft.blocks;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import nmd.primal.forgecraft.ModInfo;
/**
* Created by mminaie on 2/6/17.
*/
public class BlockBase extends Block{
public BlockBase(Material material, String registryName, Float hardness) {
super(material);
setUnlocalizedName(registryName);
setRegistryName(registryName);
setCreativeTab(ModInfo.TAB_FORGECRAFT);
setHardness(hardness);
}
}

View File

@@ -0,0 +1,61 @@
package nmd.primal.forgecraft.blocks;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.EnumBlockRenderType;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo;
/**
* Created by mminaie on 2/6/17.
*/
public class BlockCustomBase extends BlockBase {
protected static final AxisAlignedBB boundBox = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D);
public BlockCustomBase(Material material, String registryName, Float hardness) {
super(material, registryName, hardness);
}
@Override
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos)
{
return boundBox;
}
@Override
public boolean isFullCube(IBlockState state)
{
return false;
}
@Override
public boolean isFullyOpaque(IBlockState state)
{
return false;
}
@Override
public boolean isOpaqueCube(IBlockState state)
{
return false;
}
@Override
@SideOnly(Side.CLIENT)
public boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side)
{
return true;
}
@Override
public EnumBlockRenderType getRenderType(IBlockState state)
{
return EnumBlockRenderType.MODEL;
}
}

View File

@@ -90,6 +90,7 @@ public class Crucible extends Block {
if(!world.isRemote){
spawnItemEntityFromWorld(world, pos, new ItemStack(ModBlocks.emptycrucible, 1));
//Insert Null Check
if (checkDrops(this.getUnlocalizedName()).equals(this.getUnlocalizedName())){
spawnItemEntityFromWorld(world, pos, new ItemStack(getItemFromName(this.getUnlocalizedName()), 1));
}
@@ -107,7 +108,7 @@ public class Crucible extends Block {
private Item getItemFromName(String name){
if(name.equals(getUnlocalizedName())){
return Items.IRON_INGOT;
return Item.getItemFromBlock(ModBlocks.ironball);
} else return Items.AIR;
}

View File

@@ -0,0 +1,27 @@
package nmd.primal.forgecraft.blocks;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
import nmd.primal.forgecraft.ModInfo;
/**
* Created by mminaie on 2/6/17.
*/
public class IngotBall extends BlockCustomBase {
protected static final AxisAlignedBB boundBox = new AxisAlignedBB(7/16D, 0.0D, 7/16D, 9/16D, 2/16D, 9/16D);
public IngotBall(Material material, String registryName, Float hardness){
super(material, registryName, hardness);
}
@Override
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos)
{
return boundBox;
}
}

View File

@@ -34,6 +34,9 @@ public class ModBlocks {
public static Block failedironcrucible;
public static Block failedironcruciblehot;
public static Block ironball;
public static void init() {
firebox = new Firebox(Material.ROCK);
@@ -59,6 +62,8 @@ public class ModBlocks {
failedironcrucible = new Crucible(Material.ROCK, "failedironcrucible");
failedironcruciblehot = new Crucible(Material.ROCK, "failedironcruciblehot");
ironball = new IngotBall(Material.IRON, "ironball", 5.0F);
}
public static void register() {
@@ -84,6 +89,7 @@ public class ModBlocks {
registerBlock(failedironcrucible);
registerBlock(failedironcruciblehot);
registerBlock(ironball);
}
public static void registerRenders() {
@@ -107,6 +113,8 @@ public class ModBlocks {
registerRender(failedironcrucible);
registerRender(failedironcruciblehot);
registerRender(ironball);
}
private static void registerBlock(Block block) {

View File

@@ -37,7 +37,8 @@ public class ModCrafting {
GameRegistry.addShapedRecipe(new ItemStack(ModItems.stonetongs, 1), "X X", "YSY", 'X', Blocks.STONE, 'S', Items.STRING, 'Y', Items.STICK);
/***Bloomery Crafting***/
//DryingRecipe.addRecipe(new ItemStack(Items.FISH, 1, 0), new ItemStack(PrimalItems.FISH_COD_DRIED), new ItemStack(PrimalItems.FISH_COD_ROTTEN), 25, 0.006F);
//Makes the Empty Crucible
BloomeryCrafting.addRecipe(
new ItemStack(ModItems.softcrucible, 1),
new ItemStack(ModBlocks.emptycruciblehot, 1),
@@ -49,6 +50,7 @@ public class ModCrafting {
0.25f,
0.25f);
//Makes the Cracked Crucible
BloomeryCrafting.addRecipe(
new ItemStack(ModBlocks.emptycruciblehot, 1),
new ItemStack(ModBlocks.emptycruciblecrackedhot, 1),
@@ -59,5 +61,32 @@ public class ModCrafting {
600,
0.0f,
0.0f);
//Makes the Hot Iron Crucible
BloomeryCrafting.addRecipe(
new ItemStack(ModBlocks.rawironcrucible, 1),
new ItemStack(ModBlocks.hotironcrucible, 1),
new ItemStack(ModBlocks.hotironcrucible, 1),
new ItemStack(ModBlocks.rawironcrucible, 1),
800,
20,
500,
0.5f,
0.0f
);
//Makes the Finished Hot Iron Crucible
BloomeryCrafting.addRecipe(
new ItemStack(ModBlocks.hotironcrucible, 1),
new ItemStack(ModBlocks.hotcookedironcrucible, 1),
new ItemStack(ModBlocks.failedironcruciblehot, 1),
new ItemStack(ModBlocks.coolironcrucible, 1),
1550,
1200,
800,
0.33f,
0.5f
);
}
}

View File

@@ -0,0 +1,5 @@
{
"variants": {
"normal": { "model": "forgecraft:ironball" }
}
}

View File

@@ -0,0 +1,40 @@
{
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
"textures": {
"particle": "forgecraft:blocks/iron_ingot",
"texture": "forgecraft:blocks/iron_ingot"
},
"elements": [
{
"__comment": "Cube1",
"from": [ 7, 0, 7 ],
"to": [ 9, 2, 9 ],
"faces": {
"down": { "uv": [ 7, 5, 9, 7 ], "texture": "#texture" },
"up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" },
"north": { "uv": [ 7, 12, 9, 14 ], "texture": "#texture" },
"south": { "uv": [ 7, 14, 9, 16 ], "texture": "#texture" },
"west": { "uv": [ 5, 8, 7, 10 ], "texture": "#texture" },
"east": { "uv": [ 5, 10, 7, 12 ], "texture": "#texture" }
}
}
],
"display": {
"thirdperson_righthand": {
"translation": [ 0, 7, -0.7 ]
},
"firstperson_righthand": {
"translation": [ 0, 7.35, 0 ]
},
"gui": {
"rotation": [ 30, 225, 0 ],
"scale": [ 0.625, 0.625, 0.625 ]
},
"ground": {
"translation": [ 0, 4, 0 ]
},
"fixed": {
"translation": [ 0, 7, 0 ]
}
}
}

View File

@@ -0,0 +1,8 @@
{
"forge_marker":1,
"textures": {
"particle": "forgecraft:blocks/iron_ingot",
"texture": "forgecraft:blocks/iron_ingot"
},
"parent": "forgecraft:block/ironball"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 714 B