Skip to content

Commit

Permalink
fix mess of terrible suppliers
Browse files Browse the repository at this point in the history
  • Loading branch information
IThundxr committed Jun 7, 2024
1 parent aa71e42 commit 8f43e9a
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
import com.simibubi.create.compat.computercraft.AbstractComputerBehaviour;
import com.simibubi.create.foundation.blockEntity.SmartBlockEntity;
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
import com.tterrag.registrate.util.nullness.NonNullSupplier;
import dan200.computercraft.api.peripheral.IPeripheral;
import dev.ithundxr.createnumismatics.compat.computercraft.implementation.peripherals.BrassDepositorPeripheral;
import dev.ithundxr.createnumismatics.compat.computercraft.implementation.peripherals.VendorPeripheral;
Expand All @@ -30,8 +29,10 @@
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.Level;

import java.util.function.Supplier;

public class ComputerBehaviour extends AbstractComputerBehaviour {
NonNullSupplier<IPeripheral> peripheralSupplier;
Supplier<IPeripheral> peripheralSupplier;

public static IPeripheral peripheralProvider(Level level, BlockPos blockPos) {
AbstractComputerBehaviour behavior = BlockEntityBehaviour.get(level, blockPos, AbstractComputerBehaviour.TYPE);
Expand All @@ -45,7 +46,7 @@ public ComputerBehaviour(SmartBlockEntity te) {
this.peripheralSupplier = getPeripheralFor(te);
}

public static NonNullSupplier<IPeripheral> getPeripheralFor(SmartBlockEntity be) {
public static Supplier<IPeripheral> getPeripheralFor(SmartBlockEntity be) {
if (be instanceof BrassDepositorBlockEntity scbe)
return () -> new BrassDepositorPeripheral(scbe);
if (be instanceof VendorBlockEntity scbe)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@

import com.simibubi.create.compat.computercraft.AbstractComputerBehaviour;
import com.simibubi.create.foundation.blockEntity.SmartBlockEntity;
import com.tterrag.registrate.util.nullness.NonNullSupplier;
import dan200.computercraft.api.peripheral.IPeripheral;
import dev.ithundxr.createnumismatics.compat.computercraft.implementation.ComputerBehaviour;
import net.minecraftforge.common.capabilities.Capability;
Expand All @@ -30,6 +29,8 @@
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;

import java.util.function.Supplier;

@Mixin(ComputerBehaviour.class)
public class ComputerBehaviourCapabilities extends AbstractComputerBehaviour {
public ComputerBehaviourCapabilities(SmartBlockEntity te) {
Expand All @@ -38,7 +39,8 @@ public ComputerBehaviourCapabilities(SmartBlockEntity te) {

private static final Capability<IPeripheral> RAILWAYS$PERIPHERAL_CAPABILITY = CapabilityManager.get(new CapabilityToken<>() {});
LazyOptional<IPeripheral> railways$peripheral;
@Shadow NonNullSupplier<IPeripheral> peripheralSupplier;
@Shadow
Supplier<IPeripheral> peripheralSupplier;

@Override
public <T> boolean isPeripheralCap(Capability<T> cap) {
Expand Down

0 comments on commit 8f43e9a

Please sign in to comment.