change slabs

This commit is contained in:
Sen 2025-06-30 13:10:18 +02:00
parent ea2d11ae3a
commit b2d3f5a641
Signed by: sen
GPG key ID: 3AC50A6F47D1B722
13 changed files with 245 additions and 571 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 252 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 B

View file

@ -8,14 +8,13 @@ import common.block.Material;
import common.collect.Lists; import common.collect.Lists;
import common.entity.Entity; import common.entity.Entity;
import common.entity.types.EntityLiving; import common.entity.types.EntityLiving;
import common.init.BlockRegistry;
import common.item.CheatTab; import common.item.CheatTab;
import common.item.Item; import common.item.Item;
import common.item.ItemStack;
import common.item.block.ItemSlab; import common.item.block.ItemSlab;
import common.model.Model; import common.model.Model;
import common.model.ModelProvider; import common.model.ModelProvider;
import common.properties.Property; import common.properties.Property;
import common.properties.PropertyBool;
import common.util.BlockPos; import common.util.BlockPos;
import common.util.BoundingBox; import common.util.BoundingBox;
import common.util.Facing; import common.util.Facing;
@ -24,331 +23,139 @@ import common.world.IWorldAccess;
import common.world.State; import common.world.State;
import common.world.World; import common.world.World;
public class BlockSlab extends Block implements Directional public class BlockSlab extends Block implements Directional {
{ public static final List<BlockSlab> SLABS = Lists.newArrayList();
public static final PropertyBool DOUBLE = PropertyBool.create("double");
public static final PropertyBool SEAMLESS = PropertyBool.create("seamless");
public static final List<BlockSlab> SLABS = Lists.newArrayList();
private final String textureTop;
private final String textureBottom;
private final String textureSide;
public BlockSlab(Material materialIn, String texture)
{
this(materialIn, texture, texture, texture);
}
public BlockSlab(Material materialIn, String side, String bottom, String top)
{
super(materialIn);
this.setDefaultState(this.getBaseState().withProperty(FACING, Facing.DOWN).withProperty(DOUBLE, false)
.withProperty(SEAMLESS, false));
this.setTab(materialIn == Material.WOOD ? CheatTab.WOOD : CheatTab.BLOCKS);
// this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 0.5F); private final Block base;
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F); private final State baseState;
private final String textureTop;
private final String textureBottom;
this.setLightOpacity(255); public BlockSlab(Block base) {
this.textureTop = top; this(base, null, null);
this.textureBottom = bottom; }
this.textureSide = side;
SLABS.add(this);
}
protected Property[] getProperties() public BlockSlab(Block base, String bottom, String top) {
{ super(base.getMaterial());
return new Property[] {FACING, DOUBLE, SEAMLESS}; this.setDefaultState(this.getBaseState().withProperty(FACING, Facing.DOWN));
} this.setTab(base.getMaterial() == Material.WOOD ? CheatTab.WOOD : CheatTab.BLOCKS);
public boolean canSilkHarvest() this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
{
return false;
}
public void dropBlockAsItemWithChance(World worldIn, BlockPos pos, State state, float chance, int fortune)
{
if (!worldIn.client)
{
int i = state.getBlock() == this && state.getValue(DOUBLE) ? 2 : 1;
for (int j = 0; j < i; ++j) this.setLightOpacity(255);
{ this.base = base;
if (worldIn.rand.floatv() <= chance) this.baseState = base.getState();
{ this.textureTop = top;
Item item = this.getItemDropped(state, worldIn.rand, fortune); this.textureBottom = bottom;
SLABS.add(this);
}
if (item != null) protected Property[] getProperties() {
{ return new Property[] {FACING};
spawnAsEntity(worldIn, pos, new ItemStack(item)); }
}
}
}
}
}
public State onBlockPlaced(World worldIn, BlockPos pos, Facing facing, float hitX, float hitY, float hitZ, EntityLiving placer)
{
State iblockstate = this.getState().withProperty(FACING, Facing.DOWN);
return facing != Facing.DOWN && (facing == Facing.UP || (double)hitY <= 0.5D) ? iblockstate :
iblockstate.withProperty(FACING, Facing.UP);
}
public void setBlockBoundsBasedOnState(IWorldAccess worldIn, BlockPos pos)
{
// if (this.isDouble())
// {
// this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
// }
// else
// {
State iblockstate = worldIn.getState(pos);
if (iblockstate.getBlock() == this) public boolean canSilkHarvest() {
{ return false;
if(iblockstate.getValue(DOUBLE)) { }
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
return;
}
switch(iblockstate.getValue(FACING)) {
case EAST:
this.setBlockBounds(0.5F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
break;
case WEST:
this.setBlockBounds(0.0F, 0.0F, 0.0F, 0.5F, 1.0F, 1.0F);
break;
case SOUTH:
this.setBlockBounds(0.0F, 0.0F, 0.5F, 1.0F, 1.0F, 1.0F);
break;
case NORTH:
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 0.5F);
break;
case UP:
this.setBlockBounds(0.0F, 0.5F, 0.0F, 1.0F, 1.0F, 1.0F);
break;
case DOWN:
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
break;
}
// if (iblockstate.getValue(HALF) == BlockSlab.EnumBlockHalf.TOP)
// {
//
// }
// else
// {
//
// }
}
// }
}
// public void setBlockBoundsBasedOnState(IWorldAccess worldIn, BlockPos pos) public State onBlockPlaced(World worldIn, BlockPos pos, Facing facing, float hitX, float hitY, float hitZ, EntityLiving placer) {
// { State iblockstate = this.getState().withProperty(FACING, Facing.DOWN);
// IBlockState iblockstate = worldIn.getBlockState(pos); return facing != Facing.DOWN && (facing == Facing.UP || (double)hitY <= 0.5D) ? iblockstate : iblockstate.withProperty(FACING, Facing.UP);
// }
// if (iblockstate.getBlock() == this)
// {
// }
// }
public void setBlockBoundsForItemRender()
{
// this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 0.5F);
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
public void addCollisionBoxesToList(World worldIn, BlockPos pos, State state, BoundingBox mask, List<BoundingBox> list, Entity collidingEntity)
{
this.setBlockBoundsBasedOnState(worldIn, pos);
super.addCollisionBoxesToList(worldIn, pos, state, mask, list, collidingEntity);
}
public boolean isOpaqueCube()
{
return false;
}
// public IBlockState onBlockPlaced(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer)
// {
// return super.onBlockPlaced(worldIn, pos, facing, hitX, hitY, hitZ, meta, placer).withProperty(FACING, placer.getHorizontalFacing() /* .getOpposite() */);
// }
public boolean isFullCube() public void setBlockBoundsBasedOnState(IWorldAccess worldIn, BlockPos pos) {
{ State iblockstate = worldIn.getState(pos);
return false;
}
protected static boolean isSlab(Block blockIn) if(iblockstate.getBlock() == this) {
{ switch(iblockstate.getValue(FACING)) {
return blockIn instanceof BlockSlab; case EAST:
} this.setBlockBounds(0.5F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
break;
case WEST:
this.setBlockBounds(0.0F, 0.0F, 0.0F, 0.5F, 1.0F, 1.0F);
break;
case SOUTH:
this.setBlockBounds(0.0F, 0.0F, 0.5F, 1.0F, 1.0F, 1.0F);
break;
case NORTH:
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 0.5F);
break;
case UP:
this.setBlockBounds(0.0F, 0.5F, 0.0F, 1.0F, 1.0F, 1.0F);
break;
case DOWN:
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
break;
}
}
}
public boolean shouldSideBeRendered(IWorldAccess worldIn, BlockPos pos, Facing side) public void setBlockBoundsForItemRender() {
{ this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
State iblockstate = worldIn.getState(pos); }
if (iblockstate.getBlock() == this && iblockstate.getValue(DOUBLE))
{
return super.shouldSideBeRendered(worldIn, pos, side);
}
if(iblockstate.getBlock() == this && iblockstate.getValue(FACING).getAxis() == Axis.Y) {
if (side != Facing.UP && side != Facing.DOWN && !super.shouldSideBeRendered(worldIn, pos, side))
{
return false;
}
else
{
BlockPos blockpos = pos.offset(side.getOpposite());
// IBlockState iblockstate = worldIn.getBlockState(pos);
State iblockstate1 = worldIn.getState(blockpos);
if(isSlab(iblockstate1.getBlock()) && iblockstate.getValue(FACING).getAxis() == Axis.Y)
return true;
boolean flag = isSlab(iblockstate.getBlock()) && iblockstate.getValue(FACING) == Facing.UP;
boolean flag1 = isSlab(iblockstate1.getBlock()) && iblockstate1.getValue(FACING) == Facing.UP;
return flag1 ? (side == Facing.DOWN ? true : (side == Facing.UP && super.shouldSideBeRendered(worldIn, pos, side) ? true : !isSlab(iblockstate.getBlock()) || !flag)) : (side == Facing.UP ? true : (side == Facing.DOWN && super.shouldSideBeRendered(worldIn, pos, side) ? true : !isSlab(iblockstate.getBlock()) || flag));
}
}
if (side == Facing.UP || side == Facing.DOWN)
{
return super.shouldSideBeRendered(worldIn, pos, side);
}
else
{
return (iblockstate.getBlock() == this && iblockstate.getValue(FACING) == side.getOpposite()) || super.shouldSideBeRendered(worldIn, pos, side);
}
}
// public boolean shouldSideBeRendered(IWorldAccess worldIn, BlockPos pos, EnumFacing side) public void addCollisionBoxesToList(World worldIn, BlockPos pos, State state, BoundingBox mask, List<BoundingBox> list, Entity collidingEntity) {
// { this.setBlockBoundsBasedOnState(worldIn, pos);
// super.addCollisionBoxesToList(worldIn, pos, state, mask, list, collidingEntity);
// }
// }
// public abstract String getUnlocalizedName(int meta);
// public int getDamageValue(World worldIn, BlockPos pos)
// {
// return super.getDamageValue(worldIn, pos) & 7;
// }
// public abstract IProperty<?> getVariantProperty(); public boolean isOpaqueCube() {
// return false;
// public abstract Object getVariant(ItemStack stack); }
public Model getModel(ModelProvider provider, String name, State state) { public boolean isFullCube() {
if(state.getValue(DOUBLE)) { return false;
return provider.getModel(state.getValue(SEAMLESS) ? this.textureTop : this.textureSide) }
.add().nswe().d(state.getValue(SEAMLESS) ? this.textureTop : this.textureBottom).u(this.textureTop);
} private static boolean isSlab(Block blockIn) {
else { return blockIn instanceof BlockSlab;
if(state.getValue(FACING).getAxis() != Axis.Y) }
return provider.getModel(this.textureSide).vslab(state.getValue(FACING), this.textureBottom, this.textureTop);
else public boolean shouldSideBeRendered(IWorldAccess worldIn, BlockPos pos, Facing side) {
return provider.getModel(this.textureSide).slab(state.getValue(FACING) == Facing.UP, this.textureBottom, State iblockstate = worldIn.getState(pos);
this.textureTop); if(iblockstate.getBlock() == this && iblockstate.getValue(FACING).getAxis() == Axis.Y) {
} if(side != Facing.UP && side != Facing.DOWN && !super.shouldSideBeRendered(worldIn, pos, side)) {
} return false;
}
else {
BlockPos blockpos = pos.offset(side.getOpposite());
State iblockstate1 = worldIn.getState(blockpos);
if(isSlab(iblockstate1.getBlock()) && iblockstate.getValue(FACING).getAxis() == Axis.Y)
return true;
boolean flag = isSlab(iblockstate.getBlock()) && iblockstate.getValue(FACING) == Facing.UP;
boolean flag1 = isSlab(iblockstate1.getBlock()) && iblockstate1.getValue(FACING) == Facing.UP;
return flag1
? (side == Facing.DOWN ? true
: (side == Facing.UP && super.shouldSideBeRendered(worldIn, pos, side) ? true
: !isSlab(iblockstate.getBlock()) || !flag))
: (side == Facing.UP ? true
: (side == Facing.DOWN && super.shouldSideBeRendered(worldIn, pos, side) ? true
: !isSlab(iblockstate.getBlock()) || flag));
}
}
if(side == Facing.UP || side == Facing.DOWN) {
return super.shouldSideBeRendered(worldIn, pos, side);
}
else {
return (iblockstate.getBlock() == this && iblockstate.getValue(FACING) == side.getOpposite())
|| super.shouldSideBeRendered(worldIn, pos, side);
}
}
public Model getModel(ModelProvider provider, String name, State state) {
String primary = this.base.getModel(provider, BlockRegistry.getName(this.base), this.baseState).getPrimary();
if(state.getValue(FACING).getAxis() != Axis.Y)
return provider.getModel(primary).vslab(state.getValue(FACING), this.textureBottom != null ? this.textureBottom : primary, this.textureTop != null ? this.textureTop : primary);
else
return provider.getModel(primary).slab(state.getValue(FACING) == Facing.UP, this.textureBottom != null ? this.textureBottom : primary, this.textureTop != null ? this.textureTop : primary);
}
public boolean getSumBrightness() { public boolean getSumBrightness() {
return true; return true;
} }
protected Item getItemToRegister() { protected Item getItemToRegister() {
return new ItemSlab(this); return new ItemSlab(this);
} }
/*
public Model getModel(String name, IBlockState state) {
if(state.getValue(VARIANT) == EnumType.STONE)
return state.getValue(SEAMLESS) ? provider.getModel("double_stone_top").add().all() :
provider.getModel("stone_slab_side").add().nswe().du("double_stone_top");
else if(state.getValue(VARIANT) == EnumType.QUARTZ)
return provider.getModel("quartz_block_side").add().nswe().d("quartz_block_bottom").u("quartz_top");
else if(state.getValue(VARIANT) == EnumType.SAND)
return provider.getModel("sandstone_normal").add().nswe().d("sandstone_bottom").u("sandstone_all");
else
return provider.getModel(getTexture(state.getValue(VARIANT))).add().all();
}
public Model getModel(String name, IBlockState state) {
if(state.getValue(VARIANT) == EnumType.STONE)
return provider.getModel("stone_slab_side").slab(state.getValue(HALF) == EnumBlockHalf.TOP, "double_stone_top");
else if(state.getValue(VARIANT) == EnumType.QUARTZ)
return provider.getModel("quartz_block_side").slab(state.getValue(HALF) == EnumBlockHalf.TOP, "quartz_block_bottom",
"quartz_top");
else if(state.getValue(VARIANT) == EnumType.SAND)
return provider.getModel("sandstone_normal").slab(state.getValue(HALF) == EnumBlockHalf.TOP, "sandstone_bottom",
"sandstone_all");
else
return provider.getModel(getTexture(state.getValue(VARIANT))).slab(state.getValue(HALF) == EnumBlockHalf.TOP);
}
public Model getModel(String name, IBlockState state) {
return provider.getModel(state.getValue(VARIANT).getName() + "_planks").slab(state.getValue(HALF) == EnumBlockHalf.TOP);
}
public Model getModel(String name, IBlockState state) {
return provider.getModel(state.getValue(VARIANT).getName() + "_planks").add().all();
}
protected static String getTexture(BlockStoneSlab.EnumType type) {
switch(type) {
case BRICK:
return "brick_block";
case SMOOTHBRICK:
return "stonebrick_default";
case WOOD:
return "oak_planks";
default:
return type.getName();
}
}
private static String getTexture(BlockVertStoneSlab.EnumType type) {
switch(type) {
case WOOD:
return "oak_planks";
default:
return type.getName();
}
}
public Model getModel(String name, IBlockState state) {
if(state.getValue(VARIANT) == EnumType.STONE)
return provider.getModel("stone_slab_side").vslab(state.getValue(FACING), "double_stone_top");
else if(state.getValue(VARIANT) == EnumType.SAND)
return provider.getModel("sandstone_normal").vslab(state.getValue(FACING), "sandstone_bottom",
"sandstone_all");
else
return provider.getModel(getTexture(state.getValue(VARIANT))).vslab(state.getValue(FACING));
}
private static String getTexture(BlockVertStoneSlab2.EnumType type) {
switch(type) {
case BRICK:
return "brick_block";
case SMOOTHBRICK:
return "stonebrick_default";
default:
return type.getName();
}
}
public Model getModel(String name, IBlockState state) {
if(state.getValue(VARIANT) == EnumType.QUARTZ)
return provider.getModel("quartz_block_side").vslab(state.getValue(FACING), "quartz_block_bottom",
"quartz_top");
else
return provider.getModel(getTexture(state.getValue(VARIANT))).vslab(state.getValue(FACING));
}
public Model getModel(String name, IBlockState state) {
return provider.getModel(state.getValue(VARIANT).getName() + "_planks").vslab(state.getValue(FACING));
}
public Model getModel(String name, IBlockState state) {
return provider.getModel(state.getValue(VARIANT).getName() + "_planks").vslab(state.getValue(FACING));
}
*/
} }

View file

@ -788,8 +788,7 @@ public class BlockStairs extends Block implements Rotatable
} }
public Model getModel(ModelProvider provider, String name, State state) { public Model getModel(ModelProvider provider, String name, State state) {
String primary = this.modelBlock.getModel(provider, BlockRegistry.getName(this.modelBlock).toString(), this.modelState) String primary = this.modelBlock.getModel(provider, BlockRegistry.getName(this.modelBlock), this.modelState).getPrimary();
.getPrimary();
return provider.getModel(primary) return provider.getModel(primary)
.stairs(state.getValue(HALF) == EnumHalf.TOP, state.getValue(SHAPE) == EnumShape.INNER_RIGHT || .stairs(state.getValue(HALF) == EnumHalf.TOP, state.getValue(SHAPE) == EnumShape.INNER_RIGHT ||
state.getValue(SHAPE) == EnumShape.INNER_LEFT, state.getValue(SHAPE) == EnumShape.OUTER_RIGHT || state.getValue(SHAPE) == EnumShape.INNER_LEFT, state.getValue(SHAPE) == EnumShape.OUTER_RIGHT ||

View file

@ -495,18 +495,17 @@ public abstract class BlockRegistry {
register("stone_slab", (new BlockSlab(stone))
register("stone_slab", (new BlockSlab(Material.SOLID, "stone_slab_side", "double_stone_top", "double_stone_top"))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Steinstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Steinstufe"));
register("stone_stairs", (new BlockStairs(stone.getState())).setDisplay("Steintreppe")); register("stone_stairs", (new BlockStairs(stone.getState())).setDisplay("Steintreppe"));
register("cobblestone_slab", (new BlockSlab(Material.SOLID, "cobblestone")) register("cobblestone_slab", (new BlockSlab(cobblestone))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Bruchsteinstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Bruchsteinstufe"));
register("cobblestone_stairs", (new BlockStairs(cobblestone.getState())).setDisplay("Bruchsteintreppe")); register("cobblestone_stairs", (new BlockStairs(cobblestone.getState())).setDisplay("Bruchsteintreppe"));
register("cobblestone_wall", (new BlockWall(cobblestone, "cobblestone")).setDisplay("Bruchsteinmauer")); register("cobblestone_wall", (new BlockWall(cobblestone, "cobblestone")).setDisplay("Bruchsteinmauer"));
register("mossy_cobblestone_wall", (new BlockWall(mossyCobblestone, "mossy_cobblestone")).setDisplay("Bemooste Bruchsteinmauer")); register("mossy_cobblestone_wall", (new BlockWall(mossyCobblestone, "mossy_cobblestone")).setDisplay("Bemooste Bruchsteinmauer"));
register("sandstone_slab", (new BlockSlab(Material.SOLID, "sandstone_normal", "sandstone_bottom", "sandstone_all")) register("sandstone_slab", (new BlockSlab(sandstone, "sandstone_bottom", "sandstone_all"))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Sandsteinstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Sandsteinstufe"));
register("sandstone_stairs", (new BlockStairs(sandstone.getState(), register("sandstone_stairs", (new BlockStairs(sandstone.getState(),
"sandstone_bottom", "sandstone_all")) // fix type "sandstone_bottom", "sandstone_all")) // fix type
@ -516,7 +515,7 @@ public abstract class BlockRegistry {
register("quartz_block", quartz); register("quartz_block", quartz);
register("quartz_ornaments", (new BlockQuartz(false, true)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Gemeißelter Quarzblock")); register("quartz_ornaments", (new BlockQuartz(false, true)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Gemeißelter Quarzblock"));
register("quartz_pillar", (new BlockQuartzPillar(false)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Quarzsäule")); register("quartz_pillar", (new BlockQuartzPillar(false)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Quarzsäule"));
register("quartz_slab", (new BlockSlab(Material.SOLID, "quartz_block_side", "quartz_block_bottom", "quartz_top")) register("quartz_slab", (new BlockSlab(quartz, "quartz_block_bottom", "quartz_top"))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Quarzstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Quarzstufe"));
register("quartz_stairs", (new BlockStairs(quartz.getState(), register("quartz_stairs", (new BlockStairs(quartz.getState(),
"quartz_block_bottom", "quartz_top")) "quartz_block_bottom", "quartz_top"))
@ -529,7 +528,7 @@ public abstract class BlockRegistry {
Block brick = (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE) Block brick = (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE)
.setDisplay("Ziegelsteine").setTab(CheatTab.BLOCKS); .setDisplay("Ziegelsteine").setTab(CheatTab.BLOCKS);
register("brick_block", brick); register("brick_block", brick);
register("brick_slab", (new BlockSlab(Material.SOLID, "brick_block")) register("brick_slab", (new BlockSlab(brick))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Ziegelstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Ziegelstufe"));
register("brick_stairs", (new BlockStairs(brick.getState())).setDisplay("Ziegeltreppe")); register("brick_stairs", (new BlockStairs(brick.getState())).setDisplay("Ziegeltreppe"));
@ -542,7 +541,7 @@ public abstract class BlockRegistry {
.setDisplay("Rissige Steinziegel").setTab(CheatTab.BLOCKS)); .setDisplay("Rissige Steinziegel").setTab(CheatTab.BLOCKS));
register("carved_stonebrick", (new Block(Material.SOLID)).setHardness(1.5F).setResistance(10.0F).setStepSound(SoundType.STONE) register("carved_stonebrick", (new Block(Material.SOLID)).setHardness(1.5F).setResistance(10.0F).setStepSound(SoundType.STONE)
.setDisplay("Gemeißelte Steinziegel").setTab(CheatTab.BLOCKS)); .setDisplay("Gemeißelte Steinziegel").setTab(CheatTab.BLOCKS));
register("stonebrick_slab", (new BlockSlab(Material.SOLID, "stonebrick")) register("stonebrick_slab", (new BlockSlab(stonebrick))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Steinziegelstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Steinziegelstufe"));
register("stonebrick_stairs", (new BlockStairs(stonebrick.getState())) register("stonebrick_stairs", (new BlockStairs(stonebrick.getState()))
.setDisplay("Steinziegeltreppe")); .setDisplay("Steinziegeltreppe"));
@ -551,7 +550,7 @@ public abstract class BlockRegistry {
Block bloodBrick = (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE) Block bloodBrick = (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE)
.setDisplay("Blutrote Ziegel").setTab(CheatTab.BLOCKS); .setDisplay("Blutrote Ziegel").setTab(CheatTab.BLOCKS);
register("blood_brick", bloodBrick); register("blood_brick", bloodBrick);
register("blood_brick_slab", (new BlockSlab(Material.SOLID, "blood_brick")) register("blood_brick_slab", (new BlockSlab(bloodBrick))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Blutrote Ziegelstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Blutrote Ziegelstufe"));
register("blood_brick_fence", (new BlockFence(Material.SOLID, "blood_brick")).setHardness(2.0F).setResistance(10.0F) register("blood_brick_fence", (new BlockFence(Material.SOLID, "blood_brick")).setHardness(2.0F).setResistance(10.0F)
.setStepSound(SoundType.STONE).setDisplay("Blutroter Ziegelzaun")); .setStepSound(SoundType.STONE).setDisplay("Blutroter Ziegelzaun"));
@ -561,7 +560,7 @@ public abstract class BlockRegistry {
Block blackBrick = (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE) Block blackBrick = (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE)
.setDisplay("Schwarze Ziegel").setTab(CheatTab.BLOCKS); .setDisplay("Schwarze Ziegel").setTab(CheatTab.BLOCKS);
register("black_brick", blackBrick); register("black_brick", blackBrick);
register("black_brick_slab", (new BlockSlab(Material.SOLID, "black_brick")) register("black_brick_slab", (new BlockSlab(blackBrick))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Schwarze Ziegelstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Schwarze Ziegelstufe"));
register("black_brick_stairs", (new BlockStairs(blackBrick.getState())).setDisplay("Schwarze Ziegeltreppe")); register("black_brick_stairs", (new BlockStairs(blackBrick.getState())).setDisplay("Schwarze Ziegeltreppe"));
register("black_brick_fence", (new BlockFence(Material.SOLID, "black_brick")).setHardness(2.0F).setResistance(10.0F) register("black_brick_fence", (new BlockFence(Material.SOLID, "black_brick")).setHardness(2.0F).setResistance(10.0F)
@ -571,12 +570,18 @@ public abstract class BlockRegistry {
register("black_quartz_block", bquartz); register("black_quartz_block", bquartz);
register("black_quartz_ornaments", (new BlockQuartz(true, true)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Schwarzer gemeißelter Quarzblock")); register("black_quartz_ornaments", (new BlockQuartz(true, true)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Schwarzer gemeißelter Quarzblock"));
register("black_quartz_pillar", (new BlockQuartzPillar(true)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Schwarze Quarzsäule")); register("black_quartz_pillar", (new BlockQuartzPillar(true)).setStepSound(SoundType.STONE).setHardness(0.8F).setDisplay("Schwarze Quarzsäule"));
register("black_quartz_slab", (new BlockSlab(Material.SOLID, "black_quartz_block_side", "black_quartz_block_bottom", "black_quartz_top")) register("black_quartz_slab", (new BlockSlab(bquartz, "black_quartz_block_bottom", "black_quartz_top"))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Schwarze Quarzstufe")); .setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Schwarze Quarzstufe"));
register("black_quartz_stairs", (new BlockStairs(bquartz.getState(), register("black_quartz_stairs", (new BlockStairs(bquartz.getState(),
"black_quartz_block_bottom", "black_quartz_top")) "black_quartz_block_bottom", "black_quartz_top"))
.setDisplay("Schwarze Quarztreppe")); .setDisplay("Schwarze Quarztreppe"));
Block concrete = (new Block(Material.SOLID)).setHardness(1.5F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Beton").setTab(CheatTab.BLOCKS);
register("concrete", concrete);
register("concrete_slab", (new BlockSlab(concrete))
.setHardness(2.0F).setResistance(10.0F).setStepSound(SoundType.STONE).setDisplay("Betonstufe"));
register("concrete_stairs", (new BlockStairs(concrete.getState())).setDisplay("Betontreppe"));
for(DecoType deco : DecoType.values()) { for(DecoType deco : DecoType.values()) {
register(deco.name, (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F) register(deco.name, (new Block(Material.SOLID)).setHardness(2.0F).setResistance(10.0F)
.setStepSound(SoundType.STONE).setDisplay(deco.display).setTab(CheatTab.BLOCKS)); .setStepSound(SoundType.STONE).setDisplay(deco.display).setTab(CheatTab.BLOCKS));
@ -592,7 +597,7 @@ public abstract class BlockRegistry {
register(wood.getName() + "_planks", planks); register(wood.getName() + "_planks", planks);
register(wood.getName() + "_stairs", (new BlockStairs(planks.getState())) register(wood.getName() + "_stairs", (new BlockStairs(planks.getState()))
.setDisplay(wood.getDisplay() + "holztreppe").setFlammable(5, 20)); .setDisplay(wood.getDisplay() + "holztreppe").setFlammable(5, 20));
register(wood.getName() + "_slab", (new BlockSlab(Material.WOOD, wood.getName() + "_planks")) register(wood.getName() + "_slab", (new BlockSlab(planks))
.setHardness(2.0F).setResistance(5.0F).setStepSound(SoundType.WOOD).setDisplay(wood.getDisplay() + "holzstufe").setFlammable(5, 20)); .setHardness(2.0F).setResistance(5.0F).setStepSound(SoundType.WOOD).setDisplay(wood.getDisplay() + "holzstufe").setFlammable(5, 20));
register(wood.getName() + "_fence", (new BlockFence(Material.WOOD, wood.getName() + "_planks")) register(wood.getName() + "_fence", (new BlockFence(Material.WOOD, wood.getName() + "_planks"))
.setHardness(2.0F).setResistance(5.0F).setStepSound(SoundType.WOOD).setDisplay(wood.getDisplay() + "holzzaun").setFlammable(5, 20)); .setHardness(2.0F).setResistance(5.0F).setStepSound(SoundType.WOOD).setDisplay(wood.getDisplay() + "holzzaun").setFlammable(5, 20));

View file

@ -578,6 +578,9 @@ public abstract class Blocks {
public static final BlockWool yellow_wool = get("yellow_wool"); public static final BlockWool yellow_wool = get("yellow_wool");
public static final Block zinc_block = get("zinc_block"); public static final Block zinc_block = get("zinc_block");
public static final BlockOre zinc_ore = get("zinc_ore"); public static final BlockOre zinc_ore = get("zinc_ore");
public static final Block concrete = get("concrete");
public static final BlockSlab concrete_slab = get("concrete_slab");
public static final BlockStairs concrete_stairs = get("concrete_stairs");
private static <T extends Block> T get(String id) { private static <T extends Block> T get(String id) {
T block = (T)BlockRegistry.byNameExact(id); T block = (T)BlockRegistry.byNameExact(id);

View file

@ -957,6 +957,9 @@ public abstract class Items {
public static final ItemFishFood cooked_salmon = get("cooked_salmon"); public static final ItemFishFood cooked_salmon = get("cooked_salmon");
public static final ItemFishFood clownfish = get("clownfish"); public static final ItemFishFood clownfish = get("clownfish");
public static final ItemFishFood pufferfish = get("pufferfish"); public static final ItemFishFood pufferfish = get("pufferfish");
public static final ItemBlock concrete = get("concrete");
public static final ItemSlab concrete_slab = get("concrete_slab");
public static final ItemBlock concrete_stairs = get("concrete_stairs");
private static <T extends Item> T get(String id) { private static <T extends Item> T get(String id) {
T item = (T)ItemRegistry.byName(id); T item = (T)ItemRegistry.byName(id);

View file

@ -9,176 +9,35 @@ import common.util.Facing;
import common.world.State; import common.world.State;
import common.world.World; import common.world.World;
public class ItemSlab extends ItemBlock public class ItemSlab extends ItemBlock {
{ private final BlockSlab slab;
private final BlockSlab slab;
public ItemSlab(BlockSlab slab) public ItemSlab(BlockSlab slab) {
{ super(slab);
super(slab); this.slab = slab;
this.slab = slab; }
}
// /** public boolean onItemUse(ItemStack stack, EntityNPC playerIn, World worldIn, BlockPos pos, Facing side, float hitX, float hitY, float hitZ) {
// * Converts the given ItemStack damage value into a metadata value to be placed in the world when this Item is return stack.size != 0 && playerIn.canPlayerEdit(pos.offset(side), side, stack) &&
// * placed as a Block (mostly used with ItemBlocks). (this.tryVerticalPlace(stack, playerIn, worldIn, pos, side, hitX, hitY, hitZ) || super.onItemUse(stack, playerIn, worldIn, pos, side, hitX, hitY, hitZ));
// */ }
// public int getMetadata(int damage)
// {
// return damage;
// }
// /** private boolean tryVerticalPlace(ItemStack stack, EntityNPC playerIn, World worldIn, BlockPos pos, Facing side, float hitX, float hitY, float hitZ) {
// * Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have if(hitY >= 0.34f && hitY <= 0.66f) {
// * different names based on their damage or NBT. State state = worldIn.getState(pos);
// */ Block block = state.getBlock();
// public String getUnlocalizedName(ItemStack stack) if(!block.isReplaceable(worldIn, pos))
// { pos = pos.offset(side);
// return this.slab.getUnlocalizedName(stack.getMetadata()); if(worldIn.canBlockBePlaced(this.slab, pos, false, side, null, stack)) {
// } State place = this.slab.getState().withProperty(BlockSlab.FACING, playerIn.getHorizontalFacing());
if(worldIn.setState(pos, place, 3)) {
/** worldIn.playSound(this.slab.sound.getPlaceSound(), (double)((float)pos.getX() + 0.5F), (double)((float)pos.getY() + 0.5F),
* Called when a Block is right-clicked with this Item (double)((float)pos.getZ() + 0.5F), 1.0F);
*/ --stack.size;
public boolean onItemUse(ItemStack stack, EntityNPC playerIn, World worldIn, BlockPos pos, Facing side, float hitX, float hitY, float hitZ) }
{ return true;
if (stack.size == 0) }
{ }
return false; return false;
} }
else if (!playerIn.canPlayerEdit(pos.offset(side), side, stack))
{
return false;
}
else
{
// Object object = this.slab.getVariant(stack);
State iblockstate = worldIn.getState(pos);
if (iblockstate.getBlock() == this.slab)
{
// IProperty iproperty = this.slab.getVariantProperty();
// Comparable comparable = iblockstate.getValue(iproperty);
Facing blockslab$enumblockhalf = iblockstate.getValue(BlockSlab.FACING);
if ((side == Facing.UP && blockslab$enumblockhalf == Facing.DOWN || side == Facing.DOWN && blockslab$enumblockhalf == Facing.UP) && !iblockstate.getValue(BlockSlab.DOUBLE))
{
State iblockstate1 = this.slab.getState().withProperty(BlockSlab.DOUBLE, true);
if (worldIn.checkNoEntityCollision(this.slab.getCollisionBoundingBox(worldIn, pos, iblockstate1)) && worldIn.setState(pos, iblockstate1, 3))
{
worldIn.playSound(this.slab.sound.getPlaceSound(), (double)((float)pos.getX() + 0.5F), (double)((float)pos.getY() + 0.5F), (double)((float)pos.getZ() + 0.5F), 1.0F);
--stack.size;
}
return true;
}
}
return this.tryPlace(stack, worldIn, pos.offset(side)) ? true : (this.tryVerticalPlace(stack, playerIn, worldIn, pos, side, hitX, hitY, hitZ) ? true : super.onItemUse(stack, playerIn, worldIn, pos, side, hitX, hitY, hitZ));
}
}
public boolean canPlaceBlockOnSide(World worldIn, BlockPos pos, Facing side, EntityNPC player, ItemStack stack)
{
BlockPos blockpos = pos;
// IProperty iproperty = this.slab.getVariantProperty();
// Object object = this.slab.getVariant(stack);
State iblockstate = worldIn.getState(pos);
if (iblockstate.getBlock() == this.slab && !iblockstate.getValue(BlockSlab.DOUBLE))
{
boolean up = iblockstate.getValue(BlockSlab.FACING) == Facing.UP;
if ((side == Facing.UP && !up || side == Facing.DOWN && up)) // && object == iblockstate.getValue(iproperty))
{
return true;
}
}
pos = pos.offset(side);
State iblockstate1 = worldIn.getState(pos);
return iblockstate1.getBlock() == this.slab && !iblockstate1.getValue(BlockSlab.DOUBLE) ? true : super.canPlaceBlockOnSide(worldIn, blockpos, side, player, stack);
}
// private boolean tryPlaceNormal(ItemStack stack, EntityNPC playerIn, World worldIn, BlockPos pos, EnumFacing side, float hitX, float hitY, float hitZ) {
// if (worldIn.canBlockBePlaced(this.block, pos, false, side, (Entity)null, stack))
// {
// int i = this.getMetadata(stack.getMetadata());
// IBlockState iblockstate1 = this.block.onBlockPlaced(worldIn, pos, side, hitX, hitY, hitZ, i, playerIn);
//
// if (worldIn.setBlockState(pos, iblockstate1, 3))
// {
// iblockstate1 = worldIn.getBlockState(pos);
//
// if (iblockstate1.getBlock() == this.block)
// {
// setTileEntityNBT(worldIn, playerIn, pos, stack);
// this.block.onBlockPlacedBy(worldIn, pos, iblockstate1, playerIn, stack);
// }
//
// worldIn.playSound(this.block.stepSound.getPlaceSound(), (double)((float)pos.getX() + 0.5F), (double)((float)pos.getY() + 0.5F), (double)((float)pos.getZ() + 0.5F), (this.block.stepSound.getVolume() + 1.0F) / 2.0F, this.block.stepSound.getFrequency() * 0.8F);
// --stack.stackSize;
// }
//
// return true;
// }
//
// return false;
// }
private boolean tryPlace(ItemStack stack, World worldIn, BlockPos pos)
{
State iblockstate = worldIn.getState(pos);
if (iblockstate.getBlock() == this.slab)
{
// Comparable comparable = iblockstate.getValue(this.slab.getVariantProperty());
if (!iblockstate.getValue(BlockSlab.DOUBLE))
{
State iblockstate1 = this.slab.getState().withProperty(BlockSlab.DOUBLE, true);
if (worldIn.checkNoEntityCollision(this.slab.getCollisionBoundingBox(worldIn, pos, iblockstate1)) && worldIn.setState(pos, iblockstate1, 3))
{
worldIn.playSound(this.slab.sound.getPlaceSound(), (double)((float)pos.getX() + 0.5F), (double)((float)pos.getY() + 0.5F), (double)((float)pos.getZ() + 0.5F), 1.0F);
--stack.size;
}
return true;
}
}
return false;
}
private boolean tryVerticalPlace(ItemStack stack, EntityNPC playerIn, World worldIn, BlockPos pos, Facing side, float hitX, float hitY, float hitZ) {
if(hitY >= 0.34f && hitY <= 0.66f) {
State iblockstate = worldIn.getState(pos);
Block block = iblockstate.getBlock();
if (!block.isReplaceable(worldIn, pos))
{
pos = pos.offset(side);
}
// BlockVerticalSlab vslab = (stack.getMetadata() & 7) < 4 ? this.verticalSlab1 : this.verticalSlab2;
if (worldIn.canBlockBePlaced(this.slab, pos, false, side, null, stack))
{
// int i = this.getMetadata(stack.getMetadata());
State iblockstate1 = this.slab.getState().withProperty(BlockSlab.FACING, playerIn.getHorizontalFacing()); // .onBlockPlaced(worldIn, pos, side, hitX, hitY, hitZ, i, playerIn);
if (worldIn.setState(pos, iblockstate1, 3))
{
worldIn.playSound(this.slab.sound.getPlaceSound(), (double)((float)pos.getX() + 0.5F), (double)((float)pos.getY() + 0.5F), (double)((float)pos.getZ() + 0.5F), 1.0F);
--stack.size;
}
return true;
}
}
return false;
}
} }

View file

@ -100,7 +100,7 @@ public abstract class World implements IWorldAccess {
Block block = state.getBlock(); Block block = state.getBlock();
return block.getMaterial().isOpaque() && block.isFullCube() ? true return block.getMaterial().isOpaque() && block.isFullCube() ? true
: (block instanceof BlockStairs ? state.getValue(BlockStairs.HALF) == BlockStairs.EnumHalf.TOP : (block instanceof BlockStairs ? state.getValue(BlockStairs.HALF) == BlockStairs.EnumHalf.TOP
: (block instanceof BlockSlab ? (state.getValue(BlockSlab.DOUBLE) || state.getValue(BlockSlab.FACING) == Facing.UP) : (block instanceof BlockSlab ? state.getValue(BlockSlab.FACING) == Facing.UP
: (block instanceof BlockHopper ? true : (block instanceof BlockHopper ? true
: (block instanceof BlockSnow ? ((Integer)state.getValue(BlockSnow.LAYERS)).intValue() == 7 : (block instanceof BlockSnow ? ((Integer)state.getValue(BlockSnow.LAYERS)).intValue() == 7
: false)))); : false))));

View file

@ -602,57 +602,57 @@ public abstract class Converter {
mapBlock(Blocks.red_mushroom, 40); mapBlock(Blocks.red_mushroom, 40);
mapBlock(Blocks.gold_block, 41); mapBlock(Blocks.gold_block, 41);
mapBlock(Blocks.iron_block, 42); mapBlock(Blocks.iron_block, 42);
mapBlock(Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.concrete,
43); 43);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.sandstone,
43, 1); 43, 1);
mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.oak_planks,
43, 2); 43, 2);
mapBlock(Blocks.cobblestone_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.cobblestone,
43, 3); 43, 3);
mapBlock(Blocks.brick_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.brick_block,
43, 4); 43, 4);
mapBlock(Blocks.stonebrick_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.stonebrick,
43, 5); 43, 5);
mapBlock(Blocks.blood_brick_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.blood_brick,
43, 6); 43, 6);
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.quartz_block,
43, 7); 43, 7);
mapBlock(Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, true), mapBlock(Blocks.concrete,
43, 8); 43, 8);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, true), mapBlock(Blocks.sandstone,
43, 9); 43, 9);
mapBlock(Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.concrete_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44); 44);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 1); 44, 1);
mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 2); 44, 2);
mapBlock(Blocks.cobblestone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.cobblestone_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 3); 44, 3);
mapBlock(Blocks.brick_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.brick_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 4); 44, 4);
mapBlock(Blocks.stonebrick_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.stonebrick_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 5); 44, 5);
mapBlock(Blocks.blood_brick_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.blood_brick_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 6); 44, 6);
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
44, 7); 44, 7);
mapBlock(Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.concrete_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 8); 44, 8);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 9); 44, 9);
mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 10); 44, 10);
mapBlock(Blocks.cobblestone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.cobblestone_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 11); 44, 11);
mapBlock(Blocks.brick_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.brick_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 12); 44, 12);
mapBlock(Blocks.stonebrick_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.stonebrick_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 13); 44, 13);
mapBlock(Blocks.blood_brick_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.blood_brick_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 14); 44, 14);
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
44, 15); 44, 15);
mapBlock(Blocks.brick_block, 45); mapBlock(Blocks.brick_block, 45);
mapBlock(Blocks.tnt.getState().withProperty(BlockTNT.EXPLODE, false), 46); mapBlock(Blocks.tnt.getState().withProperty(BlockTNT.EXPLODE, false), 46);
@ -1058,41 +1058,41 @@ public abstract class Converter {
mapBlock(Blocks.dragon_egg, 122); mapBlock(Blocks.dragon_egg, 122);
mapBlock(Blocks.redstone_lamp, 123); mapBlock(Blocks.redstone_lamp, 123);
mapBlock(Blocks.lit_redstone_lamp, 124); mapBlock(Blocks.lit_redstone_lamp, 124);
mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.oak_planks,
125); 125);
mapBlock(Blocks.spruce_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.spruce_planks,
125, 1); 125, 1);
mapBlock(Blocks.birch_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.birch_planks,
125, 2); 125, 2);
mapBlock(Blocks.jungle_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.jungle_planks,
125, 3); 125, 3);
mapBlock(Blocks.acacia_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.acacia_planks,
125, 4); 125, 4);
mapBlock(Blocks.dark_oak_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.dark_oak_planks,
125, 5); 125, 5);
mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
126); 126);
mapBlock(Blocks.spruce_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.spruce_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
126, 1); 126, 1);
mapBlock(Blocks.birch_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.birch_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
126, 2); 126, 2);
mapBlock(Blocks.jungle_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.jungle_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
126, 3); 126, 3);
mapBlock(Blocks.acacia_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.acacia_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
126, 4); 126, 4);
mapBlock(Blocks.dark_oak_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.dark_oak_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
126, 5); 126, 5);
mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.oak_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
126, 8); 126, 8);
mapBlock(Blocks.spruce_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.spruce_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
126, 9); 126, 9);
mapBlock(Blocks.birch_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.birch_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
126, 10); 126, 10);
mapBlock(Blocks.jungle_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.jungle_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
126, 11); 126, 11);
mapBlock(Blocks.acacia_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.acacia_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
126, 12); 126, 12);
mapBlock(Blocks.dark_oak_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.dark_oak_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
126, 13); 126, 13);
mapBlock(Blocks.cocoa.getState().withProperty(BlockCocoa.AGE, 0).withProperty(BlockCocoa.FACING, Facing.SOUTH), 127, 0, 12); mapBlock(Blocks.cocoa.getState().withProperty(BlockCocoa.AGE, 0).withProperty(BlockCocoa.FACING, Facing.SOUTH), 127, 0, 12);
mapBlock(Blocks.cocoa.getState().withProperty(BlockCocoa.AGE, 0).withProperty(BlockCocoa.FACING, Facing.WEST), 127, 1, 13); mapBlock(Blocks.cocoa.getState().withProperty(BlockCocoa.AGE, 0).withProperty(BlockCocoa.FACING, Facing.WEST), 127, 1, 13);
@ -1484,11 +1484,11 @@ public abstract class Converter {
mapBlock(Blocks.sandstone_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST).withProperty(BlockStairs.HALF, EnumHalf.TOP), 180, 5, 13); mapBlock(Blocks.sandstone_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST).withProperty(BlockStairs.HALF, EnumHalf.TOP), 180, 5, 13);
mapBlock(Blocks.sandstone_stairs.getState().withProperty(BlockStairs.FACING, Facing.SOUTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 180, 6, 14); mapBlock(Blocks.sandstone_stairs.getState().withProperty(BlockStairs.FACING, Facing.SOUTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 180, 6, 14);
mapBlock(Blocks.sandstone_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 180, 7, 15); mapBlock(Blocks.sandstone_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 180, 7, 15);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), mapBlock(Blocks.sandstone,
181); 181);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.FACING,
Facing.DOWN), 182); Facing.DOWN), 182);
mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, mapBlock(Blocks.sandstone_slab.getState().withProperty(BlockSlab.FACING,
Facing.UP), 182, 8); Facing.UP), 182, 8);
mapBlock(Blocks.spruce_fence_gate.getState().withProperty(BlockFenceGate.FACING, Facing.SOUTH).withProperty(BlockFenceGate.OPEN, false).withProperty(BlockFenceGate.POWERED, false), 183, 0); mapBlock(Blocks.spruce_fence_gate.getState().withProperty(BlockFenceGate.FACING, Facing.SOUTH).withProperty(BlockFenceGate.OPEN, false).withProperty(BlockFenceGate.POWERED, false), 183, 0);
mapBlock(Blocks.spruce_fence_gate.getState().withProperty(BlockFenceGate.FACING, Facing.WEST).withProperty(BlockFenceGate.OPEN, false).withProperty(BlockFenceGate.POWERED, false), 183, 1); mapBlock(Blocks.spruce_fence_gate.getState().withProperty(BlockFenceGate.FACING, Facing.WEST).withProperty(BlockFenceGate.OPEN, false).withProperty(BlockFenceGate.POWERED, false), 183, 1);
@ -1594,10 +1594,10 @@ public abstract class Converter {
mapBlock(Blocks.quartz_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST).withProperty(BlockStairs.HALF, EnumHalf.TOP), 203, 5, 13); mapBlock(Blocks.quartz_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST).withProperty(BlockStairs.HALF, EnumHalf.TOP), 203, 5, 13);
mapBlock(Blocks.quartz_stairs.getState().withProperty(BlockStairs.FACING, Facing.SOUTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 203, 6, 14); mapBlock(Blocks.quartz_stairs.getState().withProperty(BlockStairs.FACING, Facing.SOUTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 203, 6, 14);
mapBlock(Blocks.quartz_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 203, 7, 15); mapBlock(Blocks.quartz_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 203, 7, 15);
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.DOUBLE, true).withProperty(BlockSlab.SEAMLESS, false), 204); mapBlock(Blocks.quartz_block, 204);
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.DOWN), mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.FACING, Facing.DOWN),
205); 205);
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.DOUBLE, false).withProperty(BlockSlab.FACING, Facing.UP), mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
205, 8); 205, 8);
mapBlock(Blocks.stonebrick, 206); mapBlock(Blocks.stonebrick, 206);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 0), 207); mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 0), 207);

View file

@ -5,7 +5,6 @@ import java.util.Map;
import common.block.artificial.BlockDoor; import common.block.artificial.BlockDoor;
import common.block.artificial.BlockLadder; import common.block.artificial.BlockLadder;
import common.block.artificial.BlockSlab;
import common.block.artificial.BlockStairs; import common.block.artificial.BlockStairs;
import common.block.tech.BlockButton; import common.block.tech.BlockButton;
import common.collect.Lists; import common.collect.Lists;
@ -524,14 +523,14 @@ public class StructureStronghold
this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 8, 1, 5, 8, 4, 9, false, randomIn, StructureStronghold.strongholdStones); this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 8, 1, 5, 8, 4, 9, false, randomIn, StructureStronghold.strongholdStones);
this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 1, 4, 7, 3, 4, 9, false, randomIn, StructureStronghold.strongholdStones); this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 1, 4, 7, 3, 4, 9, false, randomIn, StructureStronghold.strongholdStones);
this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 1, 3, 5, 3, 3, 6, false, randomIn, StructureStronghold.strongholdStones); this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 1, 3, 5, 3, 3, 6, false, randomIn, StructureStronghold.strongholdStones);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 3, 4, 3, 3, 4, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 3, 4, 3, 3, 4, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 4, 6, 3, 4, 6, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 4, 6, 3, 4, 6, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 5, 1, 7, 7, 1, 8, false, randomIn, StructureStronghold.strongholdStones); this.fillWithRandomizedBlocks(worldIn, structureBoundingBoxIn, 5, 1, 7, 7, 1, 8, false, randomIn, StructureStronghold.strongholdStones);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 1, 9, 7, 1, 9, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 1, 9, 7, 1, 9, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 2, 7, 7, 2, 7, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 2, 7, 7, 2, 7, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 4, 5, 7, 4, 5, 9, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 4, 5, 7, 4, 5, 9, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 8, 5, 7, 8, 5, 9, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 8, 5, 7, 8, 5, 9, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 5, 7, 7, 5, 9, Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 5, 7, 7, 5, 9, Blocks.concrete.getState(), Blocks.concrete.getState(), false);
this.setBlockState(worldIn, Blocks.torch.getState(), 6, 5, 6, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.torch.getState(), 6, 5, 6, structureBoundingBoxIn);
return true; return true;
} }
@ -1080,14 +1079,14 @@ public class StructureStronghold
this.setBlockState(worldIn, Blocks.torch.getState(), 6, 3, 5, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.torch.getState(), 6, 3, 5, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.torch.getState(), 5, 3, 4, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.torch.getState(), 5, 3, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.torch.getState(), 5, 3, 6, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.torch.getState(), 5, 3, 6, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 4, 1, 4, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 4, 1, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 4, 1, 5, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 4, 1, 5, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 4, 1, 6, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 4, 1, 6, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 6, 1, 4, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 6, 1, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 6, 1, 5, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 6, 1, 5, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 6, 1, 6, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 6, 1, 6, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 5, 1, 4, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 5, 1, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 5, 1, 6, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 5, 1, 6, structureBoundingBoxIn);
break; break;
case 1: case 1:
@ -1241,21 +1240,21 @@ public class StructureStronghold
this.placeDoor(worldIn, randomIn, structureBoundingBoxIn, StructureStronghold.Stronghold.Door.OPENING, 1, 1, 4); this.placeDoor(worldIn, randomIn, structureBoundingBoxIn, StructureStronghold.Stronghold.Door.OPENING, 1, 1, 4);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 2, 6, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 2, 6, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 5, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 5, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 1, 6, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 1, 6, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 5, 2, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 5, 2, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 4, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 4, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 1, 5, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 1, 5, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 2, 4, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 2, 4, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 3, 3, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 3, 3, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 3, 4, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 3, 4, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 3, 3, 2, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 3, 3, 2, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 3, 2, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 3, 2, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 3, 3, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 3, 3, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 2, 2, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 2, 2, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 1, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 1, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 1, 2, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 1, 2, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 1, 2, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.stonebrick.getState(), 1, 1, 2, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState(), 1, 1, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete_slab.getState(), 1, 1, 3, structureBoundingBoxIn);
return true; return true;
} }
} }

View file

@ -6,7 +6,6 @@ import java.util.List;
import common.biome.Biome; import common.biome.Biome;
import common.block.artificial.BlockDoor; import common.block.artificial.BlockDoor;
import common.block.artificial.BlockLadder; import common.block.artificial.BlockLadder;
import common.block.artificial.BlockSlab;
import common.block.artificial.BlockStairs; import common.block.artificial.BlockStairs;
import common.block.foliage.BlockCrops; import common.block.foliage.BlockCrops;
import common.block.foliage.BlockLog; import common.block.foliage.BlockLog;
@ -674,9 +673,9 @@ public class StructureVillage
this.setBlockState(worldIn, Blocks.oak_planks.getState(), 1, 1, 4, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.oak_planks.getState(), 1, 1, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, this.getMetadataWithOffset(Blocks.oak_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH)), 2, 1, 4, structureBoundingBoxIn); this.setBlockState(worldIn, this.getMetadataWithOffset(Blocks.oak_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH)), 2, 1, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, this.getMetadataWithOffset(Blocks.oak_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST)), 1, 1, 3, structureBoundingBoxIn); this.setBlockState(worldIn, this.getMetadataWithOffset(Blocks.oak_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST)), 1, 1, 3, structureBoundingBoxIn);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 0, 1, 7, 0, 3, Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 5, 0, 1, 7, 0, 3, Blocks.concrete.getState(), Blocks.concrete.getState(), false);
this.setBlockState(worldIn, Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), 6, 1, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete.getState(), 6, 1, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), 6, 1, 2, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete.getState(), 6, 1, 2, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.air.getState(), 2, 1, 0, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.air.getState(), 2, 1, 0, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.air.getState(), 2, 2, 0, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.air.getState(), 2, 2, 0, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.torch.getState().withProperty(BlockTorch.FACING, this.coordBaseMode), 2, 3, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.torch.getState().withProperty(BlockTorch.FACING, this.coordBaseMode), 2, 3, 1, structureBoundingBoxIn);
@ -884,7 +883,7 @@ public class StructureVillage
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 0, 9, 4, 6, Blocks.air.getState(), Blocks.air.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 0, 9, 4, 6, Blocks.air.getState(), Blocks.air.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 0, 0, 9, 0, 6, Blocks.cobblestone.getState(), Blocks.cobblestone.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 0, 0, 9, 0, 6, Blocks.cobblestone.getState(), Blocks.cobblestone.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 4, 0, 9, 4, 6, Blocks.cobblestone.getState(), Blocks.cobblestone.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 4, 0, 9, 4, 6, Blocks.cobblestone.getState(), Blocks.cobblestone.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 5, 0, 9, 5, 6, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 5, 0, 9, 5, 6, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 5, 1, 8, 5, 5, Blocks.air.getState(), Blocks.air.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 5, 1, 8, 5, 5, Blocks.air.getState(), Blocks.air.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 1, 0, 2, 3, 0, Blocks.oak_planks.getState(), Blocks.oak_planks.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 1, 0, 2, 3, 0, Blocks.oak_planks.getState(), Blocks.oak_planks.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 0, 0, 4, 0, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 0, 0, 4, 0, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false);
@ -906,7 +905,7 @@ public class StructureVillage
this.setBlockState(worldIn, Blocks.cobblestone.getState(), 6, 1, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.cobblestone.getState(), 6, 1, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.furnace.getState(), 6, 2, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.furnace.getState(), 6, 2, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.furnace.getState(), 6, 3, 3, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.furnace.getState(), 6, 3, 3, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.stone_slab.getState().withProperty(BlockSlab.DOUBLE, true), 8, 1, 1, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.concrete.getState(), 8, 1, 1, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.glass_pane.getState(), 0, 2, 2, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.glass_pane.getState(), 0, 2, 2, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.glass_pane.getState(), 0, 2, 4, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.glass_pane.getState(), 0, 2, 4, structureBoundingBoxIn);
this.setBlockState(worldIn, Blocks.glass_pane.getState(), 2, 2, 6, structureBoundingBoxIn); this.setBlockState(worldIn, Blocks.glass_pane.getState(), 2, 2, 6, structureBoundingBoxIn);
@ -1956,7 +1955,7 @@ public class StructureVillage
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 1, 1, 3, 4, 3, Blocks.air.getState(), Blocks.air.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 1, 1, 1, 3, 4, 3, Blocks.air.getState(), Blocks.air.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 0, 0, 4, 0, 4, Blocks.cobblestone.getState(), Blocks.cobblestone.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 0, 0, 4, 0, 4, Blocks.cobblestone.getState(), Blocks.cobblestone.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 5, 0, 4, 5, 4, Blocks.stone_slab.getState(), Blocks.stone_slab.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 5, 0, 4, 5, 4, Blocks.concrete_slab.getState(), Blocks.concrete_slab.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 0, 0, 4, 0, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 0, 0, 4, 0, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 4, 0, 4, 4, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 1, 4, 0, 4, 4, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 4, 1, 0, 4, 4, 0, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false); this.fillWithBlocks(worldIn, structureBoundingBoxIn, 4, 1, 0, 4, 4, 0, Blocks.oak_log.getState(), Blocks.oak_log.getState(), false);