RS output is working (but depends on current master IE with an additional fix) Model rotation on Jacobs ladders is broken!
49 lines
1.3 KiB
Java
49 lines
1.3 KiB
Java
package malte0811.industrialWires.util;
|
|
|
|
import blusunrize.immersiveengineering.api.ApiUtils;
|
|
import blusunrize.immersiveengineering.api.energy.wires.IImmersiveConnectable;
|
|
import blusunrize.immersiveengineering.api.energy.wires.ImmersiveNetHandler;
|
|
import com.google.common.collect.ImmutableSet;
|
|
import net.minecraft.world.World;
|
|
|
|
import java.util.HashSet;
|
|
import java.util.Set;
|
|
|
|
public final class MiscUtils {
|
|
private MiscUtils() {}
|
|
public static Set<ImmersiveNetHandler.Connection> genConnBlockstate(Set<ImmersiveNetHandler.Connection> conns, World world)
|
|
{
|
|
if (conns == null)
|
|
return ImmutableSet.of();
|
|
Set<ImmersiveNetHandler.Connection> ret = new HashSet<ImmersiveNetHandler.Connection>()
|
|
{
|
|
@Override
|
|
public boolean equals(Object o)
|
|
{
|
|
if (o == this)
|
|
return true;
|
|
if (!(o instanceof HashSet))
|
|
return false;
|
|
HashSet<ImmersiveNetHandler.Connection> other = (HashSet<ImmersiveNetHandler.Connection>) o;
|
|
if (other.size() != this.size())
|
|
return false;
|
|
for (ImmersiveNetHandler.Connection c : this)
|
|
if (!other.contains(c))
|
|
return false;
|
|
return true;
|
|
}
|
|
};
|
|
for (ImmersiveNetHandler.Connection c : conns)
|
|
{
|
|
IImmersiveConnectable end = ApiUtils.toIIC(c.end, world, false);
|
|
if (end==null)
|
|
continue;
|
|
// generate subvertices
|
|
c.getSubVertices(world);
|
|
ret.add(c);
|
|
}
|
|
|
|
return ret;
|
|
}
|
|
}
|