Skip to content

Commit 8ee6391

Browse files
committed
Remove ChunkLightStorage reflection
1 parent 7700afb commit 8ee6391

1 file changed

Lines changed: 3 additions & 21 deletions

File tree

common/src/main/java/com/viaversion/viabackwards/protocol/v1_14to1_13_2/storage/ChunkLightStorage.java

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -18,26 +18,19 @@
1818
package com.viaversion.viabackwards.protocol.v1_14to1_13_2.storage;
1919

2020
import com.viaversion.viaversion.api.connection.StorableObject;
21-
import java.lang.reflect.Constructor;
22-
import java.lang.reflect.InvocationTargetException;
21+
import com.viaversion.viaversion.libs.fastutil.longs.Long2ObjectMap;
22+
import com.viaversion.viaversion.libs.fastutil.longs.Long2ObjectOpenHashMap;
2323
import java.util.Arrays;
24-
import java.util.HashMap;
25-
import java.util.Map;
2624

2725
public class ChunkLightStorage implements StorableObject {
2826
public static final byte[] FULL_LIGHT = new byte[2048];
2927
public static final byte[] EMPTY_LIGHT = new byte[2048];
30-
private static Constructor<?> fastUtilLongObjectHashMap;
3128

32-
private final Map<Long, ChunkLight> storedLight = createLongObjectMap();
29+
private final Long2ObjectMap<ChunkLight> storedLight = new Long2ObjectOpenHashMap<>();
3330

3431
static {
3532
Arrays.fill(FULL_LIGHT, (byte) 0xFF);
3633
Arrays.fill(EMPTY_LIGHT, (byte) 0x0);
37-
try {
38-
fastUtilLongObjectHashMap = Class.forName("it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap").getConstructor();
39-
} catch (ClassNotFoundException | NoSuchMethodException ignored) {
40-
}
4134
}
4235

4336
public void setStoredLight(byte[][] skyLight, byte[][] blockLight, int x, int z) {
@@ -60,17 +53,6 @@ private long getChunkSectionIndex(int x, int z) {
6053
return ((x & 0x3FFFFFFL) << 38) | (z & 0x3FFFFFFL);
6154
}
6255

63-
private Map<Long, ChunkLight> createLongObjectMap() {
64-
if (fastUtilLongObjectHashMap != null) {
65-
try {
66-
return (Map<Long, ChunkLight>) fastUtilLongObjectHashMap.newInstance();
67-
} catch (IllegalAccessException | InstantiationException | InvocationTargetException e) {
68-
e.printStackTrace();
69-
}
70-
}
71-
return new HashMap<>();
72-
}
73-
7456
public record ChunkLight(byte[][] skyLight, byte[][] blockLight) {
7557

7658
@Override

0 commit comments

Comments
 (0)