2016-07-30 17:07:32 +02:00
|
|
|
/*
|
|
|
|
* This file ("ILaserRelayConnectionHandler.java") is part of the Actually Additions mod for Minecraft.
|
|
|
|
* It is created and owned by Ellpeck and distributed
|
|
|
|
* under the Actually Additions License to be found at
|
|
|
|
* http://ellpeck.de/actaddlicense
|
|
|
|
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
|
|
|
|
*
|
|
|
|
* © 2015-2016 Ellpeck
|
|
|
|
*/
|
|
|
|
|
|
|
|
package de.ellpeck.actuallyadditions.api.laser;
|
|
|
|
|
|
|
|
import io.netty.util.internal.ConcurrentSet;
|
2016-10-31 21:12:15 +01:00
|
|
|
import net.minecraft.tileentity.TileEntity;
|
2016-07-30 17:07:32 +02:00
|
|
|
import net.minecraft.util.math.BlockPos;
|
|
|
|
import net.minecraft.world.World;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* This is the internal laser relay connection handler.
|
|
|
|
* Use ActuallyAdditionsAPI.connectionHandler for calling
|
|
|
|
* This is not supposed to be implemented.
|
2016-08-02 13:08:22 +02:00
|
|
|
* <p>
|
2016-07-30 17:07:32 +02:00
|
|
|
* The network system is built in a way that doesn't need the individual
|
|
|
|
* positions to be Laser Relays, it relies only on BlockPos
|
|
|
|
*/
|
|
|
|
public interface ILaserRelayConnectionHandler{
|
|
|
|
|
2016-09-12 16:13:39 +02:00
|
|
|
ConcurrentSet<IConnectionPair> getConnectionsFor(BlockPos relay, World world);
|
2016-07-30 17:07:32 +02:00
|
|
|
|
|
|
|
void removeRelayFromNetwork(BlockPos relay, World world);
|
|
|
|
|
|
|
|
Network getNetworkFor(BlockPos relay, World world);
|
|
|
|
|
2016-09-01 18:02:03 +02:00
|
|
|
boolean addConnection(BlockPos firstRelay, BlockPos secondRelay, LaserType type, World world);
|
2016-08-01 14:15:09 +02:00
|
|
|
|
2016-09-01 18:02:03 +02:00
|
|
|
boolean addConnection(BlockPos firstRelay, BlockPos secondRelay, LaserType type, World world, boolean suppressConnectionRender);
|
2016-10-31 21:12:15 +01:00
|
|
|
|
|
|
|
LaserType getTypeFromLaser(TileEntity tile);
|
|
|
|
|
|
|
|
LaserType getTypeFromLsaer(BlockPos pos, World world);
|
2016-07-30 17:07:32 +02:00
|
|
|
}
|