123456789101112131415161718192021222324252627282930313233343536373839 |
- package me.km.capabilities;
- import net.minecraft.nbt.NBTBase;
- import net.minecraft.util.EnumFacing;
- import net.minecraftforge.common.capabilities.Capability;
- import net.minecraftforge.common.capabilities.CapabilityInject;
- import net.minecraftforge.common.capabilities.ICapabilitySerializable;
- public class DefenseProvider implements ICapabilitySerializable<NBTBase>
- {
- @CapabilityInject(IDefense.class)
- public static final Capability<IDefense> DEFENSE_CAP = null;
- private final IDefense instance = DEFENSE_CAP.getDefaultInstance();
- @Override
- public boolean hasCapability(Capability<?> capability, EnumFacing facing)
- {
- return capability == DEFENSE_CAP;
- }
- @Override
- public <T> T getCapability(Capability<T> capability, EnumFacing facing)
- {
- return capability == DEFENSE_CAP ? DEFENSE_CAP.<T>cast(this.instance) : null;
- }
- @Override
- public NBTBase serializeNBT()
- {
- return DEFENSE_CAP.getStorage().writeNBT(DEFENSE_CAP, this.instance, null);
- }
- @Override
- public void deserializeNBT(NBTBase nbt)
- {
- DEFENSE_CAP.getStorage().readNBT(DEFENSE_CAP, this.instance, null, nbt);
- }
- }
|