Skip to content

Commit dfb5fb2

Browse files
committed
Switch tunnels to look at Capability<T> instances
1 parent b0e0fa3 commit dfb5fb2

File tree

4 files changed

+8
-9
lines changed

4 files changed

+8
-9
lines changed

src/api/java/dev/compactmods/machines/api/tunnels/capability/ITunnelCapabilityProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
public interface ITunnelCapabilityProvider<Tunnel extends ITunnel> {
1010

11-
ImmutableSet<Class> getSupportedCapabilities();
11+
ImmutableSet<Capability<?>> getSupportedCapabilities();
1212

1313
/**
1414
* Fetch a capability instance from a tunnel.

src/main/java/dev/compactmods/machines/tunnel/definitions/ItemTunnel.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,18 +32,16 @@ public int getTunnelIndicatorColor() {
3232

3333
/**
3434
* Handle initialization tasks for the tunnel's data here.
35-
*
36-
* @param tunnel The location of the new tunnel being created.
3735
*/
3836
@Override
3937
public ITunnel newInstance(BlockPos pos, Direction side) {
4038
return new ItemStorage(10, side);
4139
}
4240

4341
@Override
44-
public ImmutableSet<Class> getSupportedCapabilities() {
45-
return ImmutableSet.<Class>builder()
46-
.add(IItemHandler.class)
42+
public ImmutableSet<Capability<?>> getSupportedCapabilities() {
43+
return ImmutableSet.<Capability<?>>builder()
44+
.add(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY)
4745
.build();
4846
}
4947

src/main/java/dev/compactmods/machines/tunnel/graph/TunnelConnectionGraph.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import net.minecraft.nbt.NbtOps;
1919
import net.minecraft.nbt.Tag;
2020
import net.minecraft.resources.ResourceLocation;
21+
import net.minecraftforge.common.capabilities.Capability;
2122
import net.minecraftforge.common.util.INBTSerializable;
2223

2324
import javax.annotation.Nonnull;
@@ -362,7 +363,7 @@ public Stream<BlockPos> getTunnelsForSide(Direction side) {
362363
.map(BlockPos::immutable);
363364
}
364365

365-
public <T> Stream<BlockPos> getTunnelsSupporting(int machine, Direction side, Class<T> capability) {
366+
public <T> Stream<BlockPos> getTunnelsSupporting(int machine, Direction side, Capability<T> capability) {
366367
final IGraphNode node = machines.get(machine);
367368
if (node == null) return Stream.empty();
368369

src/test/java/dev/compactmods/machines/test/tunnel/TunnelGraphTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import net.minecraft.nbt.NbtOps;
1515
import net.minecraftforge.gametest.GameTestHolder;
1616
import net.minecraftforge.gametest.PrefixGameTestTemplate;
17-
import net.minecraftforge.items.IItemHandler;
17+
import net.minecraftforge.items.CapabilityItemHandler;
1818

1919
import javax.annotation.Nonnull;
2020
import java.util.UUID;
@@ -76,7 +76,7 @@ public static void canFetchSupportingTunnelsOnSide(final GameTestHelper test) {
7676
graph.registerTunnel(BlockPos.ZERO.above(), Tunnels.ITEM_IN_DEF.get(), 1, Direction.SOUTH);
7777
graph.registerTunnel(BlockPos.ZERO.below(), Tunnels.UNKNOWN.get(), 1, Direction.NORTH);
7878

79-
final var positions = graph.getTunnelsSupporting(1, Direction.NORTH, IItemHandler.class)
79+
final var positions = graph.getTunnelsSupporting(1, Direction.NORTH, CapabilityItemHandler.ITEM_HANDLER_CAPABILITY)
8080
.collect(Collectors.toSet());
8181

8282
if(positions.isEmpty())

0 commit comments

Comments
 (0)