fix converter adding unneccesary data
This commit is contained in:
parent
264c7ffae3
commit
601a331ee3
1 changed files with 6 additions and 5 deletions
|
@ -1963,6 +1963,7 @@ public abstract class Converter {
|
||||||
NibbleArray data = new NibbleArray(sect.getByteArray("Data"));
|
NibbleArray data = new NibbleArray(sect.getByteArray("Data"));
|
||||||
byte[] add = sect.getByteArray("Add");
|
byte[] add = sect.getByteArray("Add");
|
||||||
NibbleArray adddata = add.length > 0 ? new NibbleArray(add) : null;
|
NibbleArray adddata = add.length > 0 ? new NibbleArray(add) : null;
|
||||||
|
NibbleArray addnew = null;
|
||||||
for(int c = 0; c < blocks.length; ++c) {
|
for(int c = 0; c < blocks.length; ++c) {
|
||||||
int cx = c & 15;
|
int cx = c & 15;
|
||||||
int cy = c >> 8 & 15;
|
int cy = c >> 8 & 15;
|
||||||
|
@ -1974,17 +1975,17 @@ public abstract class Converter {
|
||||||
int dt = block == 111 ? RANDOM.zrange(4) : data.get(cx, cy, cz);
|
int dt = block == 111 ? RANDOM.zrange(4) : data.get(cx, cy, cz);
|
||||||
char cd = mapping[block >= 256 ? BLOCK_MAP[1 << 4] : BLOCK_MAP[(block << 4) | dt]];
|
char cd = mapping[block >= 256 ? BLOCK_MAP[1 << 4] : BLOCK_MAP[(block << 4) | dt]];
|
||||||
if(cd >> 12 != 0) {
|
if(cd >> 12 != 0) {
|
||||||
if(adddata == null)
|
if(addnew == null)
|
||||||
adddata = new NibbleArray();
|
addnew = new NibbleArray();
|
||||||
adddata.set(cx, cy, cz, cd >> 12);
|
addnew.set(cx, cy, cz, cd >> 12);
|
||||||
}
|
}
|
||||||
blocks[c] = (byte)(cd & 255);
|
blocks[c] = (byte)(cd & 255);
|
||||||
data.set(cx, cy, cz, cd >> 8 & 15);
|
data.set(cx, cy, cz, cd >> 8 & 15);
|
||||||
}
|
}
|
||||||
nsect.setByteArray("Dat0", blocks);
|
nsect.setByteArray("Dat0", blocks);
|
||||||
nsect.setByteArray("Dat1", data.getData());
|
nsect.setByteArray("Dat1", data.getData());
|
||||||
if(adddata != null)
|
if(addnew != null)
|
||||||
nsect.setByteArray("Dat2", adddata.getData());
|
nsect.setByteArray("Dat2", addnew.getData());
|
||||||
nsect.setByteArray("BlockLight", sect.getByteArray("BlockLight"));
|
nsect.setByteArray("BlockLight", sect.getByteArray("BlockLight"));
|
||||||
nsect.setByteArray("SkyLight", sect.getByteArray("SkyLight"));
|
nsect.setByteArray("SkyLight", sect.getByteArray("SkyLight"));
|
||||||
entities.add(nsect);
|
entities.add(nsect);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue