Skip to content

commonnet.kernelpanicsoft.archie.transferArchieItemStorage

ArchieItemStorage


@Serializable(with = ArchieItemStorage.Serializer::class)open class ArchieItemStorage : CommonStorage<ItemResource> , UpdateManager<NbtTag> 

Constructors

ArchieItemStorage

constructor(size: Int, onUpdate: () -> Unit = {})

Types

Serializer


object Serializer : KSerializer<ArchieItemStorage> 

Functions

allowsExtraction


allowsInsertion


createSnapshot


open override fun createSnapshot(): NbtTag

extract


open fun extract(index: Int, resource: ItemResource, amount: Long, simulate: Boolean): Long

open override fun extract(unit: ItemResource, amount: Long, simulate: Boolean): Long

get


open operator override fun get(slot: Int): ArchieItemSlot

getAmount


open fun getAmount(index: Int): Long

getContents


open fun getContents(index: Int): ResourceStack<ItemResource>

getLimit


open fun getLimit(index: Int, resource: ItemResource): Long

getResource


open fun getResource(index: Int): ItemResource

insert


open fun insert(index: Int, resource: ItemResource, amount: Long, simulate: Boolean): Long

open override fun insert(unit: ItemResource, amount: Long, simulate: Boolean): Long

isResourceValid


open fun isResourceValid(index: Int, resource: ItemResource): Boolean

readSnapshot


open override fun readSnapshot(snapshot: NbtTag)

size


open override fun size(): Int

update


open override fun update()