Skip to content

Commit 7eacac3

Browse files
committed
Remove deprecated CSG method, clean up Rooms
1 parent d6bbc14 commit 7eacac3

File tree

2 files changed

+1
-100
lines changed

2 files changed

+1
-100
lines changed

src/main/java/dev/compactmods/machines/room/Rooms.java

Lines changed: 1 addition & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,10 @@
33
import com.mojang.authlib.GameProfile;
44
import dev.compactmods.machines.CompactMachines;
55
import dev.compactmods.machines.api.dimension.CompactDimension;
6-
import dev.compactmods.machines.api.location.IDimensionalBlockPosition;
76
import dev.compactmods.machines.api.location.IDimensionalPosition;
87
import dev.compactmods.machines.api.room.RoomSize;
98
import dev.compactmods.machines.config.ServerConfig;
109
import dev.compactmods.machines.dimension.MissingDimensionException;
11-
import dev.compactmods.machines.location.LevelBlockPosition;
12-
import dev.compactmods.machines.machine.graph.DimensionMachineGraph;
1310
import dev.compactmods.machines.room.data.CompactRoomData;
1411
import dev.compactmods.machines.room.exceptions.NonexistentRoomException;
1512
import dev.compactmods.machines.util.CompactStructureGenerator;
@@ -22,10 +19,8 @@
2219
import net.minecraft.world.phys.Vec3;
2320

2421
import javax.naming.OperationNotSupportedException;
25-
import java.util.Objects;
2622
import java.util.Optional;
2723
import java.util.UUID;
28-
import java.util.stream.Stream;
2924

3025
public class Rooms {
3126
public static ChunkPos createNew(MinecraftServer serv, RoomSize size, UUID owner) throws MissingDimensionException {
@@ -41,7 +36,7 @@ public static ChunkPos createNew(MinecraftServer serv, RoomSize size, UUID owner
4136
BlockPos newCenter = MathUtil.getCenterWithY(location, ServerConfig.MACHINE_FLOOR_Y.get());
4237

4338
// Generate a new machine room
44-
CompactStructureGenerator.generateCompactStructure(compactWorld, size, newCenter);
39+
CompactStructureGenerator.generateCompactStructure(compactWorld, size.toVec3(), newCenter);
4540

4641
ChunkPos machineChunk = new ChunkPos(newCenter);
4742
try {
@@ -58,87 +53,6 @@ public static ChunkPos createNew(MinecraftServer serv, RoomSize size, UUID owner
5853
return machineChunk;
5954
}
6055

61-
// TODO - Revisit with furnace recipe
62-
// public static boolean destroy(MinecraftServer server, ChunkPos room) throws MissingDimensionException, NonexistentRoomException {
63-
// final var compactDim = server.getLevel(Registration.COMPACT_DIMENSION);
64-
// if (compactDim == null)
65-
// throw new MissingDimensionException();
66-
//
67-
// var roomData = CompactRoomData.get(compactDim);
68-
// if (!roomData.isRegistered(room)) {
69-
// throw new NonexistentRoomException(room);
70-
// }
71-
//
72-
// final var roomBounds = roomData.getBounds(room);
73-
// final var innerBounds = roomBounds.deflate(1);
74-
//
75-
// final var states = compactDim.getBlockStates(innerBounds)
76-
// .collect(Collectors.toSet());
77-
//
78-
// final var nonAir = states.stream()
79-
// .filter(state -> !state.isAir())
80-
// .findAny();
81-
//
82-
// if (nonAir.isPresent()) {
83-
// CompactMachines.LOGGER.error("Refusing to delete room at {}; non-air blocks exist inside the room. First match: {}", room, nonAir.get());
84-
// return false;
85-
// }
86-
//
87-
// // clear tunnel connection info
88-
// final var tunnels = RoomTunnelData.getFile(server, room);
89-
// final var filename = RoomTunnelData.getDataFilename(room);
90-
// if (!tunnels.delete()) {
91-
// CompactMachines.LOGGER.warn("Could not delete tunnel data for room {}; clearing the connection graph as an alternative.", room);
92-
// CompactMachines.LOGGER.warn("Data file to delete: {}", filename);
93-
//
94-
// var td = RoomTunnelData.forRoom(server, room);
95-
// td.getGraph().clear();
96-
// td.setDirty();
97-
// } else {
98-
// // File deletion successful, delete cached data
99-
// final var compactDataCache = compactDim.getDataStorage().cache;
100-
// compactDataCache.remove(filename);
101-
// }
102-
//
103-
// // reset everything for the room boundary
104-
// BlockPos.betweenClosedStream(roomBounds.inflate(1))
105-
// .forEach(p -> compactDim.setBlock(p, Blocks.AIR.defaultBlockState(), Block.UPDATE_ALL));
106-
//
107-
// // Remove room registration
108-
// roomData.remove(room);
109-
//
110-
// // Disconnect all machines
111-
// var conns = MachineToRoomConnections.forDimension(server);
112-
// var d = CompactMachineData.get(server);
113-
//
114-
// var connected = conns.getMachinesFor(room);
115-
// for (int mid : connected) {
116-
// var location = d.getMachineLocation(mid);
117-
// location.ifPresent(p -> {
118-
// var pos = p.getBlockPosition();
119-
// var l = p.level(server);
120-
// if (l.getBlockEntity(pos) instanceof TunnelWallEntity tunn) {
121-
// tunn.disconnect();
122-
// }
123-
// });
124-
// }
125-
//
126-
// conns.unregisterRoom(room);
127-
// return true;
128-
// }
129-
130-
public static Stream<IDimensionalBlockPosition> getConnectedMachines(MinecraftServer server, ChunkPos room) {
131-
return server.levelKeys().stream()
132-
.map(server::getLevel)
133-
.filter(Objects::nonNull)
134-
.filter(sl -> sl.getDataStorage().cache.containsKey(DimensionMachineGraph.DATA_KEY))
135-
.flatMap(sl -> {
136-
final var graph = DimensionMachineGraph.forDimension(sl);
137-
return graph.getMachinesFor(room).stream()
138-
.map(bp -> new LevelBlockPosition(sl.dimension(), bp));
139-
});
140-
}
141-
14256
public static RoomSize sizeOf(MinecraftServer server, ChunkPos room) throws NonexistentRoomException {
14357
final var compactDim = server.getLevel(CompactDimension.LEVEL_KEY);
14458
return CompactRoomData.get(compactDim)

src/main/java/dev/compactmods/machines/util/CompactStructureGenerator.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -125,17 +125,4 @@ public static BlockPos cornerFromSize(Vec3i dimensions, BlockPos cubeFloorCenter
125125

126126
return cubeFloorCenter.offset(offset);
127127
}
128-
129-
/**
130-
* Generates a machine "internal" structure in a world via a machine size and a central point.
131-
*
132-
* @param world
133-
* @param size
134-
* @param cubeFloorCenter
135-
*/
136-
@Deprecated(forRemoval = true)
137-
public static void generateCompactStructure(LevelAccessor world, RoomSize size, BlockPos cubeFloorCenter) {
138-
int s = size.getInternalSize();
139-
generateCompactStructure(world, new Vec3i(s, s, s), cubeFloorCenter);
140-
}
141128
}

0 commit comments

Comments
 (0)