public class BlockBla extends BlockContainer {
public BlockBla(Material m) {
super(m);
setTickRandomly(true);
........
}
public TileEntity createTileEntity() {
return new TileEntityBla();
}
public void onUpdate(World w, int x, int y, int z, Random r) {
TileEntityBla tile = (TileEntityBla)w.getBlockTileEntity(x, y, z);
if(tile.time == 72000) {
EntityItem i = new EntityItem(w, x, y, z, new ItemStack(item, meta, count));
world.spawnEntityInWorld(i);
tile.time = 0;
} else {
tile.time++;
}
}
}
public class TileEntityBla extends TileEntity {
public int time;
public void readFromNBT(NBTTagCompound tag) {
if(tag.hasKey("time")) {
time = tag.getInteger("time");
} else {
time = 0;
}
}
public void writeToNBT(NBTTagCompound tag) {
tag.setInteger("time", time);
}
}
public class BlockBla extends BlockContainer {
public BlockBla(Material m) {
super(m);
........
}
public TileEntity createTileEntity() {
return new TileEntityBla();
}
}
public class TileEntityBla extends TileEntity {
public int time;
public void readFromNBT(NBTTagCompound tag) {
if(tag.hasKey("time")) {
time = tag.getInteger("time");
} else {
time = 0;
}
}
public void writeToNBT(NBTTagCompound tag) {
tag.setInteger("time", time);
}
public void updateEntity() {
if(time == 72000) {
EntityItem entityItem = new EntityItem(worldObj, posX, posY, posZ, new ItemStack(item, meta, count));
world.spawnEntityInWorld(entityItem);
time = 0;
} else {
time++;
}
}
}
public void updateEntity(){
super.updateEntity();
if(worldObj.isRemote){
return;
}
if(worldObj.getTotalWorldTime() % 72000 == 0){
worldObj.spawnEntityInWorld(new EntityItem(worldObj, xCoord, yCoord, zCoord, new ItemStack(Items.gold_ingot)));
}
}
Огромное спасибо, можно закрывать!Dragon2488 написал(а):Переделал на нормальный код
Код:public class BlockBla extends BlockContainer { public BlockBla(Material m) { super(m); ........ } public TileEntity createTileEntity() { return new TileEntityBla(); } }
Код:public class TileEntityBla extends TileEntity { public int time; public void readFromNBT(NBTTagCompound tag) { if(tag.hasKey("time")) { time = tag.getInteger("time"); } else { time = 0; } } public void writeToNBT(NBTTagCompound tag) { tag.setInteger("time", time); } public void updateEntity() { if(time == 72000) { EntityItem entityItem = new EntityItem(worldObj, posX, posY, posZ, new ItemStack(item, meta, count)); world.spawnEntityInWorld(entityItem); time = 0; } else { time++; } } }