@@ -29,7 +29,6 @@ import com.lambda.interaction.construction.blueprint.Blueprint.Companion.toStruc
2929import com.lambda.interaction.construction.blueprint.PropagatingBlueprint
3030import com.lambda.interaction.construction.blueprint.StaticBlueprint.Companion.toBlueprint
3131import com.lambda.interaction.construction.blueprint.TickingBlueprint
32- import com.lambda.interaction.construction.context.BreakContext
3332import com.lambda.interaction.construction.context.BuildContext
3433import com.lambda.interaction.construction.result.BreakResult
3534import com.lambda.interaction.construction.result.BuildResult
@@ -140,24 +139,14 @@ class BuildTask @Ta5kBuilder constructor(
140139 if (atMaxPendingInteractions) return @listen
141140 when (bestResult) {
142141 is BreakResult .Break -> {
143- val breakResults = resultsNotBlocked.filterIsInstance<BreakResult .Break >()
144- val requestContexts = arrayListOf<BreakContext >()
145-
146- if (build.breaking.breaksPerTick > 1 ) {
147- breakResults
148- .filter { it.context.instantBreak }
149- .take(emptyPendingInteractionSlots)
150- .let { instantBreakResults ->
151- requestContexts.addAll(instantBreakResults.map { it.context })
152- }
153- }
154-
155- if (requestContexts.isEmpty()) {
156- requestContexts.addAll(breakResults.map { it.context })
157- }
142+ val breakResults = resultsNotBlocked
143+ .filterIsInstance<BreakResult .Break >()
144+ .distinctBy { it.blockPos }
145+ .take(emptyPendingInteractionSlots)
146+ .map { it.context }
158147
159148 breakRequest(
160- requestContexts , pendingInteractions, rotation, hotbar, interactionConfig, inventory, build,
149+ breakResults , pendingInteractions, rotation, hotbar, interactionConfig, inventory, build,
161150 ) {
162151 onStop { breaks++ }
163152 onItemDrop?.let { onItemDrop ->
@@ -171,8 +160,9 @@ class BuildTask @Ta5kBuilder constructor(
171160 .filterIsInstance<PlaceResult .Place >()
172161 .distinctBy { it.blockPos }
173162 .take(emptyPendingInteractionSlots)
163+ .map { it.context }
174164
175- PlaceRequest (placeResults.map { it.context } , build, rotation, hotbar, pendingInteractions) { placements++ }.submit()
165+ PlaceRequest (placeResults, build, rotation, hotbar, pendingInteractions) { placements++ }.submit()
176166 }
177167 is InteractResult .Interact -> {
178168 val interactResults = resultsNotBlocked
0 commit comments