package uk.co.wehavecookies56.kk.common.capability;
import net.minecraft.nbt.NBTBase;
import net.minecraft.nbt.NBTPrimitive;
import net.minecraft.nbt.NBTTagInt;
import net.minecraft.util.EnumFacing;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.Capability.IStorage;
public class CheatModeCapability {
public interface ICheatMode {
boolean getCheatMode();
void setCheatMode(boolean mode);
}
public static class Storage implements IStorage<ICheatMode> {
@Override
public NBTBase writeNBT(Capability<ICheatMode> capability, ICheatMode instance, EnumFacing side) {
return new NBTTagInt(instance.getCheatMode() ? 1 : 0);
}
@Override
public void readNBT(Capability<ICheatMode> capability, ICheatMode instance, EnumFacing side, NBTBase nbt) {
instance.setCheatMode(((NBTPrimitive)nbt).getInt() == 1);
}
}
public static class Default implements ICheatMode {
boolean mode;
@Override public boolean getCheatMode() { return this.mode; }
@Override public void setCheatMode(boolean mode) { this.mode = mode; }
}
}