Patient Stalling
- Items on belts now stall under empty-handed Deployers targeting them
This commit is contained in:
parent
994fe29021
commit
fa7039a04a
1 changed files with 17 additions and 2 deletions
|
@ -45,6 +45,11 @@ public class BeltDeployerCallbacks {
|
|||
if (deployerTileEntity.redstoneLocked)
|
||||
return ProcessingResult.PASS;
|
||||
|
||||
DeployerFakePlayer player = deployerTileEntity.getPlayer();
|
||||
ItemStack held = player == null ? ItemStack.EMPTY : player.getMainHandItem();
|
||||
|
||||
if (held.isEmpty())
|
||||
return ProcessingResult.HOLD;
|
||||
if (deployerTileEntity.getRecipe(s.stack) == null)
|
||||
return ProcessingResult.PASS;
|
||||
|
||||
|
@ -60,6 +65,12 @@ public class BeltDeployerCallbacks {
|
|||
BlockState blockState = deployerTileEntity.getBlockState();
|
||||
if (!blockState.hasProperty(FACING) || blockState.getValue(FACING) != Direction.DOWN)
|
||||
return ProcessingResult.PASS;
|
||||
|
||||
DeployerFakePlayer player = deployerTileEntity.getPlayer();
|
||||
ItemStack held = player == null ? ItemStack.EMPTY : player.getMainHandItem();
|
||||
if (held.isEmpty())
|
||||
return ProcessingResult.HOLD;
|
||||
|
||||
IRecipe<?> recipe = deployerTileEntity.getRecipe(s.stack);
|
||||
if (recipe == null)
|
||||
return ProcessingResult.PASS;
|
||||
|
@ -92,6 +103,10 @@ public class BeltDeployerCallbacks {
|
|||
copy.angle = centered ? 180 : Create.RANDOM.nextInt(360);
|
||||
return copy;
|
||||
})
|
||||
.map(t -> {
|
||||
t.locked = false;
|
||||
return t;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
|
||||
TransportedItemStack left = transported.copy();
|
||||
|
|
Loading…
Reference in a new issue