Interface IStorage<D extends IStorageData>

All Known Subinterfaces:
IClientStorage<D>, IServerStorage<D>, ISyncServerStorage<D>
All Known Implementing Classes:
MetarClientStorage, MetarServerStorage, MetarStorage, PMWStorage, RadarClientStorage, RadarServerStorage, RadarStorage, WSRClientStorage, WSRServerStorage, WSRStorage

public interface IStorage<D extends IStorageData>
The interface defining a Storage such as RadarStorage

On the server-side, there is a IServerStorage for each dimension of a world. On the client-side, there is one IClientStorage for each player on a world.

To add or remove BlockPos, use add(D) and remove(D). To get all BlockPos use getAll() or getInChunk(ChunkPos)

Optionally, Storages can be numerically versioned, however, you must write you own version mismatch handler

For method definitions, see PMWStorage
Since:
0.15.3.3
See Also:
  • Method Details

    • getLevel

      net.minecraft.world.level.Level getLevel()
    • getId

      net.minecraft.resources.ResourceLocation getId()
    • version

      int version()
    • clean

      void clean()
    • getAll

      Set<D> getAll()
    • getAllWithinRange

      Set<D> getAllWithinRange(net.minecraft.core.BlockPos base, double radius)
    • getInChunk

      Set<D> getInChunk(net.minecraft.world.level.ChunkPos pos)
    • getInAdjacentChunks

      Set<D> getInAdjacentChunks(net.minecraft.world.level.ChunkPos pos)
    • shouldRecalculate

      boolean shouldRecalculate(net.minecraft.world.level.ChunkPos pos)
    • add

      void add(D data)
    • add

      void add(Collection<D> datum)
    • remove

      void remove(D data)
    • removeByData

      void removeByData(Collection<D> datum)
    • remove

      void remove(net.minecraft.core.BlockPos pos)
    • removeByPos

      void removeByPos(Collection<net.minecraft.core.BlockPos> pos)
    • save

      net.minecraft.nbt.CompoundTag save(net.minecraft.nbt.CompoundTag tag)
    • read

      void read()