Update Drive Viewer to use EnhancedContainer
This commit is contained in:
parent
c08ea8a43d
commit
566538f8a7
@ -17,6 +17,7 @@ import ru.dbotthepony.mc.otm.capability.MatteryCapability
|
||||
import ru.dbotthepony.mc.otm.capability.energy.ProfiledEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.capability.energy.WorkerEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.EnhancedContainer
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.core.get
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
@ -29,15 +30,16 @@ class DriveViewerBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matte
|
||||
override val energy = ProfiledEnergyStorage(WorkerEnergyStorage(this::energyUpdated, MachinesConfig.DRIVE_VIEWER))
|
||||
val energyConfig = ConfigurableEnergy(energy)
|
||||
|
||||
val container: MatteryContainer = object : MatteryContainer(::markDirtyFast, 1) {
|
||||
override fun setChanged(slot: Int, new: ItemStack, old: ItemStack) {
|
||||
super.setChanged(slot, new, old)
|
||||
val container: EnhancedContainer = object : EnhancedContainer(1) {
|
||||
override fun notifySlotChanged(slot: Int, old: ItemStack) {
|
||||
super.notifySlotChanged(slot, old)
|
||||
markDirtyFast()
|
||||
|
||||
val level = level
|
||||
|
||||
if (level is ServerLevel) {
|
||||
tickList.once {
|
||||
val isPresent = new.getCapability(MatteryCapability.CONDENSATION_DRIVE) != null
|
||||
val isPresent = get(slot).getCapability(MatteryCapability.CONDENSATION_DRIVE) != null
|
||||
var state = this@DriveViewerBlockEntity.blockState.setValue(DriveViewerBlock.DRIVE_PRESENT, isPresent)
|
||||
|
||||
if (!isPresent) {
|
||||
|
@ -12,6 +12,7 @@ import ru.dbotthepony.mc.otm.block.entity.storage.DriveViewerBlockEntity
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryCapability
|
||||
import ru.dbotthepony.mc.otm.capability.drive.IMatteryDrive
|
||||
import ru.dbotthepony.mc.otm.capability.energy.ProfiledEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.container.EnhancedContainer
|
||||
import ru.dbotthepony.mc.otm.container.ItemFilter
|
||||
import ru.dbotthepony.mc.otm.core.immutableList
|
||||
import ru.dbotthepony.mc.otm.core.util.ItemStorageStackSorter
|
||||
@ -36,7 +37,7 @@ class DriveViewerMenu(
|
||||
) : MatteryPoweredMenu(MMenus.DRIVE_VIEWER, containerID, inventory, tile), INetworkedItemViewProvider {
|
||||
override val networkedItemView = NetworkedItemView(inventory.player, this, tile == null)
|
||||
|
||||
val driveSlot = object : MatteryMenuSlot(tile?.container ?: SimpleContainer(1), 0) {
|
||||
val driveSlot = object : MatteryMenuSlot(tile?.container ?: EnhancedContainer(1), 0) {
|
||||
override fun mayPlace(itemStack: ItemStack): Boolean {
|
||||
return itemStack.getCapability(MatteryCapability.CONDENSATION_DRIVE) != null
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user