@MethodsReturnNonnullByDefault @ParametersAreNonnullByDefault public abstract class CapabilityProvider<B extends CapabilityProvider<B>> extends java.lang.Object implements ICapabilityProvider
Modifier and Type | Field and Description |
---|---|
private java.lang.Class<B> |
baseClass |
private CapabilityDispatcher |
capabilities |
private boolean |
initialized |
private boolean |
isLazy |
private CompoundNBT |
lazyData |
private java.util.function.Supplier<ICapabilityProvider> |
lazyParentSupplier |
(package private) static boolean |
SUPPORTS_LAZY_CAPABILITIES |
private boolean |
valid |
Modifier | Constructor and Description |
---|---|
protected |
CapabilityProvider(java.lang.Class<B> baseClass) |
protected |
CapabilityProvider(java.lang.Class<B> baseClass,
boolean isLazy) |
Modifier and Type | Method and Description |
---|---|
boolean |
areCapsCompatible(CapabilityDispatcher other) |
boolean |
areCapsCompatible(CapabilityProvider<B> other) |
protected void |
deserializeCaps(CompoundNBT tag) |
private void |
doGatherCapabilities(ICapabilityProvider parent) |
protected void |
gatherCapabilities() |
protected void |
gatherCapabilities(ICapabilityProvider parent) |
protected void |
gatherCapabilities(java.util.function.Supplier<ICapabilityProvider> parent) |
protected CapabilityDispatcher |
getCapabilities() |
<T> LazyOptional<T> |
getCapability(Capability<T> cap,
Direction side)
Retrieves the Optional handler for the capability requested on the specific side.
|
protected void |
invalidateCaps() |
protected void |
reviveCaps() |
protected CompoundNBT |
serializeCaps() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getCapability
static boolean SUPPORTS_LAZY_CAPABILITIES
@Nonnull private final java.lang.Class<B extends CapabilityProvider<B>> baseClass
@Nullable private CapabilityDispatcher capabilities
private boolean valid
private boolean isLazy
private java.util.function.Supplier<ICapabilityProvider> lazyParentSupplier
private CompoundNBT lazyData
private boolean initialized
protected CapabilityProvider(java.lang.Class<B> baseClass)
protected CapabilityProvider(java.lang.Class<B> baseClass, boolean isLazy)
protected final void gatherCapabilities()
protected final void gatherCapabilities(@Nullable ICapabilityProvider parent)
protected final void gatherCapabilities(@Nullable java.util.function.Supplier<ICapabilityProvider> parent)
private void doGatherCapabilities(@Nullable ICapabilityProvider parent)
@Nullable protected final CapabilityDispatcher getCapabilities()
public final boolean areCapsCompatible(CapabilityProvider<B> other)
public final boolean areCapsCompatible(@Nullable CapabilityDispatcher other)
@Nullable protected final CompoundNBT serializeCaps()
protected final void deserializeCaps(CompoundNBT tag)
protected void invalidateCaps()
protected void reviveCaps()
@Nonnull public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction side)
ICapabilityProvider
getCapability
in interface ICapabilityProvider