Вверх ↑
Этот топик читают: Гость
Ответов: 4557
#1: 2014-06-27 15:43:43 ЛС | профиль | цитата
http://forum.minecraft-galaxy.ru/userissue/41
Все полублоки с ID = 44 являются камнями и разрушаются только киркой, а не в соответствии со своим материалом
Решением проблемы является разделение полублоков на 2 разных файла: деревянные (WoodSlab) и каменные (StoneSlabs)

WoodSlab.java

package net.minecraft.src;

import java.util.List;
import java.util.Random;

public class BlockWoodSlab extends BlockHalfSlab
{
public static final String[] woodType = new String[] {"oak", "spruce", "birch", "jungle", "palm"};

public BlockWoodSlab(int par1, boolean par2)
{
super(par1, par2, Material.wood);
}

public int getBlockTextureFromSideAndMetadata(int par1, int par2)
{
switch (par2 & 7)
{
case 1:
return 198;

case 2:
return 214;

case 3:
return 199;

case 4: ТЕКСТУРА_ПАЛЬМЫ;

default:
return 4;
}
}
public int getBlockTextureFromSide(int par1)
{
return this.getBlockTextureFromSideAndMetadata(par1, 0);
}
public int idDropped(int par1, Random par2Random, int par3)
{
return Block.woodSingleSlab.blockID;
}
protected ItemStack createStackedBlock(int par1)
{
return new ItemStack(Block.woodSingleSlab.blockID, 2, par1 & 7);
}
public String getFullSlabName(int par1)
{
if (par1 ‹ 0 || par1 ›= woodType.length)
{
par1 = 0;
}

return super.getBlockName() + "." + woodType[par1];
}

public void getSubBlocks(int par1, CreativeTabs par2CreativeTabs, List par3List)
{
if (par1 != Block.woodDoubleSlab.blockID)
{
for (int var4 = 0; var4 ‹ 5; ++var4)
{
par3List.add(new ItemStack(par1, 1, var4));
}
}
}
}

Block.Java

public static final BlockHalfSlab woodDoubleSlab = (BlockHalfSlab)(new BlockWoodSlab(125, true)).setHardness(2.0F).setResistance(5.0F).setStepSound(soundWoodFootstep).setBlockName("woodSlab");
public static final BlockHalfSlab woodSingleSlab = (BlockHalfSlab)(new BlockWoodSlab(126, false)).setHardness(2.0F).setResistance(5.0F).setStepSound(soundWoodFootstep).setBlockName("woodSlab");

CraftingManager.java

this.addRecipe(new ItemStack(Block.woodSingleSlab, 6, 0), new Object[] {"###", '#', new ItemStack(Block.planks, 1, 0)});
this.addRecipe(new ItemStack(Block.woodSingleSlab, 6, 2), new Object[] {"###", '#', new ItemStack(Block.planks, 1, 2)});
this.addRecipe(new ItemStack(Block.woodSingleSlab, 6, 1), new Object[] {"###", '#', new ItemStack(Block.planks, 1, 1)});
this.addRecipe(new ItemStack(Block.woodSingleSlab, 6, 3), new Object[] {"###", '#', new ItemStack(Block.planks, 1, 3)});

Ещё можно рассмотреть такое вариант, как добавление топору полублоки (прописывая блок и метадату)
карма: 6
0
Ответов: 16
#2: 2014-11-25 19:50:58 ЛС | профиль | цитата
0_0
карма: -3
-1
Голосовали:STL1te
Ответов: 376
#3: 2014-11-30 03:37:07 ЛС | профиль | цитата
Шта ?
карма: 5
0
Ответов: 13
#4: 2014-11-30 08:07:35 ЛС | профиль | цитата
неплохо но ябы 2 код доработал
карма: 0
0
Ответов: 4041
Eternity
Inactive
#5: 2014-11-30 08:19:12 ЛС | профиль | цитата
А я думаю, чем ломаются деревяные, уже все виды топор перепробывал, а тут кирка нужна была..

Отличная идея, давно пора сделать так.
карма: -26
0
Ответов: 1578
#6: 2014-11-30 08:40:22 ЛС | профиль | цитата
Действительно нужно, за!
карма: 1
0
6
Сообщение
...