Skip to content

Commit c80b96e

Browse files
committed
Clean up tunnel cap for release
1 parent 4f6a2e5 commit c80b96e

File tree

2 files changed

+12
-27
lines changed

2 files changed

+12
-27
lines changed

src/main/java/dev/compactmods/machines/core/Tunnels.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public static TunnelDefinition getDefinition(ResourceLocation id) {
5555
// ================================================================================================================
5656
// TUNNEL TYPE DEFINITIONS
5757
// ================================================================================================================
58-
public static final RegistryObject<TunnelDefinition> ITEM_IN_DEF = DEFINITIONS.register("item_in", ItemImportTunnel::new);
58+
// public static final RegistryObject<TunnelDefinition> ITEM_IN_DEF = DEFINITIONS.register("item_in", ItemImportTunnel::new);
5959

6060
// ================================================================================================================
6161
// TUNNEL BLOCKS / TILES

src/main/java/dev/compactmods/machines/rooms/capability/RoomChunkCapabilities.java

Lines changed: 11 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -10,56 +10,41 @@
1010
import net.minecraftforge.common.util.LazyOptional;
1111

1212
public class RoomChunkCapabilities implements IRoomCapabilities {
13-
private final HashMap<TunnelDefinition, HashSet<Direction>> capabilities;
14-
private final HashMap<TunnelDefinition, HashMap<Direction, LazyOptional<?>>> sidedCache;
13+
private final HashMap<TunnelDefinition, HashSet<Direction>> placedTunnels;
14+
// private final HashMap<TunnelDefinition, HashMap<T, TunnelSideCache<T>>> sidedCache;
1515

1616
public RoomChunkCapabilities(LevelChunk chunk) {
17-
this.capabilities = new HashMap<>();
18-
this.sidedCache = new HashMap<>();
17+
this.placedTunnels = new HashMap<>();
18+
// this.sidedCache = new HashMap<>();
1919
}
2020

2121
@Override
2222
public <CapType, TunnType extends TunnelDefinition> void addCapability(TunnType tunnel, Capability<CapType> capability, CapType instance, Direction side) {
23-
capabilities.putIfAbsent(tunnel, new HashSet<>());
24-
sidedCache.putIfAbsent(tunnel, new HashMap<>());
23+
placedTunnels.putIfAbsent(tunnel, new HashSet<>());
2524

26-
var sides = capabilities.get(tunnel);
25+
var sides = placedTunnels.get(tunnel);
2726
if (!sides.isEmpty() && sides.contains(side))
2827
return;
2928

3029
sides.add(side);
31-
var cache = sidedCache.get(tunnel);
32-
cache.put(side, LazyOptional.of(() -> instance));
3330
}
3431

3532
@Override
3633
public <CapType, TunnType extends TunnelDefinition> void removeCapability(TunnType tunnel, Capability<CapType> capability, Direction side) {
37-
if (!capabilities.containsKey(tunnel))
34+
if (!placedTunnels.containsKey(tunnel))
3835
return;
3936

40-
var sides = capabilities.get(tunnel);
41-
if (sides.contains(side)) {
42-
sides.remove(side);
43-
if (sidedCache.containsKey(tunnel)) {
44-
var cache = sidedCache.get(tunnel);
45-
if (cache.containsKey(side)) {
46-
cache.get(side).invalidate();
47-
cache.remove(side);
48-
}
49-
}
50-
}
37+
var sides = placedTunnels.get(tunnel);
38+
sides.remove(side);
5139
}
5240

5341
@Override
5442
public <CapType, TunnType extends TunnelDefinition> LazyOptional<CapType> getCapability(TunnType tunnel, Capability<CapType> capability, Direction side) {
5543
if (side == null)
5644
return LazyOptional.empty();
5745

58-
if (capabilities.containsKey(tunnel)) {
59-
// get sides tunnel applied to
60-
var c = capabilities.get(tunnel);
61-
if (c.contains(side) && sidedCache.containsKey(tunnel))
62-
return sidedCache.get(tunnel).get(side).cast();
46+
if (placedTunnels.containsKey(tunnel) && placedTunnels.get(tunnel).contains(side)) {
47+
// TODO: delegate capability lookup back to tunnel definition, with storage
6348
}
6449

6550
return LazyOptional.empty();

0 commit comments

Comments
 (0)