Skip to content

Commit 49f0127

Browse files
committed
moved build task logic to on tick
1 parent 9948b4f commit 49f0127

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

common/src/main/kotlin/com/lambda/task/tasks/BuildTask.kt

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ import com.lambda.interaction.request.breaking.BreakRequest
4646
import com.lambda.interaction.request.hotbar.HotbarConfig
4747
import com.lambda.interaction.request.placing.PlaceRequest
4848
import com.lambda.interaction.request.rotation.RotationConfig
49-
import com.lambda.interaction.request.rotation.RotationManager.onRotate
5049
import com.lambda.module.modules.client.TaskFlowModule
5150
import com.lambda.task.Task
5251
import com.lambda.util.BaritoneUtils
@@ -92,8 +91,8 @@ class BuildTask @Ta5kBuilder constructor(
9291
}
9392

9493
init {
95-
onRotate {
96-
if (collectDrops()) return@onRotate
94+
listen<TickEvent.Pre> {
95+
if (collectDrops()) return@listen
9796

9897
// ToDo: Simulate for each pair player positions that work
9998
val results = blueprint.simulate(player.eyePos, interact, rotation, inventory, build)
@@ -107,25 +106,25 @@ class BuildTask @Ta5kBuilder constructor(
107106
.filter { result -> pendingInteractions.none { it.expectedPos == result.blockPos } }
108107
.sorted()
109108

110-
val bestResult = resultsNotBlocked.firstOrNull() ?: return@onRotate
109+
val bestResult = resultsNotBlocked.firstOrNull() ?: return@listen
111110
when (bestResult) {
112111
is BuildResult.Done,
113112
is BuildResult.Ignored,
114113
is BuildResult.Unbreakable,
115114
is BuildResult.Restricted,
116115
is BuildResult.NoPermission -> {
117-
if (pendingInteractions.isNotEmpty()) return@onRotate
116+
if (pendingInteractions.isNotEmpty()) return@listen
118117
if (blueprint is PropagatingBlueprint) {
119118
blueprint.next()
120-
return@onRotate
119+
return@listen
121120
}
122121

123122
if (finishOnDone) success()
124123
}
125124

126125
is BuildResult.NotVisible,
127126
is PlaceResult.NoIntegrity -> {
128-
if (!build.pathing) return@onRotate
127+
if (!build.pathing) return@listen
129128
val sim = blueprint.simulation(interact, rotation, inventory, build)
130129
val goal = BuildGoal(sim, player.blockPos)
131130
BaritoneUtils.setGoalAndPath(goal)
@@ -136,7 +135,7 @@ class BuildTask @Ta5kBuilder constructor(
136135
}
137136

138137
is BuildResult.Contextual -> {
139-
if (atMaxPendingInteractions) return@onRotate
138+
if (atMaxPendingInteractions) return@listen
140139
when (bestResult) {
141140
is BreakResult.Break -> {
142141
val breakResults = resultsNotBlocked
@@ -159,7 +158,7 @@ class BuildTask @Ta5kBuilder constructor(
159158
onItemDrop = onItemDrop
160159
)
161160
)
162-
return@onRotate
161+
return@listen
163162
}
164163
}
165164

@@ -170,7 +169,7 @@ class BuildTask @Ta5kBuilder constructor(
170169
onItemDrop = onItemDrop
171170
)
172171
build.breakSettings.request(request)
173-
return@onRotate
172+
return@listen
174173
}
175174
is PlaceResult.Place -> {
176175
val takeCount = build.placeSettings

0 commit comments

Comments
 (0)