buildcraft/api/buildcraft/api/robots/EntityRobotBase.java

72 lines
1.9 KiB
Java
Raw Normal View History

/**
* Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team
* http://www.mod-buildcraft.com
*
* The BuildCraft API is distributed under the terms of the MIT License.
* Please check the contents of the license, which should be located
* as "LICENSE.API" in the BuildCraft source code distribution.
*/
2014-06-13 13:36:02 +02:00
package buildcraft.api.robots;
2014-06-28 11:04:37 +02:00
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
2014-09-04 20:55:50 +02:00
import net.minecraftforge.fluids.IFluidHandler;
2014-09-04 20:55:50 +02:00
import cofh.api.energy.IEnergyStorage;
import buildcraft.api.boards.RedstoneBoardRobot;
import buildcraft.api.core.IZone;
public abstract class EntityRobotBase extends EntityLiving implements IInventory, IFluidHandler {
2014-09-03 19:22:15 +02:00
public static final int MAX_ENERGY = 100000;
public static final int SAFETY_ENERGY = MAX_ENERGY / 4;
public static final long NULL_ROBOT_ID = Long.MAX_VALUE;
public EntityRobotBase(World par1World) {
super(par1World);
}
public abstract void setItemInUse(ItemStack stack);
public abstract void setItemActive(boolean b);
public abstract boolean isMoving();
public abstract IDockingStation getLinkedStation();
public abstract RedstoneBoardRobot getBoard();
public abstract void aimItemAt(int x, int y, int z);
2014-09-03 19:22:15 +02:00
public abstract int getEnergy();
2014-09-04 19:51:50 +02:00
public abstract IEnergyStorage getBattery();
public abstract IDockingStation getDockingStation();
public abstract void dock(IDockingStation station);
public abstract void undock();
public abstract IZone getZoneToWork();
2014-06-26 08:51:28 +02:00
public abstract boolean containsItems();
public abstract boolean hasFreeSlot();
2014-06-28 11:04:37 +02:00
public abstract void unreachableEntityDetected(Entity entity);
public abstract boolean isKnownUnreachable(Entity entity);
public abstract long getRobotId();
public abstract IRobotRegistry getRegistry();
public abstract void releaseResources();
}