package pneumaticCraft.api.drone; import net.minecraft.entity.Entity; import net.minecraft.entity.ai.EntityAITasks; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraftforge.common.IExtendedEntityProperties; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.IFluidTank; import pneumaticCraft.api.item.IPressurizable; public interface IDrone extends IPressurizable{ /** * * @param upgradeIndex metadata value of the upgrade item * @return amount of inserted upgrades in the drone */ public int getUpgrades(int upgradeIndex); public World getWorld(); public IFluidTank getTank(); public IInventory getInventory(); public Vec3 getPosition(); public IPathNavigator getPathNavigator(); public void sendWireframeToClient(int x, int y, int z); public EntityPlayerMP getFakePlayer(); public boolean isBlockValidPathfindBlock(int x, int y, int z); public void dropItem(ItemStack stack); public void setDugBlock(int x, int y, int z); public EntityAITasks getTargetAI(); public IExtendedEntityProperties getProperty(String key); public void setProperty(String key, IExtendedEntityProperties property); public void setEmittingRedstone(ForgeDirection orientation, int emittingRedstone); public void setName(String string); public void setCarryingEntity(Entity entity); public Entity getCarryingEntity(); public boolean isAIOverriden(); public void onItemPickupEvent(EntityItem curPickingUpEntity, int stackSize); }