Added almost all of the 1.8 update content

missing:
- entities/creatures
- spawn eggs
- enchants
- potions
- banners
Misc like Barricade and armor stand

otherwise can be used in creative to use every building block.

Slime blocks have an issue where after X amount of blocks fall you will keep gaining height, they also do NOT work like modern updates so you cannot make slime block contraptions.

Will update Wiki page and releases shortly after this commit.

Onwards to 1.9!
This commit is contained in:
IveBeenAlone 2024-12-05 14:10:54 -05:00
parent 3e1a53e08e
commit 86b7f3de49
35 changed files with 1435 additions and 109 deletions

8
.gitignore vendored Normal file
View File

@ -0,0 +1,8 @@
.gradle
.idea
.metadata
.settings
*.class
bin
eclipse
gradle

View File

@ -21,7 +21,7 @@ buildscript {
apply plugin: 'forge' apply plugin: 'forge'
version = "0.1.0-dev" version = "1.0.0"
group= "xyz.ibatv.iba_backblocks" // http://maven.apache.org/guides/mini/guide-naming-conventions.html group= "xyz.ibatv.iba_backblocks" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "iba_backblocks" archivesBaseName = "iba_backblocks"
targetCompatibility = sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = sourceCompatibility = JavaVersion.VERSION_1_8

View File

@ -2,6 +2,7 @@ package xyz.ibatv.iba_backblocks;
import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.passive.EntitySheep; import net.minecraft.entity.passive.EntitySheep;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraftforge.event.entity.living.LivingDropsEvent; import net.minecraftforge.event.entity.living.LivingDropsEvent;
@ -18,7 +19,7 @@ import xyz.ibatv.iba_backblocks.items.Minecraft1_8_Items;
public class IBA_BackBlocks { public class IBA_BackBlocks {
public static final String MODID = "iba_backblocks"; public static final String MODID = "iba_backblocks";
public static final String VERSION = "0.1.0"; public static final String VERSION = "0.1.1-dev";
@EventHandler @EventHandler
@ -27,11 +28,22 @@ public class IBA_BackBlocks {
//config handling //config handling
Register.mc18Ore(); Register.mc18Ore();
Register.mc18logs(); Register.mc18logs();
Register.fences(); Register.initFencesGates();
Register.newSandStone(); Register.newSandStone();
Register.initSlimeBlock(); Register.initSlimeBlock();
Register.initMutton(); Register.initMutton();
Register.initRabbit(); Register.initRabbit();
Register.initRecipes();
Register.initAcaciaDoor();
Register.initDarkoakDoor();
Register.initBirchDoor();
Register.initJungleDoor();
Register.initSpruceDoor();
Register.initIronTrapdoor();
Register.initNewStones();
Register.initPrismarine();
Register.initRabbitStew();
//Register.init();
Minecraft1_8_Items.items(); Minecraft1_8_Items.items();
} }
@ -73,12 +85,19 @@ public class IBA_BackBlocks {
} }
} }
public static void registerBlockHelperNoTab(Block s, String name)
{
s.setBlockName(name).setBlockTextureName("iba_backblocks:" + name);
GameRegistry.registerBlock(s, name);
}
public static void registerBlockHelper(Block s, String name) public static void registerBlockHelper(Block s, String name)
{ {
s.setBlockName(name).setBlockTextureName("iba_backblocks:" + name); s.setBlockName(name).setBlockTextureName("iba_backblocks:" + name);
GameRegistry.registerBlock(s, name); GameRegistry.registerBlock(s, name);
} }
public static void registerItemHelper(Item s, String name) public static void registerItemHelper(Item s, String name)
{ {
s.setUnlocalizedName(name).setTextureName("iba_backblocks:" + name); s.setUnlocalizedName(name).setTextureName("iba_backblocks:" + name);

View File

@ -1,53 +1,154 @@
package xyz.ibatv.iba_backblocks.Register; package xyz.ibatv.iba_backblocks.Register;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFood; import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.creativetab.CreativeTabs;
import xyz.ibatv.iba_backblocks.*; import xyz.ibatv.iba_backblocks.*;
import xyz.ibatv.iba_backblocks.blocks.mc18.BlockRedSandstone; import xyz.ibatv.iba_backblocks.blocks.mc18.*;
import xyz.ibatv.iba_backblocks.blocks.mc18.BlockSlime; import xyz.ibatv.iba_backblocks.blocks.mc18.fence.BlockFenceGateSimple;
import xyz.ibatv.iba_backblocks.blocks.mc18.fence.cherryWoodFence; import xyz.ibatv.iba_backblocks.blocks.mc18.fence.BlockFenceSimple;
import xyz.ibatv.iba_backblocks.blocks.mc18.fence.spruceWoodFence;
import xyz.ibatv.iba_backblocks.blocks.mc18.logs.*; import xyz.ibatv.iba_backblocks.blocks.mc18.logs.*;
import xyz.ibatv.iba_backblocks.init.InitBlocks; import xyz.ibatv.iba_backblocks.init.InitBlocks;
import xyz.ibatv.iba_backblocks.items.Minecraft1_8_Items;
public class Register { public class Register {
public static void initRecipes()
{
//more random changes from
// https://minecraft.wiki/w/Java_Edition_1.8
Blocks.packed_ice.setHarvestLevel("pickaxe", 0);
Blocks.melon_block.setHarvestLevel("axe", 0);
Blocks.ladder.setHarvestLevel("axe", 0);
//new recipes for existing blocks
GameRegistry.addRecipe(new ItemStack(Blocks.stonebrick,1,reference.stonebrick_chisel), " s", " s"
,'s', new ItemStack(Blocks.stone_slab,1,reference.stone_slab_stonebrick));
GameRegistry.addRecipe(new ItemStack(Blocks.stonebrick,1,reference.stonebrick_mossy), "sv", " "
,'s', Blocks.stonebrick
,'v', Blocks.vine
);
GameRegistry.addRecipe(new ItemStack(Blocks.mossy_cobblestone), "sv", " "
,'s', Blocks.cobblestone
,'v', Blocks.vine
);
GameRegistry.addSmelting(Blocks.stonebrick, new ItemStack(Blocks.stonebrick,1,reference.stonebrick_cracked), 0);
//doors made only 1 each build in 1.7, but 3 in 1.8
//we do it just for oak because i have all the door stuff for the types
GameRegistry.addRecipe(new ItemStack(Items.wooden_door,3), " pp", " pp", " pp",
'p',new ItemStack(Blocks.planks,1,reference.planks_oak));
}
public static void initAcaciaDoor()
{
BlockDoorSimple door_acacia = new BlockDoorSimple();
ItemDoorSimple door_acacia_item = new ItemDoorSimple(door_acacia);
door_acacia.setItemDropped(door_acacia_item);
IBA_BackBlocks.registerBlockHelperNoTab(door_acacia, "door_acacia");
IBA_BackBlocks.registerItemHelper(door_acacia_item, "door_acacia_item") ;
GameRegistry.addRecipe(new ItemStack(door_acacia_item,3), " pp", " pp", " pp",
'p',new ItemStack(Blocks.planks,1,reference.planks_acacia));
}
public static void initJungleDoor()
{
BlockDoorSimple door_jungle = new BlockDoorSimple();
ItemDoorSimple door_jungle_item = new ItemDoorSimple( door_jungle);
door_jungle_item.setUnlocalizedName("door_jungle_iten");//same texture name but its in the assets......items package
door_jungle.setItemDropped(door_jungle_item);
IBA_BackBlocks.registerBlockHelperNoTab(door_jungle, "door_jungle");
IBA_BackBlocks.registerItemHelper(door_jungle_item, "door_jungle_item") ;
GameRegistry.addRecipe(new ItemStack(door_jungle_item,3), " pp", " pp", " pp",
'p',new ItemStack(Blocks.planks,1,reference.planks_jungle ));
}
public static void initSpruceDoor()
{
BlockDoorSimple door_spruce = new BlockDoorSimple();
ItemDoorSimple door_spruce_item = new ItemDoorSimple(door_spruce);
door_spruce_item.setUnlocalizedName("door_spruce_item");//same texture name but its in the assets......items package
door_spruce.setItemDropped(door_spruce_item);
IBA_BackBlocks.registerBlockHelperNoTab(door_spruce, "door_spruce");
IBA_BackBlocks.registerItemHelper(door_spruce_item, "door_spruce_item") ;
GameRegistry.addRecipe(new ItemStack(door_spruce_item,3), " pp", " pp", " pp",
'p',new ItemStack(Blocks.planks,1,reference.planks_spruce) );
}
public static void initBirchDoor()
{
BlockDoorSimple door_birch = new BlockDoorSimple();
ItemDoorSimple door_birch_item = new ItemDoorSimple(door_birch );
door_birch_item.setUnlocalizedName("door_birch_item");//same texture name but its in the assets......items package
door_birch.setItemDropped(door_birch_item);
IBA_BackBlocks.registerBlockHelperNoTab(door_birch, "door_birch");
IBA_BackBlocks.registerItemHelper(door_birch_item, "door_birch_item") ;
GameRegistry.addRecipe(new ItemStack(door_birch_item,3), " pp", " pp", " pp",
'p',new ItemStack(Blocks.planks,1,reference.planks_birch) );
}
public static void initDarkoakDoor()
{
BlockDoorSimple door_dark_oak = new BlockDoorSimple();
ItemDoorSimple door_dark_oak_item = new ItemDoorSimple(door_dark_oak);
door_dark_oak_item.setUnlocalizedName("door_dark_oak_item");//same texture name but its in the assets......items package
door_dark_oak.setItemDropped(door_dark_oak_item);
IBA_BackBlocks.registerBlockHelperNoTab(door_dark_oak, "door_dark_oak");
IBA_BackBlocks.registerItemHelper(door_dark_oak_item, "door_dark_oak_item") ;
GameRegistry.addRecipe(new ItemStack(door_dark_oak_item,3), " pp", " pp", " pp",
'p',new ItemStack(Blocks.planks,1,reference.planks_darkoak) );
}
public static void mc18Ore() { public static void mc18Ore() {
GameRegistry.registerBlock(InitBlocks.oreCopper, "copper_ore").setCreativeTab(CreativeTabs.tabBlock); GameRegistry.registerBlock(InitBlocks.oreCopper, "copper_ore").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.copperBlock, "copper_block").setCreativeTab(CreativeTabs.tabBlock); GameRegistry.registerBlock(InitBlocks.copperBlock, "copper_block").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.Andesite, "andesite").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.Diorite, "diorite").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.Granite, "granite").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.Prismarine, "prismarine").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.prismarine_bricks, "prismarine_bricks").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.dark_prismarine, "dark_prismarine").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.sea_lantern, "sea_lantern").setCreativeTab(CreativeTabs.tabBlock).setLightLevel(1.0F);
GameRegistry.registerBlock(InitBlocks.coarse_dirt, "coarse_dirt").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.red_sandstone, "red_sandstone").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock); GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.spruce_planks, "spruce_planks").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.cherry_planks, "cherry_planks").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.raw_copper_block, "raw_copper_block").setCreativeTab(CreativeTabs.tabBlock); GameRegistry.registerBlock(InitBlocks.raw_copper_block, "raw_copper_block").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.polished_andesite, "polished_andesite").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.polished_diorite, "polished_diorite").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.polished_granite, "polished_granite").setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(InitBlocks.wet_sponge, "wet_sponge").setCreativeTab(CreativeTabs.tabBlock); GameRegistry.registerBlock(InitBlocks.wet_sponge, "wet_sponge").setCreativeTab(CreativeTabs.tabBlock);
//GameRegistry.registerBlock(InitBlocks.slime_block, "slime_block").setCreativeTab(CreativeTabs.tabBlock); //GameRegistry.registerBlock(InitBlocks.Andesite, "andesite").setCreativeTab(CreativeTabs.tabBlock);
} }
@ -72,22 +173,9 @@ public class Register {
GameRegistry.registerBlock(blockNewNewLog2, ItemNewNewLogs2.class, blockNewNewLog2.getUnlocalizedName().substring(5)); GameRegistry.registerBlock(blockNewNewLog2, ItemNewNewLogs2.class, blockNewNewLog2.getUnlocalizedName().substring(5));
} }
public static Block cherryWoodFence;
public static Block spruceWoodFence;
public static void fences() {
cherryWoodFence = new cherryWoodFence(Material.wood)
.setHardness(5F).setResistance(7F).setStepSound(Block.soundTypeWood);
GameRegistry.registerBlock(cherryWoodFence, "cherryWoodFence");
spruceWoodFence = new spruceWoodFence(Material.wood)
.setHardness(5F).setResistance(7F).setStepSound(Block.soundTypeWood);
GameRegistry.registerBlock(spruceWoodFence, "spruceWoodFence");
}
public static BlockRedSandstone red_sandstone; public static BlockRedSandstone red_sandstone;
public static BlockRedSandStoneSlab red_sandstone_slab;
public static BlockRedSandStoneSlab red_sandstone_dbl_slab;
public static void newSandStone() { public static void newSandStone() {
red_sandstone = new BlockRedSandstone(); red_sandstone = new BlockRedSandstone();
@ -105,8 +193,55 @@ public class Register {
red_sandstone_carved.setStepSound(Block.soundTypePiston).setHardness(0.8F); red_sandstone_carved.setStepSound(Block.soundTypePiston).setHardness(0.8F);
IBA_BackBlocks.registerBlockHelper(red_sandstone_carved, "red_sandstone_carved"); IBA_BackBlocks.registerBlockHelper(red_sandstone_carved, "red_sandstone_carved");
BlockRedSandStoneStairs red_sandstone_stairs = new BlockRedSandStoneStairs(red_sandstone,0);
IBA_BackBlocks.registerBlockHelper(red_sandstone_stairs, "red_sandstone_stairs");
GameRegistry.addRecipe(new ItemStack(red_sandstone_stairs,4), "s ", "ss ","sss",
's', new ItemStack(red_sandstone));
GameRegistry.addRecipe(new ItemStack(red_sandstone_stairs,4), " s", " ss","sss",
's', new ItemStack(red_sandstone));
red_sandstone_slab = new BlockRedSandStoneSlab(false);
red_sandstone_dbl_slab = new BlockRedSandStoneSlab(true);
// s.setBlockName(name).setBlockTextureName(TEXTURE_LOCATION + name).setCreativeTab(tabMimic);
red_sandstone_dbl_slab.setHardness(0.8F);
red_sandstone_slab.setHardness(0.8F).setBlockName("red_sandstone_slab");
red_sandstone_slab.setCreativeTab(CreativeTabs.tabBlock);
GameRegistry.registerBlock(red_sandstone_slab,
ItemSlabRedSandstone.class, "red_sandstone_slab");
GameRegistry.registerBlock(red_sandstone_dbl_slab,
ItemSlabRedSandstone.class, "red_sandstone_dbl_slab");//TODO: PICK BLOCK DOES TSONE LAB
//undo the chiselled back to the 2 slabs
GameRegistry.addSmelting(new ItemStack(red_sandstone_carved), new ItemStack(red_sandstone_slab,2), 0);
GameRegistry.addRecipe(new ItemStack(red_sandstone_slab,6), " ", " ","sss",
's', new ItemStack(red_sandstone));
GameRegistry.addRecipe(new ItemStack(red_sandstone_slab,6), "sss", " "," ",
's', new ItemStack(red_sandstone));
GameRegistry.addRecipe(new ItemStack(red_sandstone_slab,6), " ", "sss"," ",
's', new ItemStack(red_sandstone));
GameRegistry.addRecipe(new ItemStack(red_sandstone_carved), "s ", "s ",
's', new ItemStack(red_sandstone_slab));
//uncraft slabs
GameRegistry.addRecipe(new ItemStack(red_sandstone,6), " ", "sss","sss",
's', new ItemStack(red_sandstone_slab));
//uncraft stairs
GameRegistry.addRecipe(new ItemStack(red_sandstone,6), "ss", "ss",
's', new ItemStack(red_sandstone_stairs));
} }
public static void initSlimeBlock() public static void initSlimeBlock()
{ {
BlockSlime slime = new BlockSlime(); BlockSlime slime = new BlockSlime();
@ -119,6 +254,243 @@ public class Register {
GameRegistry.addShapelessRecipe(new ItemStack(Items.slime_ball, 9), slime); GameRegistry.addShapelessRecipe(new ItemStack(Items.slime_ball, 9), slime);
} }
public static void initIronTrapdoor()
{
// Iron Trapdoor, Armor Stand
// is protected again
BlockIronTrapdoor iron_trapdoor = new BlockIronTrapdoor();
IBA_BackBlocks.registerBlockHelper(iron_trapdoor, "iron_trapdoor");
GameRegistry.addRecipe(new ItemStack(iron_trapdoor), "ii", "ii",
'i', Items.iron_ingot);
GameRegistry.addSmelting(new ItemStack(iron_trapdoor), new ItemStack(Items.iron_ingot,4), 0);
}
public static BlockFenceGateSimple acacia_fence_gate;
public static BlockFenceGateSimple spruce_fence_gate;
public static BlockFenceGateSimple birch_fence_gate;
public static BlockFenceGateSimple jungle_fence_gate;
public static BlockFenceGateSimple big_oak_fence_gate;
public static BlockFenceSimple birch_fence;
public static BlockFenceSimple jungle_fence;
public static BlockFenceSimple spruce_fence;
public static BlockFenceSimple big_oak_fence;
public static BlockFenceSimple acacia_fence;
public static void initFencesGates()
{
// 5 fences
birch_fence = new BlockFenceSimple("planks_birch");
IBA_BackBlocks.registerBlockHelper(birch_fence, "birch_fence");
GameRegistry.addRecipe(new ItemStack(birch_fence,3), " ", "lsl", "lsl",
'l', new ItemStack(Blocks.planks,1,reference.planks_birch),
's', Items.stick
);
jungle_fence = new BlockFenceSimple("planks_jungle");
IBA_BackBlocks.registerBlockHelper(jungle_fence, "jungle_fence");
GameRegistry.addRecipe(new ItemStack(jungle_fence,3), " ", "lsl", "lsl",
'l', new ItemStack(Blocks.planks,1,reference.planks_jungle),
's', Items.stick
);
spruce_fence = new BlockFenceSimple("planks_spruce");
IBA_BackBlocks.registerBlockHelper(spruce_fence, "spruce_fence");
GameRegistry.addRecipe(new ItemStack(spruce_fence,3), " ", "lsl", "lsl",
'l', new ItemStack(Blocks.planks,1,reference.planks_spruce),
's', Items.stick
);
big_oak_fence = new BlockFenceSimple("planks_big_oak");
IBA_BackBlocks.registerBlockHelper(big_oak_fence, "big_oak_fence");
GameRegistry.addRecipe(new ItemStack(big_oak_fence,3), " ", "lsl", "lsl",
'l', new ItemStack(Blocks.planks,1,reference.planks_darkoak),
's', Items.stick
);
acacia_fence = new BlockFenceSimple("planks_acacia");
IBA_BackBlocks.registerBlockHelper(acacia_fence, "acacia_fence");
GameRegistry.addRecipe(new ItemStack(acacia_fence,3), " ", "lsl", "lsl",
'l', new ItemStack(Blocks.planks,1,reference.planks_acacia),
's', Items.stick
);
// we inherited from basic fencegate to override getIcon, which was set
// to only plain planks
acacia_fence_gate = new BlockFenceGateSimple();
IBA_BackBlocks.registerBlockHelper(acacia_fence_gate, "acacia_fence_gate");
acacia_fence_gate.setBlockTextureName("planks_acacia");
GameRegistry.addRecipe(new ItemStack(acacia_fence_gate,1), " ", "sls", "sls",
'l', new ItemStack(Blocks.planks,1,reference.planks_acacia),
's', Items.stick
);
spruce_fence_gate = new BlockFenceGateSimple();
IBA_BackBlocks.registerBlockHelper(spruce_fence_gate, "spruce_fence_gate");
spruce_fence_gate.setBlockTextureName("planks_spruce");
GameRegistry.addRecipe(new ItemStack(spruce_fence_gate,1), " ", "sls", "sls",
'l', new ItemStack(Blocks.planks,1,reference.planks_spruce),
's', Items.stick
);
birch_fence_gate = new BlockFenceGateSimple();
IBA_BackBlocks.registerBlockHelper(birch_fence_gate, "birch_fence_gate");
birch_fence_gate.setBlockTextureName("planks_birch");
GameRegistry.addRecipe(new ItemStack(birch_fence_gate,1), " ", "sls", "sls",
'l', new ItemStack(Blocks.planks,1,reference.planks_birch),
's', Items.stick
);
jungle_fence_gate = new BlockFenceGateSimple();
IBA_BackBlocks.registerBlockHelper(jungle_fence_gate, "jungle_fence_gate");
jungle_fence_gate.setBlockTextureName("planks_jungle");
GameRegistry.addRecipe(new ItemStack(jungle_fence_gate,1), " ", "sls", "sls",
'l', new ItemStack(Blocks.planks,1,reference.planks_jungle),
's', Items.stick
);
big_oak_fence_gate = new BlockFenceGateSimple();
IBA_BackBlocks.registerBlockHelper(big_oak_fence_gate, "big_oak_fence_gate");
big_oak_fence_gate.setBlockTextureName("planks_big_oak");
GameRegistry.addRecipe(new ItemStack(big_oak_fence_gate,1), " ", "sls", "sls",
'l', new ItemStack(Blocks.planks,1,reference.planks_darkoak),
's', Items.stick
);
}
public static void initNewStones()
{
BlockSimple diorite = new BlockSimple(Material.rock);
diorite.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(diorite, "diorite");
BlockSimple andesite = new BlockSimple(Material.rock);
andesite.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(andesite, "andesite");
BlockSimple granite = new BlockSimple(Material.rock);
granite.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(granite, "granite");
BlockSimple diorite_smooth = new BlockSimple(Material.rock);
diorite_smooth.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(diorite_smooth, "polished_diorite");
BlockSimple andesite_smooth = new BlockSimple(Material.rock);
andesite_smooth.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(andesite_smooth, "polished_andesite");
BlockSimple granite_smooth = new BlockSimple(Material.rock);
granite_smooth.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(granite_smooth, "polished_granite");
GameRegistry.addRecipe(new ItemStack(diorite_smooth), "pp", "pp", 'p',
diorite);//2quartz,2cobble in diagonal. quartz top right
GameRegistry.addRecipe(new ItemStack(andesite_smooth), "pp", "pp", 'p',
andesite);//1 dio + 1 cobble
GameRegistry.addRecipe(new ItemStack(granite_smooth), "pp", "pp", 'p',
granite);//1diorite+1qutz
GameRegistry.addRecipe(new ItemStack(diorite), "cq", "qc",
'c',Blocks.cobblestone,
'q',Items.quartz);//2quartz,2cobble in diagonal. quartz top right
GameRegistry.addShapelessRecipe(new ItemStack(andesite), diorite,Blocks.cobblestone);
GameRegistry.addShapelessRecipe(new ItemStack(granite), diorite,Items.quartz);
BlockSimple coarse_dirt = new BlockSimple(Material.ground);
coarse_dirt.setHardness(0.5F).setResistance(0.5F).setStepSound(Block.soundTypeGravel).setBlockTextureName("coarse_dirt");;
IBA_BackBlocks.registerBlockHelper(coarse_dirt, "coarse_dirt");
GameRegistry.addRecipe(new ItemStack(coarse_dirt,1,1), "gd", "dg"
,'g', Blocks.gravel
,'d', Blocks.dirt
);
GameRegistry.addRecipe(new ItemStack(coarse_dirt,1,1), "dg", "gd"
,'g', Blocks.gravel
,'d', Blocks.dirt
);
}
public static BlockSimple sea_lantern;
public static Item prismarine_crystals;
public static Item prismarine_shard;
public static void initPrismarine()
{
prismarine_crystals = new Item();
IBA_BackBlocks.registerItemHelper(prismarine_crystals, "prismarine_crystals");
prismarine_shard = new Item();
IBA_BackBlocks.registerItemHelper(prismarine_shard, "prismarine_shard");
BlockSimple prismarine_bricks = new BlockSimple(Material.rock);
prismarine_bricks.setHardness(1.2F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(prismarine_bricks, "prismarine_bricks");
BlockSimple prismarine_dark = new BlockSimple(Material.rock);
prismarine_dark.setHardness(1.5F).setResistance(30.0F).setStepSound(Block.soundTypeStone);
IBA_BackBlocks.registerBlockHelper(prismarine_dark, "dark_prismarine");
BlockSimple prismarine_rough = new BlockSimple(Material.rock);
prismarine_rough.setHardness(1.5F).setResistance(30.0F);
IBA_BackBlocks.registerBlockHelper(prismarine_rough, "prismarine");
sea_lantern = new BlockSimple(Material.glass, prismarine_crystals);
sea_lantern.setHardness(0.3F).setResistance(1.5F).setLightLevel(1.0F);
IBA_BackBlocks.registerBlockHelper(sea_lantern, "sea_lantern");
// recipe time
GameRegistry.addRecipe(new ItemStack(prismarine_rough), "pp", "pp",
'p', prismarine_shard);
GameRegistry.addRecipe(new ItemStack(sea_lantern), "psp", "sss", "psp",
'p', prismarine_shard, 's', prismarine_crystals);
GameRegistry.addRecipe(new ItemStack(prismarine_bricks), "ppp", "ppp",
"ppp", 'p', prismarine_shard);
GameRegistry.addRecipe(new ItemStack(prismarine_dark), "ppp", "pip",
"ppp", 'p', prismarine_shard, 'i', new ItemStack(Items.dye, 1,
reference.dye_incsac));
// no guardians exist yet. so for now just smelt lapis?
GameRegistry.addSmelting(new ItemStack(Items.dye, 1,
reference.dye_lapis), new ItemStack(prismarine_shard, 2), 0);
GameRegistry.addShapelessRecipe(new ItemStack(prismarine_crystals), prismarine_shard,Items.glowstone_dust);
}
public static ItemFood mutton_raw; public static ItemFood mutton_raw;
public static ItemFood mutton_cooked; public static ItemFood mutton_cooked;
@ -140,15 +512,26 @@ public class Register {
public static ItemFood rabbit_cooked; public static ItemFood rabbit_cooked;
public static void initRabbit() public static void initRabbit()
{ {
rabbit_raw = new ItemFood(2, false); rabbit_raw = new ItemFood(3, false);
IBA_BackBlocks.registerItemHelper(rabbit_raw, "rabbit_raw") ; IBA_BackBlocks.registerItemHelper(rabbit_raw, "rabbit_raw") ;
rabbit_cooked = new ItemFood(6, false); rabbit_cooked = new ItemFood(5, false);
IBA_BackBlocks.registerItemHelper(rabbit_cooked, "rabbit_cooked") ; IBA_BackBlocks.registerItemHelper(rabbit_cooked, "rabbit_cooked") ;
GameRegistry.addSmelting(rabbit_raw, new ItemStack(rabbit_cooked, 1), 0); GameRegistry.addSmelting(rabbit_raw, new ItemStack(rabbit_cooked, 1), 0);
} }
public static ItemFood rabbit_stew;
public static void initRabbitStew()
{
rabbit_stew = new ItemFood(10, false);
IBA_BackBlocks.registerItemHelper(rabbit_stew, "rabbit_stew") ;
GameRegistry.addShapelessRecipe(new ItemStack(Register.rabbit_stew), Register.rabbit_cooked,Items.baked_potato,Blocks.brown_mushroom,Items.carrot,Items.bowl);
GameRegistry.addShapelessRecipe(new ItemStack(Register.rabbit_stew), Register.rabbit_cooked,Items.baked_potato,Blocks.red_mushroom,Items.carrot,Items.bowl);
}
} }

View File

@ -0,0 +1,155 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import java.util.Random;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.BlockDoor;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.IconFlipped;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class BlockDoorSimple extends BlockDoor
{
public BlockDoorSimple()
{
super(Material.wood);
//same hardness as vanilla basic door
this.setHardness(3.0F).setStepSound(soundTypeWood);
}
@SideOnly(Side.CLIENT)
private IIcon[] iconsUpper;
@SideOnly(Side.CLIENT)
private IIcon[] iconsLower;
@Override
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister p_149651_1_)
{
this.iconsUpper = new IIcon[2];
this.iconsLower = new IIcon[2];
//"iba_backblocks:" +
this.iconsUpper[0] = p_149651_1_.registerIcon( this.textureName + "_upper");
this.iconsLower[0] = p_149651_1_.registerIcon( this.textureName + "_lower");
//this.field_150017_a[0] = p_149651_1_.registerIcon(this.getTextureName() + "_upper");
// this.field_150016_b[0] = p_149651_1_.registerIcon(this.getTextureName() + "_lower");
this.iconsUpper[1] = new IconFlipped(this.iconsUpper[0], true, false);
this.iconsLower[1] = new IconFlipped(this.iconsLower[0], true, false);
}
private Item dropped;
public void setItemDropped(Item itemDoor)
{
dropped = itemDoor;
}
@Override
public Item getItemDropped(int par1, Random rand, int par2)
{
return dropped;//override this so they dont drop the oak door
}
@Override
@SideOnly(Side.CLIENT)
public Item getItem(World worldObj, int x, int y, int z)
{
return dropped; // so creative mode pick block works
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(int p_149691_1_, int p_149691_2_)
{
return this.iconsLower[0];
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(IBlockAccess p_149673_1_, int p_149673_2_, int p_149673_3_, int p_149673_4_, int p_149673_5_)
{
if (p_149673_5_ != 1 && p_149673_5_ != 0)
{
int i1 = this.func_150012_g(p_149673_1_, p_149673_2_, p_149673_3_, p_149673_4_);
int j1 = i1 & 3;
boolean flag = (i1 & 4) != 0;
boolean flag1 = false;
boolean flag2 = (i1 & 8) != 0;
if (flag)
{
if (j1 == 0 && p_149673_5_ == 2)
{
flag1 = !flag1;
}
else if (j1 == 1 && p_149673_5_ == 5)
{
flag1 = !flag1;
}
else if (j1 == 2 && p_149673_5_ == 3)
{
flag1 = !flag1;
}
else if (j1 == 3 && p_149673_5_ == 4)
{
flag1 = !flag1;
}
}
else
{
if (j1 == 0 && p_149673_5_ == 5)
{
flag1 = !flag1;
}
else if (j1 == 1 && p_149673_5_ == 3)
{
flag1 = !flag1;
}
else if (j1 == 2 && p_149673_5_ == 4)
{
flag1 = !flag1;
}
else if (j1 == 3 && p_149673_5_ == 2)
{
flag1 = !flag1;
}
if ((i1 & 16) != 0)
{
flag1 = !flag1;
}
}
return flag2 ? this.iconsUpper[flag1?1:0] : this.iconsLower[flag1?1:0];
}
else
{
return this.iconsLower[0];
}
}
/*
//todo; override ignore material and just do the real thing
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
{
return (p_149650_1_ & 8) != 0 ? null : (this.blockMaterial == Material.iron ? Items.iron_door : Items.wooden_door);
}
@SideOnly(Side.CLIENT)
public Item getItem(World p_149694_1_, int p_149694_2_, int p_149694_3_, int p_149694_4_)
{
return this.blockMaterial == Material.iron ? Items.iron_door : Items.wooden_door;
}
*/
}

View File

@ -0,0 +1,15 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import net.minecraft.block.BlockTrapDoor;
import net.minecraft.block.material.Material;
public class BlockIronTrapdoor extends BlockTrapDoor
{
public BlockIronTrapdoor()
{
super(Material.iron);
this.disableStats();
this.setHardness(3.0F).setStepSound(soundTypeMetal);
}
}

View File

@ -0,0 +1,69 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import java.util.List;
import java.util.Random;
import xyz.ibatv.iba_backblocks.Register.Register;
import xyz.ibatv.iba_backblocks.reference;
import xyz.ibatv.iba_backblocks.IBA_BackBlocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.BlockSlab;
import net.minecraft.block.BlockStoneSlab;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
public class BlockRedSandStoneSlab extends BlockSlab
{
private IIcon icon;
public BlockRedSandStoneSlab(boolean b)
{
super(b, Blocks.sandstone.getMaterial());
this.setLightOpacity(0);
}
@Override
@SideOnly(Side.CLIENT)
public void getSubBlocks(Item item, CreativeTabs tabs, List list)
{
list.add(new ItemStack(item, 1, 0));
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(int side, int meta)
{
return Register.red_sandstone.getBlockTextureFromSide(side) ;
}
@Override
public Item getItemDropped(int i, Random rand, int m)
{
return Item.getItemFromBlock(this);
}
@Override
protected ItemStack createStackedBlock(int meta)
{
return new ItemStack(Item.getItemFromBlock(this), 2, 0);
}
@Override
@SideOnly(Side.CLIENT)
public Item getItem(World worldObj, int x, int y, int z)
{
return Item.getItemFromBlock(this); // so creative mode pick block works
}
@Override
public String func_150002_b(int par1) //getFullSlabName
{
return super.getUnlocalizedName();
}
}

View File

@ -0,0 +1,23 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockSandStone;
import net.minecraft.block.BlockStairs;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import java.util.List;
public class BlockRedSandStoneStairs extends BlockStairs
{
public BlockRedSandStoneStairs(Block b, int o)
{
super(b, o);
this.setLightOpacity(0);
}
}

View File

@ -0,0 +1,60 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import java.util.ArrayList;
import java.util.Random;
import xyz.ibatv.iba_backblocks.IBA_BackBlocks;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class BlockSimple extends Block
{
Item itemDropped = null;
public BlockSimple(Material m)
{
super(m);
this.setCreativeTab(CreativeTabs.tabBlock).setStepSound(Block.soundTypeStone);
}
public BlockSimple(Material m, Item d)
{
super(m);
itemDropped = d;
}
@Override
public boolean canSilkHarvest()
{
return true;
}
@Override
public int quantityDroppedWithBonus(int fortuneLevel, Random r)
{
int min = 2;
int extra = 1;//possibly add one extra
//2-3 normal
//fortune 3 means 2-5
//so fortune must 1 or 2 means 2-4
if(fortuneLevel > 1 && fortuneLevel < 3) extra = 2;//so now its 2-4
if(fortuneLevel >= 3) extra = 3;//now its 2-5
//the plus 1 is becuase nextInt is exclusive
return min + r.nextInt(extra+1);//so range is [min,extra]
}
public Item getItemDropped(int i, Random rand, int m)
{
if(itemDropped == null)
return Item.getItemFromBlock(this);
else
return itemDropped;
}
}

View File

@ -0,0 +1,64 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import net.minecraft.item.ItemDoor;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemDoor;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
public class ItemDoorSimple extends ItemDoor
{
public Block doorBlock;
public ItemDoorSimple(Block block)
{
super(Material.wood);
this.doorBlock = block;
this.maxStackSize = 64;
this.setCreativeTab(CreativeTabs.tabRedstone);//.setTextureName(texture);
}
@Override
public void registerIcons(IIconRegister iconRegister)
{
itemIcon = iconRegister.registerIcon(this.iconString);//removed "samspowerups:" +
}
public boolean onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, float par8, float par9, float par10)
{
if (par7 != 1)
{
return false;
}
else
{
++par5;
Block block = this.doorBlock;
if (par2EntityPlayer.canPlayerEdit(par4, par5, par6, par7, par1ItemStack)
&& par2EntityPlayer.canPlayerEdit(par4, par5 + 1, par6, par7, par1ItemStack))
{
if (!block.canPlaceBlockAt(par3World, par4, par5, par6))
{
return false;
}
else
{
int i1 = MathHelper.floor_double((double) ((par2EntityPlayer.rotationYaw + 180.0F) * 4.0F / 360.0F) - 0.5D) & 3;
ItemDoor.placeDoorBlock(par3World, par4, par5, par6, i1, block);
--par1ItemStack.stackSize;
return true;
}
}
else
{
return false;
}
}
}
}

View File

@ -0,0 +1,207 @@
package xyz.ibatv.iba_backblocks.blocks.mc18;
import xyz.ibatv.iba_backblocks.Register.Register;
import xyz.ibatv.iba_backblocks.IBA_BackBlocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockSlab;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
public class ItemSlabRedSandstone extends ItemBlock
{
private final boolean field_150948_b;
private final BlockSlab blockSingle;
private final BlockSlab blockDouble;
// private static final String __OBFID = "CL_00000071";
public ItemSlabRedSandstone(Block block)
{
super(block);
this.blockSingle = Register.red_sandstone_slab;
this.blockDouble = Register.red_sandstone_dbl_slab;
this.field_150948_b = false;
this.setMaxDamage(0);
this.setHasSubtypes(true);
}
/**
* Gets an icon index based on an item's damage value
*/
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int p_77617_1_)
{
return Block.getBlockFromItem(this).getIcon(2, p_77617_1_);
}
/**
* Returns the metadata of the block which this Item (ItemBlock) can place
*/
public int getMetadata(int m)
{
return m;
}
/**
* Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have
* different names based on their damage or NBT.
*/
public String getUnlocalizedName(ItemStack is)
{
return this.blockSingle.func_150002_b(is.getItemDamage());
}
/**
* Callback for item usage. If the item does something special on right clicking, he will have one of those. Return
* True if something happen and false if it don't. This is for ITEMS, not BLOCKS
*/
public boolean onItemUse(ItemStack is, EntityPlayer player, World world, int x, int y, int z, int m, float par1Float, float par2Float, float par3Float)
{
if (this.field_150948_b)
{
return super.onItemUse(is, player, world, x, y, z, m, par1Float, par2Float, par3Float);
}
else if (is.stackSize == 0)
{
return false;
}
else if (!player.canPlayerEdit(x, y, z, m, is))
{
return false;
}
else
{
Block block = world.getBlock(x, y, z);
int i1 = world.getBlockMetadata(x, y, z);
int j1 = i1 & 7;
boolean flag = (i1 & 8) != 0;
if ((m == 1 && !flag || m == 0 && flag) && block == this.blockSingle && j1 == is.getItemDamage())
{
if (world.checkNoEntityCollision(this.blockDouble.getCollisionBoundingBoxFromPool(world, x, y, z)) && world.setBlock(x, y, z, this.blockDouble, j1, 3))
{
world.playSoundEffect((double)((float)x + 0.5F), (double)((float)y + 0.5F), (double)((float)z + 0.5F), this.blockDouble.stepSound.func_150496_b(), (this.blockDouble.stepSound.getVolume() + 1.0F) / 2.0F, this.blockDouble.stepSound.getPitch() * 0.8F);
--is.stackSize;
}
return true;
}
else
{
return this.func_150946_a(is, player, world, x, y, z, m) ? true : super.onItemUse(is, player, world, x, y, z, m, par1Float, par2Float, par3Float);
}
}
}
@SideOnly(Side.CLIENT)
public boolean func_150936_a(World world, int x, int y, int z, int f, EntityPlayer player, ItemStack itemStack)
{
int i1 = x;
int j1 = y;
int k1 = z;
Block block = world.getBlock(x, y, z);
int l1 = world.getBlockMetadata(x, y, z);
int i2 = l1 & 7;
boolean flag = (l1 & 8) != 0;
if ((f == 1 && !flag || f == 0 && flag) && block == this.blockSingle && i2 == itemStack.getItemDamage())
{
return true;
}
else
{
if (f == 0)
{
--y;
}
if (f == 1)
{
++y;
}
if (f == 2)
{
--z;
}
if (f == 3)
{
++z;
}
if (f == 4)
{
--x;
}
if (f == 5)
{
++x;
}
Block block1 = world.getBlock(x, y, z);
int j2 = world.getBlockMetadata(x, y, z);
i2 = j2 & 7;
return block1 == this.blockSingle && i2 == itemStack.getItemDamage() ? true : super.func_150936_a(world, i1, j1, k1, f, player, itemStack);
}
}
private boolean func_150946_a(ItemStack itemStack, EntityPlayer player, World world, int x, int y, int z, int f)
{
if (f == 0)
{
--y;
}
if (f == 1)
{
++y;
}
if (f == 2)
{
--z;
}
if (f == 3)
{
++z;
}
if (f == 4)
{
--x;
}
if (f == 5)
{
++x;
}
Block block = world.getBlock(x, y, z);
int i1 = world.getBlockMetadata(x, y, z);
int j1 = i1 & 7;
if (block == this.blockSingle && j1 == itemStack.getItemDamage())
{
if (world.checkNoEntityCollision(this.blockDouble.getCollisionBoundingBoxFromPool(world, x, y, z)) && world.setBlock(x, y, z, this.blockDouble, j1, 3))
{
world.playSoundEffect((double)((float)x + 0.5F), (double)((float)y + 0.5F), (double)((float)z + 0.5F), this.blockDouble.stepSound.func_150496_b(), (this.blockDouble.stepSound.getVolume() + 1.0F) / 2.0F, this.blockDouble.stepSound.getPitch() * 0.8F);
--itemStack.stackSize;
}
return true;
}
else
{
return false;
}
}
}

View File

@ -0,0 +1,40 @@
package xyz.ibatv.iba_backblocks.blocks.mc18.fence;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockFenceGate;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
public class BlockFenceGateSimple extends BlockFenceGate
{
private IIcon icon;
public BlockFenceGateSimple()
{
super();
this.setHardness(2.0F).setResistance(5.0F).setStepSound(Block.soundTypeWood);
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(int side, int meta)
{
return this.icon;//Blocks.planks.getBlockTextureFromSide(side);
}
@Override
public boolean canPlaceBlockAt(World w, int x, int y, int z)
{
return true;
}
@Override
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister p_149651_1_)
{
this.icon = p_149651_1_.registerIcon( this.getTextureName());
}
}

View File

@ -0,0 +1,44 @@
package xyz.ibatv.iba_backblocks.blocks.mc18.fence;
import net.minecraft.world.World;
import xyz.ibatv.iba_backblocks.Register.Register;
import net.minecraft.block.Block;
import net.minecraft.block.BlockFence;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.world.IBlockAccess;
public class BlockFenceSimple extends BlockFence
{
public BlockFenceSimple(String name)
{
super(name, Material.wood);
this.setStepSound(Block.soundTypeWood);
this.setHardness(2.0F).setResistance(5.0F);//same as vanilla fence
}
@Override
public boolean canConnectFenceTo(IBlockAccess ib, int x, int y, int z)
{
Block block = ib.getBlock(x, y, z);
//if its NOT a fence or fence gate, do one extra check
return block == this || block == Blocks.fence || block == Blocks.fence_gate ||
block == Register.acacia_fence ||
block == Register.birch_fence ||
block == Register.jungle_fence ||
block == Register.spruce_fence ||
block == Register.big_oak_fence ||
block == Register.acacia_fence_gate ||
block == Register.birch_fence_gate ||
block == Register.jungle_fence_gate ||
block == Register.spruce_fence_gate ||
block == Register.big_oak_fence_gate || (block.getMaterial().isOpaque() && block.renderAsNormalBlock() && block.getMaterial() != Material.gourd);//it was for sure a fence or fgate, so we went true right away
}
@Override
public boolean canPlaceTorchOnTop(World world, int x, int y, int z) {
return true;
}
}

View File

@ -8,16 +8,6 @@ import xyz.ibatv.iba_backblocks.blocks.mc18.base.BaseBlocks;
public class InitBlocks public class InitBlocks
{ {
public static final BaseBlocks oreCopper = new Ores("copper_ore", Material.rock, 3F, 5F), public static final BaseBlocks oreCopper = new Ores("copper_ore", Material.rock, 3F, 5F),
copperBlock = new Ores("copper_block", Material.iron, 3F, 5F), Andesite = new Ores("andesite", Material.rock, 3F, 5F), copperBlock = new Ores("copper_block", Material.iron, 3F, 5F), cherry_planks = new Ores("cherry_planks", Material.wood, 3F, 5F),
Diorite = new Ores("diorite", Material.rock, 3F, 5F), Granite = new Ores("granite", Material.rock, 3F, 5F), raw_copper_block = new Ores("raw_copper_block", Material.rock, 3F, 5F), wet_sponge = new Ores("wet_sponge", Material.rock, 3F, 5F);
Prismarine = new Ores("prismarine", Material.rock, 3F, 5F), prismarine_bricks = new Ores("prismarine_bricks", Material.rock, 3F, 5F),
dark_prismarine = new Ores("dark_prismarine", Material.rock, 3F, 5F), sea_lantern = new Ores("sea_lantern", Material.rock, 3F, 5F),
coarse_dirt = new Ores("coarse_dirt", Material.ground, 3F, 5F), cherry_planks = new Ores("cherry_planks", Material.wood, 3F, 5F),
raw_copper_block = new Ores("raw_copper_block", Material.rock, 3F, 5F), polished_andesite = new Ores("polished_andesite", Material.rock, 3F, 5F),
polished_diorite = new Ores("polished_diorite", Material.rock, 3F, 5F), polished_granite = new Ores("polished_granite", Material.rock, 3F, 5F),
wet_sponge = new Ores("wet_sponge", Material.rock, 3F, 5F), spruce_planks = new Ores("spruce_planks", Material.wood, 3F, 5F);
//polished_granite = new Ores("polished_granite", Material.rock, 3F, 5F);
//slime_block = new Ores("slime_block", Material.rock, 3F, 5F),
} }

View File

@ -0,0 +1,6 @@
package xyz.ibatv.iba_backblocks.items;
import net.minecraft.item.Item;
public class ItemRabbitFoot extends Item {
}

View File

@ -0,0 +1,6 @@
package xyz.ibatv.iba_backblocks.items;
import net.minecraft.item.Item;
public class ItemRabbitHide extends Item {
}

View File

@ -10,24 +10,33 @@ public class Minecraft1_8_Items {
public static Item itemRawCopper; public static Item itemRawCopper;
static Item itemPrismarineCrystals; //public static Item itemPrismarineCrystals;
static Item itemPrismarineShard; //public static Item itemPrismarineShard;
public static Item itemRabbitHide;
public static Item itemRabbitFoot;
public static void items() { public static void items() {
itemCopperIngot = new ItemCopperIngot().setUnlocalizedName("copper_ingot").setTextureName("iba_backblocks:copper_ingot");
itemRawCopper = new ItemRawCopper().setUnlocalizedName("raw_copper").setTextureName("iba_backblocks:raw_copper");
itemPrismarineCrystals = new ItemPrismarineCrystals().setUnlocalizedName("prismarine_crystals").setTextureName("iba_backblocks:prismarine_crystals"); GameRegistry.registerItem(itemCopperIngot, itemCopperIngot.getUnlocalizedName().substring(5));
IBA_BackBlocks.registerItemHelper(itemPrismarineCrystals, "prismarine_crystals"); GameRegistry.registerItem(itemRawCopper, itemRawCopper.getUnlocalizedName().substring(5));
itemPrismarineShard = new ItemPrismarineShard().setUnlocalizedName("prismarine_shard").setTextureName("iba_backblocks:prismarine_shard");
IBA_BackBlocks.registerItemHelper(itemPrismarineShard, "prismarine_shard");
itemCopperIngot = new ItemCopperIngot().setUnlocalizedName("copper_ingot").setTextureName("iba_backblocks:copper_ingot"); //itemPrismarineCrystals = new ItemPrismarineCrystals().setUnlocalizedName("prismarine_crystals").setTextureName("iba_backblocks:prismarine_crystals");
itemRawCopper = new ItemRawCopper().setUnlocalizedName("raw_copper").setTextureName("iba_backblocks:raw_copper"); //IBA_BackBlocks.registerItemHelper(itemPrismarineCrystals, "prismarine_crystals");
GameRegistry.registerItem(itemCopperIngot, itemCopperIngot.getUnlocalizedName().substring(5));
GameRegistry.registerItem(itemRawCopper, itemRawCopper.getUnlocalizedName().substring(5)); //itemPrismarineShard = new ItemPrismarineShard().setUnlocalizedName("prismarine_shard").setTextureName("iba_backblocks:prismarine_shard");
//IBA_BackBlocks.registerItemHelper(itemPrismarineShard, "prismarine_shard");
itemRabbitHide = new ItemRabbitHide().setUnlocalizedName("rabbit_hide").setTextureName("iba_backblocks:rabbit_hide");
IBA_BackBlocks.registerItemHelper(itemRabbitHide, "rabbit_hide");
itemRabbitFoot = new ItemRabbitFoot().setUnlocalizedName("rabbit_foot").setTextureName("iba_backblocks:rabbit_foot");
IBA_BackBlocks.registerItemHelper(itemRabbitFoot, "rabbit_foot");
} }
} }

View File

@ -0,0 +1,214 @@
package xyz.ibatv.iba_backblocks;
import java.util.ArrayList;
import net.minecraft.entity.passive.EntityBat;
import net.minecraft.entity.passive.EntityChicken;
import net.minecraft.entity.passive.EntityCow;
import net.minecraft.entity.passive.EntityMooshroom;
import net.minecraft.entity.passive.EntityPig;
import net.minecraft.entity.passive.EntitySheep;
public class reference
{
public static final int TICKS_PER_SEC = 20;
public static final int face_bottom = 0;
public static final int face_top = 1;
public static final int face_north = 2;
public static final int face_south = 3;
public static final int face_west = 4;
public static final int face_east = 5;
// Items.skull
public static final int skull_skeleton = 0;
public static final int skull_wither = 1;
public static final int skull_zombie = 2;
public static final int skull_player = 3;
public static final int skull_creeper = 4;
public static final int dye_incsac = 0;
public static final int dye_red = 1;
public static final int dye_cactus = 2;
public static final int dye_cocoa = 3;
public static final int dye_lapis = 4;
public static final int dye_purple = 5;
public static final int dye_cyan = 6;
public static final int dye_lightgray = 7;
public static final int dye_gray = 8;
public static final int dye_pink = 9;
public static final int dye_lime = 10;
public static final int dye_dandelion = 11;
public static final int dye_lightblue = 12;
public static final int dye_magenta = 13;
public static final int dye_orange = 14;
public static final int dye_bonemeal = 15;
public static final int CHEST_RARITY_COMMON = 100;
public static final int CHEST_RARITY_REDSTONE = 50;
public static final int CHEST_RARITY_RECORD = 5;
public static final int CHEST_RARITY_GAPPLE = 1;
//import net.minecraftforge.common.ChestGenHooks;
public static String chest_mineshaftCorridor = "mineshaftCorridor";
public static String chest_pyramidJungleChest= "pyramidJungleChest";
public static String chest_pyramidDesertyChest= "pyramidDesertyChest";
public static String chest_pyramidJungleDispenser= "pyramidJungleDispenser";
public static String chest_strongholdCorridor= "strongholdCorridor";
public static String chest_strongholdLibrary= "strongholdLibrary";
public static String chest_strongholdCrossing= "strongholdCrossing";
public static String chest_villageBlacksmith= "villageBlacksmith";
public static String chest_bonusChest= "bonusChest";
public static String chest_dungeonChest= "dungeonChest";
public static long ticksPerDay = 24000 ;
//TODO:
// player inv slots
//zero o 8 is the hotbar
//9 to 35 is the main inventory
//100 to 103 is the armor
public static final int stone_slab_stone = 0;
public static final int stone_slab_sandstone = 1;
public static final int stone_slab_oldwood = 2;
public static final int stone_slab_cobble = 3;
public static final int stone_slab_brickred = 4;
public static final int stone_slab_stonebrick = 5;
public static final int stone_slab_netehrbrick = 6;
public static final int stone_slab_quartz = 7;
public static final int stonebrick_stone = 0;
public static final int stonebrick_mossy = 1;
public static final int stonebrick_cracked = 2;
public static final int stonebrick_chisel = 3;
public static final int planks_oak = 0;
public static final int planks_spruce = 1;
public static final int planks_birch = 2;
public static final int planks_jungle = 3;
public static final int planks_acacia = 4;
public static final int planks_darkoak = 5;
public static final int log_oak = 0;
public static final int log_spruce = 1;
public static final int log_birch = 2;
public static final int log_jungle = 3;
public static final int log2_acacia = 0;
public static final int log2_darkoak = 5;
public static final int sapling_oak = 0;
public static final int sapling_spruce = 1;
public static final int sapling_birch = 2;
public static final int sapling_jungle = 3;
public static final int sapling_acacia = 4;
public static final int sapling_darkoak = 5;
public static final int quartz_block = 0;
public static final int quartz_chiselled = 1;
public static final int quartz_pillar = 2;
public static final int cobblestone_wall_plain = 0;
public static final int cobblestone_wall_mossy = 1;
public static final int potion_SPEED = 1;
public static final int potion_SLOWNESS = 2;
public static final int potion_HASTE = 3;
public static final int potion_FATIGUE = 4;
public static final int potion_STRENGTH = 5;
public static final int potion_instanthealth = 6;
public static final int potion_instantdamage = 7;//both would not work in runestones
public static final int potion_JUMP = 8;
public static final int potion_NAUSEA = 9;
public static final int potion_REGEN = 10;
public static final int potion_RESISTANCE = 11;
public static final int potion_FIRERESIST = 12;
public static final int potion_WATER_BREATHING = 13;
public static final int potion_INVIS = 14;
public static final int potion_BLINDNESS = 15;
public static final int potion_NIGHT_VISION = 16;
public static final int potion_HUNGER = 17;
public static final int potion_WEAKNESS = 18;
public static final int potion_POISON = 19;
public static final int potion_WITHER = 20;
public static final int potion_HEALTH_BOOST = 21;
public static final int potion_absorption = 22;// is absorption; like 21 but they vanish like gold apple hearts
public static final int potion_SATURATION = 23;//fills hunger
public static final int entity_cow = 92;
public static final int entity_pig = 90;
public static final int entity_sheep = 91;
public static final int entity_chicken = 93;
public static final int entity_mooshroom = 96;
public static final int entity_bat = 65;
public class PlayerInventory
{
public static final int ROWS = 3;
public static final int COLS = 9;
public static final int SIZE = ROWS*COLS;
public static final int START = 9;//top left
public static final int END = START + SIZE;
}
// public static final String gamerule_commandBlockOutput = "commandBlockOutput";
public class FurnaceBurnTime // inner class
{
public static final int Sticks = 100;
public static final int WoodenSlabs = 150;
public static final int WoodenTools = 200;
public static final int WoodStuff = 300;
public static final int Coal = 1600;
public static final int LavaBucket = 20000;
public static final int Sapling = 100;
public static final int BlazeRod = 2400;
}
public static class gamerule
{
public final static String commandBlockOutput = "commandBlockOutput";
public static final String doDaylightCycle = "doDaylightCycle";
public static final String doFireTick = "doFireTick";
public static final String doMobLoot = "doMobLoot";
public static final String doMobSpawning = "doMobSpawning";
public static final String doTileDrops = "doTileDrops";
public static final String keepInventory = "keepInventory";
public static final String mobGriefing = "mobGriefing";
public static final String naturalRegeneration = "naturalRegeneration";
}
//public static struct tallgrass{
public static class grassplant
{
public final static int deadbush=0;
public final static int grass=1;
public final static int fern=2;
}
//is struct
public static class tallgrass
{
public final static int sunflower = 0;
public final static int lilac=1;
public final static int grass=2;
public final static int fern=3;
public final static int rosebush=4;
public final static int peony=5;
}
}//ends class reference

View File

@ -1,55 +1,56 @@
item.copper_ingot.name=Copper Ingot
item.raw_copper.name=Raw Copper
//Blocks //Blocks
//Ores / Materials
tile.iba_backblocks:copper_ore.name=Copper Ore tile.iba_backblocks:copper_ore.name=Copper Ore
tile.iba_backblocks:copper_block.name=Copper Block tile.iba_backblocks:copper_block.name=Copper Block
tile.iba_backblocks:andesite.name=Andesite
tile.iba_backblocks:diorite.name=Diorite
tile.iba_backblocks:granite.name=Granite
tile.iba_backblocks:prismarine.name=Prismarine
tile.iba_backblocks:prismarine_bricks.name=Prismarine Bricks
tile.iba_backblocks:dark_prismarine.name=Dark Prismarine
tile.iba_backblocks:sea_lantern.name=Sea Lantern
tile.iba_backblocks:coarse_dirt.name=Coarse Dirt
tile.iba_backblocks:red_sandstone.name=Red Sandstone
tile.iba_backblocks:polished_andesite.name=Polished Andesite
tile.iba_backblocks:polished_granite.name=Polished Granite
tile.iba_backblocks:polished_diorite.name=Polished Diorite
tile.iba_backblocks:wet_sponge.name=Wet Sponge tile.iba_backblocks:wet_sponge.name=Wet Sponge
tile.iba_backblocks:raw_copper_block.name=Raw Copper Block tile.iba_backblocks:raw_copper_block.name=Raw Copper Block
tile.red_sandstone.name=Red Sandstone tile.red_sandstone.name=Red Sandstone
tile.red_sandstone_smooth.name=Cut Red Sandstone tile.red_sandstone_smooth.name=Cut Red Sandstone
tile.red_sandstone_carved.name=Chiseled Red Sandstone tile.red_sandstone_carved.name=Chiseled Red Sandstone
tile.red_sandstone_slab.name=Red Sandstone Slab
tile.red_sandstone_stairs.name=Red Sandstone Stairs
tile.slime_block.name=Slime Block tile.slime_block.name=Slime Block
tile.iron_trapdoor.name=Iron Trapdoor
tile.andesite.name=Andesite
tile.diorite.name=Diorite
tile.granite.name=Granite
tile.prismarine.name=Prismarine
tile.prismarine_bricks.name=Prismarine Bricks
tile.dark_prismarine.name=Dark Prismarine
tile.sea_lantern.name=Sea Lantern
tile.coarse_dirt.name=Coarse Dirt
tile.polished_andesite.name=Polished Andesite
tile.polished_granite.name=Polished Granite
tile.polished_diorite.name=Polished Diorite
//Wood Planks
tile.iba_backblocks:cherry_planks.name=Cherry Planks
tile.iba_backblocks:spruce_planks.name=Spruce Planks
//Fences //Fences
tile.cherryWoodFence.name=Cherry Fence tile.acacia_fence.name=Acacia Fence
tile.spruceWoodFence.name=Spruce Fence tile.birch_fence.name=Birch Fence
tile.big_oak_fence.name=Dark Oak Fence
tile.spruce_fence.name=Spruce Fence
tile.jungle_fence.name=Jungle Fence
//Fence Gates
tile.acacia_fence_gate.name=Acacia Fence Gate
tile.birch_fence_gate.name=Birch Fence Gate
tile.big_oak_fence_gate.name=Dark Oak Fence Gate
tile.spruce_fence_gate.name=Spruce Fence Gate
tile.jungle_fence_gate.name=Jungle Fence Gate
//Wood //Wood
//Stripped 1 //Stripped 1
tile.stripped.oak.name=Stripped Oak Log tile.stripped.oak.name=Stripped Oak Log
tile.stripped.spruce.name=Stripped Spruce Log tile.stripped.spruce.name=Stripped Spruce Log
@ -79,14 +80,27 @@ tile.log2.cherry.name=Cherry Log
tile.log3.bamboo.name=Block of Bamboo tile.log3.bamboo.name=Block of Bamboo
tile.log3.pale_oak.name=Pale Oak tile.log3.pale_oak.name=Pale Oak
//Wood Planks
tile.iba_backblocks:cherry_planks.name=Cherry Planks
// Items //
item.rabbit_hide.name=Rabbit Hide
item.rabbit_foot.name=Rabbit Foot
//Items
item.rabbit_raw.name=Raw Rabbit item.rabbit_raw.name=Raw Rabbit
item.rabbit_cooked.name=Cooked Rabbit item.rabbit_cooked.name=Cooked Rabbit
item.rabbit_stew.name=Rabbit Stew
item.mutton_raw.name=Raw Mutton item.mutton_raw.name=Raw Mutton
item.mutton_cooked.name=Cooked Mutton item.mutton_cooked.name=Cooked Mutton
item.copper_ingot.name=Copper Ingot
item.raw_copper.name=Raw Copper
item.prismarine_crystals.name=Prismarine Crystals
item.prismarine_shard.name=Prismarine Shard
item.door_dark_oak_item.name=Dark Oak Door
item.door_jungle_item.name=Jungle Door
item.door_birch_item.name=Birch Door
item.door_acacia_item.name=Acacia Door
item.door_spruce_item.name=Spruce Door

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 666 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 707 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 639 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 626 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 472 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 417 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 398 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 135 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B