Use capability casts instead of casting manually

This commit is contained in:
Raoul Van den Berge
2016-12-04 03:24:32 +01:00
parent 0ae86b684e
commit bbd51d55d0

View File

@@ -224,11 +224,17 @@ public abstract class ItemNetworkItem extends ItemBase implements INetworkItemPr
@Override @Override
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) { public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing) {
if (capability == CapabilityEnergy.ENERGY) { if (capability == CapabilityEnergy.ENERGY) {
return (T) new NetworkItemEnergyForge(stack, 3200); return CapabilityEnergy.ENERGY.cast(new NetworkItemEnergyForge(stack, 3200));
} }
if (IntegrationTesla.isLoaded() && (capability == TeslaCapabilities.CAPABILITY_HOLDER || capability == TeslaCapabilities.CAPABILITY_CONSUMER)) { if (IntegrationTesla.isLoaded()) {
return (T) new NetworkItemEnergyTesla(stack); if (capability == TeslaCapabilities.CAPABILITY_HOLDER) {
return TeslaCapabilities.CAPABILITY_HOLDER.cast(new NetworkItemEnergyTesla(stack));
}
if (capability == TeslaCapabilities.CAPABILITY_CONSUMER) {
return TeslaCapabilities.CAPABILITY_CONSUMER.cast(new NetworkItemEnergyTesla(stack));
}
} }
return null; return null;