Implemented capabilities for cable buses in a way that dispatches the capabilities to the parts on the appropriate attachment point. Implemented the capabilities for interface parts and tiles to provide a proof of concept.

This commit is contained in:
Sebastian Hartte
2016-09-30 23:53:54 +02:00
parent 8666936646
commit 882f240307
5 changed files with 104 additions and 0 deletions
@@ -37,6 +37,8 @@ import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.Vec3d;
import net.minecraft.util.text.ITextComponent;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.items.CapabilityItemHandler;
import appeng.api.config.Actionable;
import appeng.api.config.Upgrades;
@@ -444,4 +446,16 @@ public class PartInterface extends PartBasicState implements IGridTickable, ISto
}
}
@Override
public boolean hasCapability( Capability<?> capabilityClass )
{
return this.duality.hasCapability( capabilityClass, getSide().getFacing() );
}
@Override
public <T> T getCapability( Capability<T> capabilityClass )
{
return this.duality.getCapability( capabilityClass, getSide().getFacing() );
}
}