Skip to content

Commit 914c226

Browse files
committed
nits
1 parent 386329b commit 914c226

File tree

7 files changed

+38
-25
lines changed

7 files changed

+38
-25
lines changed

src/main/java/com/lambda/mixin/entity/ClientPlayInteractionManagerMixin.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,18 @@
2020
import com.lambda.event.EventFlow;
2121
import com.lambda.event.events.InventoryEvent;
2222
import com.lambda.event.events.PlayerEvent;
23+
import com.lambda.interaction.managers.inventory.InventoryManager;
24+
import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod;
25+
import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
2326
import net.minecraft.client.network.ClientPlayerEntity;
2427
import net.minecraft.client.network.ClientPlayerInteractionManager;
28+
import net.minecraft.client.recipebook.ClientRecipeBook;
29+
import net.minecraft.client.world.ClientWorld;
2530
import net.minecraft.entity.Entity;
2631
import net.minecraft.entity.player.PlayerEntity;
2732
import net.minecraft.entity.player.PlayerInventory;
2833
import net.minecraft.screen.slot.SlotActionType;
34+
import net.minecraft.stat.StatHandler;
2935
import net.minecraft.util.ActionResult;
3036
import net.minecraft.util.Hand;
3137
import net.minecraft.util.hit.BlockHitResult;
@@ -42,7 +48,6 @@
4248

4349
@Mixin(ClientPlayerInteractionManager.class)
4450
public class ClientPlayInteractionManagerMixin {
45-
4651
@Shadow
4752
public float currentBreakingProgress;
4853

@@ -115,4 +120,11 @@ private void updateBlockBreakingProgressPre(BlockPos pos, Direction side, Callba
115120
private void cancelBlockBreakingPre(CallbackInfo ci) {
116121
if (EventFlow.post(new PlayerEvent.Breaking.Cancel(currentBreakingProgress)).isCanceled()) ci.cancel();
117122
}
123+
124+
@WrapMethod(method = "createPlayer(Lnet/minecraft/client/world/ClientWorld;Lnet/minecraft/stat/StatHandler;Lnet/minecraft/client/recipebook/ClientRecipeBook;ZZ)Lnet/minecraft/client/network/ClientPlayerEntity;")
125+
private ClientPlayerEntity injectCreatePlayer(ClientWorld world, StatHandler statHandler, ClientRecipeBook recipeBook, boolean lastSneaking, boolean lastSprinting, Operation<ClientPlayerEntity> original) {
126+
var player = original.call(world, statHandler, recipeBook, lastSneaking, lastSprinting);
127+
InventoryManager.INSTANCE.setScreenHandler(player.playerScreenHandler);
128+
return player;
129+
}
118130
}

src/main/kotlin/com/lambda/config/AutomationConfig.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ import com.lambda.config.groups.BreakSettings
2222
import com.lambda.config.groups.BuildSettings
2323
import com.lambda.config.groups.EatSettings
2424
import com.lambda.config.groups.HotbarSettings
25-
import com.lambda.config.groups.InventorySettings
2625
import com.lambda.config.groups.InteractSettings
26+
import com.lambda.config.groups.InventorySettings
2727
import com.lambda.config.groups.RotationSettings
2828
import com.lambda.context.Automated
2929
import com.lambda.event.events.onStaticRender
@@ -39,7 +39,6 @@ open class AutomationConfig(
3939
enum class Group(override val displayName: String) : NamedEnum {
4040
Build("Build"),
4141
Break("Break"),
42-
Place("Place"),
4342
Interact("Interact"),
4443
Rotation("Rotation"),
4544
Inventory("Inventory"),
@@ -51,7 +50,7 @@ open class AutomationConfig(
5150

5251
override val buildConfig = BuildSettings(this, Group.Build)
5352
override val breakConfig = BreakSettings(this, Group.Break)
54-
override val interactConfig = InteractSettings(this, Group.Place)
53+
override val interactConfig = InteractSettings(this, Group.Interact)
5554
override val rotationConfig = RotationSettings(this, Group.Rotation)
5655
override val inventoryConfig = InventorySettings(this, Group.Inventory)
5756
override val hotbarConfig = HotbarSettings(this, Group.Hotbar)

src/main/kotlin/com/lambda/interaction/managers/breaking/BreakRequest.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ package com.lambda.interaction.managers.breaking
2020
import com.lambda.context.Automated
2121
import com.lambda.context.AutomatedSafeContext
2222
import com.lambda.context.SafeContext
23-
import com.lambda.interaction.construction.simulation.result.BuildResult
24-
import com.lambda.interaction.construction.simulation.result.Dependent
25-
import com.lambda.interaction.construction.simulation.result.results.BreakResult
2623
import com.lambda.interaction.construction.simulation.BuildSimulator.simulate
2724
import com.lambda.interaction.construction.simulation.context.BreakContext
2825
import com.lambda.interaction.construction.simulation.context.BuildContext
26+
import com.lambda.interaction.construction.simulation.result.BuildResult
27+
import com.lambda.interaction.construction.simulation.result.Dependent
28+
import com.lambda.interaction.construction.simulation.result.results.BreakResult
2929
import com.lambda.interaction.construction.verify.TargetState
3030
import com.lambda.interaction.managers.LogContext
3131
import com.lambda.interaction.managers.LogContext.Companion.LogContextBuilder
@@ -162,7 +162,8 @@ data class BreakRequest private constructor(
162162
) = asSequence()
163163
.map { if (it is Dependent) it.lastDependency else it }
164164
.filterIsInstance<BreakResult.Break>()
165-
.map { it.context }
165+
.sorted()
166+
.map { it.context }
166167
.toSet()
167168
.takeIf { it.isNotEmpty() }
168169
?.let { automated.breakRequest(it, pendingInteractions, nowOrNothing, builder) }

src/main/kotlin/com/lambda/interaction/managers/interacting/InteractRequest.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ data class InteractRequest private constructor(
8989
) = asSequence()
9090
.map { if (it is Dependent) it.lastDependency else it }
9191
.filterIsInstance<InteractResult.Interact>()
92-
.map { it.context }
92+
.sorted()
93+
.map { it.context }
9394
.toSet()
9495
.takeIf { it.isNotEmpty() }
9596
?.let { automated.interactRequest(it, pendingInteractions, nowOrNothing, builder) }

src/main/kotlin/com/lambda/interaction/managers/inventory/InventoryManager.kt

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ import com.lambda.event.events.UpdateManagerEvent
2727
import com.lambda.event.listener.SafeListener.Companion.listen
2828
import com.lambda.interaction.managers.Logger
2929
import com.lambda.interaction.managers.Manager
30+
import com.lambda.interaction.managers.interacting.InteractManager
3031
import com.lambda.interaction.managers.inventory.InventoryManager.actions
3132
import com.lambda.interaction.managers.inventory.InventoryManager.activeRequest
3233
import com.lambda.interaction.managers.inventory.InventoryManager.alteredSlots
3334
import com.lambda.interaction.managers.inventory.InventoryManager.processActiveRequest
34-
import com.lambda.interaction.managers.interacting.InteractManager
3535
import com.lambda.module.hud.ManagerDebugLoggers.inventoryManagerLogger
3636
import com.lambda.threading.runSafe
3737
import com.lambda.util.collections.LimitedDecayQueue
@@ -61,9 +61,9 @@ object InventoryManager : Manager<InventoryRequest>(
6161
private var alteredSlots = LimitedDecayQueue<InventoryChange>(Int.MAX_VALUE, DEFAULT.desyncTimeout * 50L)
6262
private var alteredPlayerSlots = LimitedDecayQueue<InventoryChange>(Int.MAX_VALUE, DEFAULT.desyncTimeout * 50L)
6363

64-
private var screenHandler: ScreenHandler? = null
64+
var screenHandler: ScreenHandler? = null
6565
set(value) {
66-
if (value != null && field?.syncId != value.syncId) {
66+
if (value != null) {
6767
alteredSlots.clear()
6868
slots = getStacks(value.slots)
6969
}
@@ -248,9 +248,17 @@ object InventoryManager : Manager<InventoryRequest>(
248248
}
249249
}
250250

251-
if (!matches) player.playerScreenHandler.setStackInSlot(packet.slot, packet.revision, itemStack)
251+
player.playerScreenHandler.setStackInSlot(
252+
packet.slot,
253+
packet.revision,
254+
if (!matches) itemStack else player.playerScreenHandler.getSlot(packet.slot).stack
255+
)
252256
} else if (packet.syncId == player.currentScreenHandler.syncId && (packet.syncId != 0 || !bl))
253-
if (!matches) player.currentScreenHandler.setStackInSlot(packet.slot, packet.revision, itemStack)
257+
player.currentScreenHandler.setStackInSlot(
258+
packet.slot,
259+
packet.revision,
260+
if (!matches) itemStack else player.playerScreenHandler.getSlot(packet.slot).stack
261+
)
254262

255263
if (mc.currentScreen is CreativeInventoryScreen) {
256264
player.playerScreenHandler.setReceivedStack(packet.slot, itemStack)

src/main/kotlin/com/lambda/module/modules/player/Nuker.kt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
package com.lambda.module.modules.player
1919

2020
import com.lambda.config.AutomationConfig.Companion.setDefaultAutomationConfig
21-
import com.lambda.config.applyEdits
2221
import com.lambda.interaction.BaritoneManager
2322
import com.lambda.interaction.construction.blueprint.TickingBlueprint.Companion.tickingBlueprint
2423
import com.lambda.interaction.construction.verify.TargetState
@@ -47,11 +46,7 @@ object Nuker : Module(
4746
private var task: Task<*>? = null
4847

4948
init {
50-
setDefaultAutomationConfig {
51-
applyEdits {
52-
hideGroup(interactConfig)
53-
}
54-
}
49+
setDefaultAutomationConfig()
5550

5651
onEnable {
5752
task = tickingBlueprint {

src/main/kotlin/com/lambda/module/modules/player/PacketMine.kt

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ import com.lambda.event.events.PlayerEvent
2424
import com.lambda.event.events.TickEvent
2525
import com.lambda.event.events.onStaticRender
2626
import com.lambda.event.listener.SafeListener.Companion.listen
27+
import com.lambda.interaction.construction.simulation.BuildSimulator.simulate
2728
import com.lambda.interaction.construction.simulation.context.BreakContext
2829
import com.lambda.interaction.construction.simulation.context.BuildContext
2930
import com.lambda.interaction.construction.simulation.result.results.BreakResult
30-
import com.lambda.interaction.construction.simulation.BuildSimulator.simulate
3131
import com.lambda.interaction.construction.verify.TargetState
3232
import com.lambda.interaction.managers.breaking.BreakConfig
3333
import com.lambda.interaction.managers.breaking.BreakRequest.Companion.breakRequest
@@ -119,10 +119,7 @@ object PacketMine : Module(
119119
attackedThisTick = false
120120
}
121121

122-
listen<PlayerEvent.Attack.Block> {
123-
it.cancel()
124-
}
125-
122+
listen<PlayerEvent.Attack.Block> { it.cancel() }
126123
listen<PlayerEvent.Breaking.Update> { event ->
127124
event.cancel()
128125
val pos = event.pos

0 commit comments

Comments
 (0)