как сделать чтобы по тикам мира вокруг блока в блоках воздуха появлялись блоки

Версия Minecraft
1.7.10
Решение
Типа, в коде твоего блока:
Java:
    @Override
    public void updateTick(World world, int x, int y, int z, Random random) {
        if (world.isAirBlock(x + 1, y, z)) world.setBlock(x + 1, y, z, this, 0, 3);
        if (world.isAirBlock(x - 1, y, z)) world.setBlock(x - 1, y, z, this, 0, 3);
        if (world.isAirBlock(x, y + 1, z)) world.setBlock(x, y + 1, z, this, 0, 3);
        if (world.isAirBlock(x, y - 1, z)) world.setBlock(x, y - 1, z, this, 0, 3);
        if (world.isAirBlock(x, y, z + 1)) world.setBlock(x, y, z + 1, this, 0, 3);
        if (world.isAirBlock(x, y, z - 1)) world.setBlock(x, y, z - 1, this, 0, 3);
    }
Типа, в коде твоего блока:
Java:
    @Override
    public void updateTick(World world, int x, int y, int z, Random random) {
        if (world.isAirBlock(x + 1, y, z)) world.setBlock(x + 1, y, z, this, 0, 3);
        if (world.isAirBlock(x - 1, y, z)) world.setBlock(x - 1, y, z, this, 0, 3);
        if (world.isAirBlock(x, y + 1, z)) world.setBlock(x, y + 1, z, this, 0, 3);
        if (world.isAirBlock(x, y - 1, z)) world.setBlock(x, y - 1, z, this, 0, 3);
        if (world.isAirBlock(x, y, z + 1)) world.setBlock(x, y, z + 1, this, 0, 3);
        if (world.isAirBlock(x, y, z - 1)) world.setBlock(x, y, z - 1, this, 0, 3);
    }
 
Java:
public class rost_block extends new_block {

    protected rost_block(Material p_i45394_1_) {
        super(p_i45394_1_);
        // TODO Auto-generated constructor stub
    }

    @Override
    public void updateTick(World world, int x, int y, int z, Random random) {
        if (world.isAirBlock(x + 1, y, z)) world.setBlock(x + 1, y, z, this, 0, 3);
        if (world.isAirBlock(x - 1, y, z)) world.setBlock(x - 1, y, z, this, 0, 3);
        if (world.isAirBlock(x, y + 1, z)) world.setBlock(x, y + 1, z, this, 0, 3);
        if (world.isAirBlock(x, y - 1, z)) world.setBlock(x, y - 1, z, this, 0, 3);
        if (world.isAirBlock(x, y, z + 1)) world.setBlock(x, y, z + 1, this, 0, 3);
        if (world.isAirBlock(x, y, z - 1)) world.setBlock(x, y, z - 1, this, 0, 3);
    }

}

new_block:
Java:
public class new_block extends Block {

    protected new_block(Material p_i45394_1_) {
        super(p_i45394_1_);
        this.setCreativeTab(CreativeTabs.tabBlock);
    }

    protected new_block setName(String name){
        this.setBlockName(name);
        return this;
    }

    protected new_block setLightL(float l){
        this.setLightLevel(l);
        return this;
    }

    protected new_block setTextureName(String tname){
        this.setBlockTextureName("leoshit:"+tname);
        return this;
    }

    protected new_block Hardness(float f){
        this.setHardness(f);
        return this;
    }

    protected new_block Resistance(float f){
        this.setResistance(f);
        return this;
    }

}
 
Последнее редактирование модератором:
он сам будет вызываться или где-то надо подключить
Типа должен сам вызываться. Но если будут такие-же проблемы как и у всех, то тебе надо будет типа так использовать:
Java:
    @Override
    public void updateTick(World world, int x, int y, int z, Random random) {
        if (world.isAirBlock(x + 1, y, z)) world.setBlock(x + 1, y, z, this, 0, 3);
        if (world.isAirBlock(x - 1, y, z)) world.setBlock(x - 1, y, z, this, 0, 3);
        if (world.isAirBlock(x, y + 1, z)) world.setBlock(x, y + 1, z, this, 0, 3);
        if (world.isAirBlock(x, y - 1, z)) world.setBlock(x, y - 1, z, this, 0, 3);
        if (world.isAirBlock(x, y, z + 1)) world.setBlock(x, y, z + 1, this, 0, 3);
        if (world.isAirBlock(x, y, z - 1)) world.setBlock(x, y, z - 1, this, 0, 3);

        world.scheduleBlockUpdate(x, y, z, this, 0);
    }

    @Override
    public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase eLB, ItemStack itemStack) {
        world.scheduleBlockUpdate(x, y, z, this, 0);
    }
 
Назад
Сверху