Rewrite NextTickListEntry.hashCode() to implement real hashcode, not incremental ids :)
New function is more stable and gives a good distribution of numbers with less colissions. Fix #313
This commit is contained in:
parent
6c2be10dc9
commit
12b0a52ae0
@ -5,7 +5,7 @@
|
||||
public int hashCode()
|
||||
{
|
||||
- return (this.xCoord * 1024 * 1024 + this.zCoord * 1024 + this.yCoord) * 256;
|
||||
+ return (int) (tickEntryID & 0xFFFFFFFF);
|
||||
+ return ((yCoord * 31 + xCoord) * 31 + zCoord) * 17 + yCoord;
|
||||
}
|
||||
|
||||
public NextTickListEntry setScheduledTime(long p_77176_1_)
|
||||
|
@ -67,7 +67,7 @@
|
||||
- public List loadedChunks = new ArrayList();
|
||||
+ public boolean loadChunkOnProvideRequest = MinecraftServer.getServer().cauldronConfig.loadChunkOnRequest.getValue(); // Cauldron - if true, allows mods to force load chunks. to disable, set load-chunk-on-request in cauldron.yml to false
|
||||
+ public int initialTick; // Cauldron counter to keep track of when this loader was created
|
||||
+ public TLongObjectMap<Chunk> loadedChunkHashMap_KC = new TSynchronizedLongObjectMap<Chunk>(new TLongObjectHashMap<Chunk>());
|
||||
+ public TLongObjectMap<Chunk> loadedChunkHashMap_KC = new TLongObjectHashMap<Chunk>();
|
||||
+ public List loadedChunks = new ArrayList(); // Cauldron - vanilla compatibility
|
||||
public WorldServer worldObj;
|
||||
private Set<Long> loadingChunks = com.google.common.collect.Sets.newHashSet();
|
||||
|
Loading…
Reference in New Issue
Block a user