mirror of
				https://github.com/mcMMO-Dev/mcMMO.git
				synced 2025-11-04 02:53:43 +01:00 
			
		
		
		
	Merge pull request #299 from Glitchfinder/master
Fixing index error. Better not do this all night, I'm not sticking around for that much :I
This commit is contained in:
		@@ -105,10 +105,13 @@ public class BlockStoreConversionZDirectory implements Runnable {
 | 
				
			|||||||
                            this.czPos = this.zPos + this.z;
 | 
					                            this.czPos = this.zPos + this.z;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                            for(this.y2 = (64 * this.y); this.y2 < (64 * this.y + 64); this.y2++) {
 | 
					                            for(this.y2 = (64 * this.y); this.y2 < (64 * this.y + 64); this.y2++) {
 | 
				
			||||||
                                if(!this.manager.isTrue(this.cxPos, this.y2, this.czPos, this.world))
 | 
					                                try {
 | 
				
			||||||
                                    continue;
 | 
					                                    if(!this.manager.isTrue(this.cxPos, this.y2, this.czPos, this.world))
 | 
				
			||||||
 | 
					                                        continue;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                this.newManager.setTrue(this.cxPos, this.y2, this.czPos, this.world);
 | 
					                                    this.newManager.setTrue(this.cxPos, this.y2, this.czPos, this.world);
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                                catch(Exception e) {}
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,7 +15,7 @@ public class PrimitiveChunkStore implements ChunkStore {
 | 
				
			|||||||
    transient private boolean dirty = false;
 | 
					    transient private boolean dirty = false;
 | 
				
			||||||
    /** X, Z, Y */
 | 
					    /** X, Z, Y */
 | 
				
			||||||
    public boolean[][][] store;
 | 
					    public boolean[][][] store;
 | 
				
			||||||
    private static final int CURRENT_VERSION = 4;
 | 
					    private static final int CURRENT_VERSION = 5;
 | 
				
			||||||
    private static final int MAGIC_NUMBER = 0xEA5EDEBB;
 | 
					    private static final int MAGIC_NUMBER = 0xEA5EDEBB;
 | 
				
			||||||
    private int cx;
 | 
					    private int cx;
 | 
				
			||||||
    private int cz;
 | 
					    private int cz;
 | 
				
			||||||
@@ -34,7 +34,7 @@ public class PrimitiveChunkStore implements ChunkStore {
 | 
				
			|||||||
        this.xBitShifts = 11;
 | 
					        this.xBitShifts = 11;
 | 
				
			||||||
        this.zBitShifts = 7;
 | 
					        this.zBitShifts = 7;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        this.store = new boolean[16][16][this.worldHeight - 1];
 | 
					        this.store = new boolean[16][16][this.worldHeight];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        conversionNeeded = false;
 | 
					        conversionNeeded = false;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -139,7 +139,23 @@ public class PrimitiveChunkStore implements ChunkStore {
 | 
				
			|||||||
        store = (boolean[][][]) in.readObject();
 | 
					        store = (boolean[][][]) in.readObject();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (fileVersionNumber < CURRENT_VERSION) {
 | 
					        if (fileVersionNumber < CURRENT_VERSION) {
 | 
				
			||||||
 | 
					            fixArray();
 | 
				
			||||||
            dirty = true;
 | 
					            dirty = true;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private void fixArray() {
 | 
				
			||||||
 | 
					        boolean[][][] temp = this.store;
 | 
				
			||||||
 | 
					        this.store = new boolean[16][16][this.worldHeight];
 | 
				
			||||||
 | 
					        for(int x = 0; x < 16; x++) {
 | 
				
			||||||
 | 
					            for(int z = 0; z < 16; z++) {
 | 
				
			||||||
 | 
					                for(int y = 0; y < this.worldHeight; y++) {
 | 
				
			||||||
 | 
					                    try {
 | 
				
			||||||
 | 
					                        store[x][z][y] = temp[x][y][z];
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                    catch(Exception e) {}
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user