diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt index 248f75ff8..c5272967c 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt @@ -30,9 +30,16 @@ class PainterBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDe private val dyeStored = EnumMap(DyeColor::class.java) val dyeStoredView: Map = Collections.unmodifiableMap(dyeStored) + var isBulk = false + set(value) { + field = value + markDirtyFast() + } + init { addDroppableContainer(dyeInput) savetables.stateful(dyeInput, INVENTORY_KEY) + savetables.bool(::isBulk) } fun takeDyes(dyes: Map) { diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/capability/MatteryPlayerCapability.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/capability/MatteryPlayerCapability.kt index 47f9e8b4a..6d7ed4b3b 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/capability/MatteryPlayerCapability.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/capability/MatteryPlayerCapability.kt @@ -427,8 +427,6 @@ class MatteryPlayerCapability(val ply: Player) : ICapabilityProvider, INBTSerial private var nextDischargeHurt = 20 private var nextHealTick = 0 - var painterBulkCrafting = false - // players tracking us // stored separately because EntityTracker and ChunkMup, etc are buried deep and // getting them unburied will be a very work intense task @@ -568,7 +566,6 @@ class MatteryPlayerCapability(val ply: Player) : ICapabilityProvider, INBTSerial savetables.int(::ticksIExist) savetables.int(::iteration) - savetables.bool(::painterBulkCrafting) savetables.bool(::shouldSendIteration) savetables.bool(::wasInLiquid) savetables.bool(::isAndroid) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/menu/decorative/PainterMenu.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/menu/decorative/PainterMenu.kt index dcae8129a..4bea5d4dd 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/menu/decorative/PainterMenu.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/menu/decorative/PainterMenu.kt @@ -44,7 +44,7 @@ class PainterMenu( private var lastRecipe: PainterRecipe? = null var selectedRecipe by mSynchronizer.Field(null, ResourceLocationValueCodec.nullable).also { it.addListener { rescan() } } - val isBulk = BooleanInputWithFeedback(this, true, player.matteryPlayer!!::painterBulkCrafting) + val isBulk = BooleanInputWithFeedback(this, tile?.let { it::isBulk }) val selectRecipe = PlayerInput(ResourceLocationValueCodec) { selectedRecipe = it