Exemple #1
0
 private void addConduitCores(List<CollidableComponent> result, IConduit con) {
   CollidableCache cc = CollidableCache.instance;
   Class<? extends IConduit> type = con.getCollidableType();
   if (con.hasConnections()) {
     for (ForgeDirection dir : con.getExternalConnections()) {
       result.addAll(
           cc.getCollidables(
               cc.createKey(
                   type, getOffset(con.getBaseConduitType(), dir), ForgeDirection.UNKNOWN, false),
               con));
     }
     for (ForgeDirection dir : con.getConduitConnections()) {
       result.addAll(
           cc.getCollidables(
               cc.createKey(
                   type, getOffset(con.getBaseConduitType(), dir), ForgeDirection.UNKNOWN, false),
               con));
     }
   } else {
     result.addAll(
         cc.getCollidables(
             cc.createKey(
                 type,
                 getOffset(con.getBaseConduitType(), ForgeDirection.UNKNOWN),
                 ForgeDirection.UNKNOWN,
                 false),
             con));
   }
 }
Exemple #2
0
 @Override
 public Set<ForgeDirection> getAllConnections() {
   EnumSet<ForgeDirection> result = EnumSet.noneOf(ForgeDirection.class);
   for (IConduit con : conduits) {
     result.addAll(con.getConduitConnections());
   }
   return result;
 }
Exemple #3
0
 @Method(modid = "ImmibisMicroblocks")
 private void addConnection(ForgeDirection dir, IConduit c, IConduit connectingTo) {
   if (connectingTo != null) {
     if (!c.getConduitConnections().contains(dir) && connectingTo.canConnectToConduit(dir, c)) {
       c.conduitConnectionAdded(dir);
     }
   }
 }
Exemple #4
0
 @Override
 public Set<ForgeDirection> getConnections(Class<? extends IConduit> type) {
   IConduit con = getConduit(type);
   if (con != null) {
     return con.getConduitConnections();
   }
   return null;
 }
Exemple #5
0
 @Method(modid = "ImmibisMicroblocks")
 private void removeConnection(ForgeDirection dir, IConduit c) {
   if (c.getConduitConnections().contains(dir)) {
     c.conduitConnectionRemoved(dir);
   }
 }