Finally fix #67
This commit is contained in:
36
src/main/java/kcauldron/wrapper/VanillaChunkHashMap.java
Normal file
36
src/main/java/kcauldron/wrapper/VanillaChunkHashMap.java
Normal file
@ -0,0 +1,36 @@
|
||||
package kcauldron.wrapper;
|
||||
|
||||
import gnu.trove.map.TLongObjectMap;
|
||||
import net.minecraft.world.chunk.Chunk;
|
||||
|
||||
import org.bukkit.craftbukkit.util.LongHash;
|
||||
|
||||
public class VanillaChunkHashMap extends LongHashMapTrove<Chunk> {
|
||||
public VanillaChunkHashMap(TLongObjectMap<Chunk> map) {
|
||||
super(map);
|
||||
}
|
||||
|
||||
private static long V2B(long key) {
|
||||
return LongHash.toLong((int) (key & 0xFFFFFFFFL), (int) (key >>> 32));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(long key, Object value) {
|
||||
super.add(V2B(key), value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean containsItem(long key) {
|
||||
return super.containsItem(V2B(key));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getValueByKey(long key) {
|
||||
return super.getValueByKey(V2B(key));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object remove(long key) {
|
||||
return super.remove(V2B(key));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user