Skip to content

Commit 681e953

Browse files
committed
fix: make machine operator forget old extract block when setting new machine
Closes #877
1 parent ae85987 commit 681e953

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/main/java/com/github/klikli_dev/occultism/common/item/spirit/BookOfCallingItem.java

+6-3
Original file line numberDiff line numberDiff line change
@@ -399,9 +399,12 @@ public boolean setSpiritManagedMachine(Player player, Level world, BlockPos pos,
399399

400400
if (boundSpirit.get().getJob().isPresent() &&
401401
boundSpirit.get().getJob().get() instanceof ManageMachineJob manageMachine) {
402-
//get the existing extract reference here, or if null reuse insert
403-
var oldExtractBlockEntity = manageMachine.getExtractBlockEntity();
404-
MachineReference newReference = MachineReference.from(oldExtractBlockEntity != null ? oldExtractBlockEntity : managedMachineBlockEntity, managedMachineBlockEntity);
402+
403+
//Old code:
404+
// //get the existing extract reference here, or if null reuse insert
405+
// var oldExtractBlockEntity = manageMachine.getExtractBlockEntity();
406+
//now we just use the new machine as extract target, because otherwise we would insert into the new machine, but extract from the old
407+
MachineReference newReference = MachineReference.from(managedMachineBlockEntity, managedMachineBlockEntity);
405408
if (manageMachine.getManagedMachine() == null ||
406409
!manageMachine.getManagedMachine().insertGlobalPos.equals(newReference.insertGlobalPos)) {
407410
//if we are setting a completely new machine, just overwrite the reference.

0 commit comments

Comments
 (0)