2016-01-05 04:47:35 +01:00
|
|
|
package de.ellpeck.actuallyadditions.api.tile;
|
2015-08-10 10:37:44 +02:00
|
|
|
|
2016-03-18 23:47:22 +01:00
|
|
|
import net.minecraft.util.math.BlockPos;
|
2015-08-10 10:37:44 +02:00
|
|
|
|
2016-01-05 04:47:35 +01:00
|
|
|
/**
|
|
|
|
* Extending this will cause a TileEntity to be able to be connected via a Phantom Connector
|
|
|
|
*/
|
2019-05-02 09:10:29 +02:00
|
|
|
public interface IPhantomTile {
|
2015-08-10 10:37:44 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return If the Phantom Tile is currently bound to anything
|
|
|
|
*/
|
|
|
|
boolean hasBoundPosition();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return If the Phantom Tile's bound position is in range
|
|
|
|
*/
|
|
|
|
boolean isBoundThingInRange();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return The position this tile is bound to
|
|
|
|
*/
|
2016-01-08 13:31:58 +01:00
|
|
|
BlockPos getBoundPosition();
|
2015-08-10 10:37:44 +02:00
|
|
|
|
2016-01-05 04:47:35 +01:00
|
|
|
/**
|
|
|
|
* Sets the bound position
|
|
|
|
*/
|
2016-01-08 13:31:58 +01:00
|
|
|
void setBoundPosition(BlockPos pos);
|
2015-10-03 10:16:18 +02:00
|
|
|
|
2015-08-10 10:37:44 +02:00
|
|
|
/**
|
|
|
|
* @return The ID of the GUI it opens, -1 if none
|
|
|
|
*/
|
|
|
|
int getGuiID();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return The range the tile currently has
|
|
|
|
*/
|
|
|
|
int getRange();
|
|
|
|
}
|