Example usage for net.minecraftforge.common FarmlandWaterManager addAABBTicket

List of usage examples for net.minecraftforge.common FarmlandWaterManager addAABBTicket

Introduction

In this page you can find the example usage for net.minecraftforge.common FarmlandWaterManager addAABBTicket.

Prototype

public static AABBTicket addAABBTicket(World world, AxisAlignedBB aabb) 

Source Link

Document

Convenience method to add a ticket that is backed by an AABB.

Usage

From source file:com.buuz135.industrial.tile.agriculture.HydratorTile.java

License:Open Source License

@Override
public void onLoad() {
    if (!world.isRemote) {
        farmlandTicket = FarmlandWaterManager.addAABBTicket(world, getWateringArea());
        updateTicket();
    }
}

From source file:com.buuz135.industrial.tile.agriculture.HydratorTile.java

License:Open Source License

@Override
public float work() {
    if (WorkUtils.isDisabled(this.getBlockType()))
        return 0;
    if (farmlandTicket == null || !farmlandTicket.axisAlignedBB.equals(getWateringArea())) {
        if (farmlandTicket != null)
            farmlandTicket.invalidate();
        farmlandTicket = FarmlandWaterManager.addAABBTicket(world, getWateringArea());
        updateTicket();//from   w  w  w  .  j  a va  2  s  .c o m
    }
    List<BlockPos> blockPosList = BlockUtils.getBlockPosInAABB(getWorkingArea());
    boolean hasWorked = false;
    for (BlockPos pos : blockPosList) {
        if (world.getBlockState(pos).getBlock() instanceof IGrowable) {
            world.getBlockState(pos).getBlock().randomTick(world, pos, world.getBlockState(pos), world.rand);
            hasWorked = true;
        }
    }
    return hasWorked ? 1 : 0;
}