private Vector3i tmp3i = new Vector3i();
@Override
public int run(int bx, int by, int bz, boolean fastMode, Block b, Chunk c,
HighestBlockChunk hbc, Chunks chunks, int step, BlockDeltaAdder blockDeltaAdder) {
BlockDirt bd = (BlockDirt)b;
if (bd.hasGrass){
if (bd.health < bd.getMaxHealth()){
blockDeltaAdder.addBlockDelta(BlockDelta.Aquire(bx, by, bz, BlockDirt.Make(b.getHealth(), false), chunks.getStepsToSim(bx, by, bz, tmp3i, c)));
}
else {
Block ab = chunks.getBlock(bx, by, bz+1, tmp3i, c);
if (!(ab instanceof BlockEmpty) && !(ab instanceof BlockLeaf)){