mirror of
https://github.com/ViaVersion/ViaVersion.git
synced 2025-01-21 23:11:29 +01:00
Store environment instead of clientlevel in chunk types
This commit is contained in:
parent
7edde72416
commit
54c04a62e0
@ -1,42 +0,0 @@
|
||||
/*
|
||||
* This file is part of ViaVersion - https://github.com/ViaVersion/ViaVersion
|
||||
* Copyright (C) 2016-2023 ViaVersion and contributors
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
package com.viaversion.viaversion.api.type.types.chunk;
|
||||
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
|
||||
import com.viaversion.viaversion.api.type.Type;
|
||||
|
||||
public abstract class BaseChunkBulkType extends Type<Chunk[]> {
|
||||
|
||||
protected BaseChunkBulkType() {
|
||||
super(Chunk[].class);
|
||||
}
|
||||
|
||||
protected BaseChunkBulkType(String typeName) {
|
||||
super(typeName, Chunk[].class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends Type> getBaseClass() {
|
||||
return BaseChunkBulkType.class;
|
||||
}
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
/*
|
||||
* This file is part of ViaVersion - https://github.com/ViaVersion/ViaVersion
|
||||
* Copyright (C) 2016-2023 ViaVersion and contributors
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
package com.viaversion.viaversion.api.type.types.chunk;
|
||||
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
|
||||
import com.viaversion.viaversion.api.type.Type;
|
||||
|
||||
public abstract class BaseChunkType extends Type<Chunk> {
|
||||
|
||||
protected BaseChunkType() {
|
||||
super(Chunk.class);
|
||||
}
|
||||
|
||||
protected BaseChunkType(String typeName) {
|
||||
super(typeName, Chunk.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends Type> getBaseClass() {
|
||||
return BaseChunkType.class;
|
||||
}
|
||||
}
|
@ -121,5 +121,4 @@ public class BulkChunkType1_8 extends Type<Chunk[]> {
|
||||
return this.data;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -24,7 +24,6 @@ package com.viaversion.viaversion.api.type.types.chunk;
|
||||
|
||||
import com.github.steveice10.opennbt.tag.builtin.CompoundTag;
|
||||
import com.viaversion.viaversion.api.Via;
|
||||
import com.viaversion.viaversion.api.minecraft.ClientWorld;
|
||||
import com.viaversion.viaversion.api.minecraft.Environment;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.BaseChunk;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
|
||||
@ -38,13 +37,13 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.logging.Level;
|
||||
|
||||
public class ChunkType1_13 extends PartialType<Chunk, ClientWorld> {
|
||||
public class ChunkType1_13 extends PartialType<Chunk, Environment> {
|
||||
|
||||
private static final ChunkType1_13 WITH_SKYLIGHT = new ChunkType1_13(new ClientWorld(Environment.NORMAL));
|
||||
private static final ChunkType1_13 WITHOUT_SKYLIGHT = new ChunkType1_13(new ClientWorld(Environment.NETHER));
|
||||
private static final ChunkType1_13 WITH_SKYLIGHT = new ChunkType1_13(Environment.NORMAL);
|
||||
private static final ChunkType1_13 WITHOUT_SKYLIGHT = new ChunkType1_13(Environment.NETHER);
|
||||
|
||||
public ChunkType1_13(ClientWorld clientWorld) {
|
||||
super(clientWorld, Chunk.class);
|
||||
public ChunkType1_13(Environment environment) {
|
||||
super(environment, Chunk.class);
|
||||
}
|
||||
|
||||
public static ChunkType1_13 forEnvironment(Environment environment) {
|
||||
@ -52,7 +51,7 @@ public class ChunkType1_13 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Chunk read(ByteBuf input, ClientWorld world) throws Exception {
|
||||
public Chunk read(ByteBuf input, Environment environment) throws Exception {
|
||||
int chunkX = input.readInt();
|
||||
int chunkZ = input.readInt();
|
||||
|
||||
@ -68,7 +67,7 @@ public class ChunkType1_13 extends PartialType<Chunk, ClientWorld> {
|
||||
ChunkSection section = Types1_13.CHUNK_SECTION.read(data);
|
||||
sections[i] = section;
|
||||
section.getLight().readBlockLight(data);
|
||||
if (world.getEnvironment() == Environment.NORMAL) {
|
||||
if (environment == Environment.NORMAL) {
|
||||
section.getLight().readSkyLight(data);
|
||||
}
|
||||
}
|
||||
@ -98,7 +97,7 @@ public class ChunkType1_13 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(ByteBuf output, ClientWorld world, Chunk chunk) throws Exception {
|
||||
public void write(ByteBuf output, Environment environment, Chunk chunk) throws Exception {
|
||||
output.writeInt(chunk.getX());
|
||||
output.writeInt(chunk.getZ());
|
||||
|
||||
@ -134,9 +133,4 @@ public class ChunkType1_13 extends PartialType<Chunk, ClientWorld> {
|
||||
// Write Block Entities
|
||||
Type.NAMED_COMPOUND_TAG_ARRAY.write(output, chunk.getBlockEntities().toArray(new CompoundTag[0]));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends Type> getBaseClass() {
|
||||
return BaseChunkType.class;
|
||||
}
|
||||
}
|
||||
|
@ -22,7 +22,6 @@
|
||||
*/
|
||||
package com.viaversion.viaversion.api.type.types.chunk;
|
||||
|
||||
import com.viaversion.viaversion.api.minecraft.ClientWorld;
|
||||
import com.viaversion.viaversion.api.minecraft.Environment;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.BaseChunk;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
|
||||
@ -34,13 +33,13 @@ import io.netty.buffer.ByteBuf;
|
||||
import io.netty.buffer.Unpooled;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class ChunkType1_8 extends PartialType<Chunk, ClientWorld> {
|
||||
public class ChunkType1_8 extends PartialType<Chunk, Environment> {
|
||||
|
||||
private static final ChunkType1_8 WITH_SKYLIGHT = new ChunkType1_8(new ClientWorld(Environment.NORMAL));
|
||||
private static final ChunkType1_8 WITHOUT_SKYLIGHT = new ChunkType1_8(new ClientWorld(Environment.NETHER));
|
||||
private static final ChunkType1_8 WITH_SKYLIGHT = new ChunkType1_8(Environment.NORMAL);
|
||||
private static final ChunkType1_8 WITHOUT_SKYLIGHT = new ChunkType1_8(Environment.NETHER);
|
||||
|
||||
public ChunkType1_8(ClientWorld clientWorld) {
|
||||
super(clientWorld, Chunk.class);
|
||||
public ChunkType1_8(Environment environment) {
|
||||
super(environment, Chunk.class);
|
||||
}
|
||||
|
||||
public static ChunkType1_8 forEnvironment(Environment environment) {
|
||||
@ -48,7 +47,7 @@ public class ChunkType1_8 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Chunk read(ByteBuf input, ClientWorld world) throws Exception {
|
||||
public Chunk read(ByteBuf input, Environment environment) throws Exception {
|
||||
final int chunkX = input.readInt();
|
||||
final int chunkZ = input.readInt();
|
||||
final boolean fullChunk = input.readBoolean();
|
||||
@ -62,11 +61,11 @@ public class ChunkType1_8 extends PartialType<Chunk, ClientWorld> {
|
||||
return new BaseChunk(chunkX, chunkZ, true, false, 0, new ChunkSection[16], null, new ArrayList<>());
|
||||
}
|
||||
|
||||
return deserialize(chunkX, chunkZ, fullChunk, world.getEnvironment() == Environment.NORMAL, bitmask, data);
|
||||
return deserialize(chunkX, chunkZ, fullChunk, environment == Environment.NORMAL, bitmask, data);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(ByteBuf output, ClientWorld world, Chunk chunk) throws Exception {
|
||||
public void write(ByteBuf output, Environment environment, Chunk chunk) throws Exception {
|
||||
output.writeInt(chunk.getX());
|
||||
output.writeInt(chunk.getZ());
|
||||
output.writeBoolean(chunk.isFullChunk());
|
||||
|
@ -22,7 +22,6 @@
|
||||
*/
|
||||
package com.viaversion.viaversion.api.type.types.chunk;
|
||||
|
||||
import com.viaversion.viaversion.api.minecraft.ClientWorld;
|
||||
import com.viaversion.viaversion.api.minecraft.Environment;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.BaseChunk;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
|
||||
@ -34,13 +33,13 @@ import io.netty.buffer.ByteBuf;
|
||||
import java.util.ArrayList;
|
||||
import java.util.BitSet;
|
||||
|
||||
public class ChunkType1_9_1 extends PartialType<Chunk, ClientWorld> {
|
||||
public class ChunkType1_9_1 extends PartialType<Chunk, Environment> {
|
||||
|
||||
private static final ChunkType1_9_1 WITH_SKYLIGHT = new ChunkType1_9_1(new ClientWorld(Environment.NORMAL));
|
||||
private static final ChunkType1_9_1 WITHOUT_SKYLIGHT = new ChunkType1_9_1(new ClientWorld(Environment.NETHER));
|
||||
private static final ChunkType1_9_1 WITH_SKYLIGHT = new ChunkType1_9_1(Environment.NORMAL);
|
||||
private static final ChunkType1_9_1 WITHOUT_SKYLIGHT = new ChunkType1_9_1(Environment.NETHER);
|
||||
|
||||
public ChunkType1_9_1(ClientWorld clientWorld) {
|
||||
super(clientWorld, Chunk.class);
|
||||
public ChunkType1_9_1(Environment environment) {
|
||||
super(environment, Chunk.class);
|
||||
}
|
||||
|
||||
public static ChunkType1_9_1 forEnvironment(Environment environment) {
|
||||
@ -48,7 +47,7 @@ public class ChunkType1_9_1 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Chunk read(ByteBuf input, ClientWorld world) throws Exception {
|
||||
public Chunk read(ByteBuf input, Environment environment) throws Exception {
|
||||
int chunkX = input.readInt();
|
||||
int chunkZ = input.readInt();
|
||||
|
||||
@ -72,7 +71,7 @@ public class ChunkType1_9_1 extends PartialType<Chunk, ClientWorld> {
|
||||
ChunkSection section = Types1_9.CHUNK_SECTION.read(input);
|
||||
sections[i] = section;
|
||||
section.getLight().readBlockLight(input);
|
||||
if (world.getEnvironment() == Environment.NORMAL) {
|
||||
if (environment == Environment.NORMAL) {
|
||||
section.getLight().readSkyLight(input);
|
||||
}
|
||||
}
|
||||
@ -88,7 +87,7 @@ public class ChunkType1_9_1 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(ByteBuf output, ClientWorld world, Chunk chunk) throws Exception {
|
||||
public void write(ByteBuf output, Environment environment, Chunk chunk) throws Exception {
|
||||
output.writeInt(chunk.getX());
|
||||
output.writeInt(chunk.getZ());
|
||||
|
||||
|
@ -24,7 +24,6 @@ package com.viaversion.viaversion.api.type.types.chunk;
|
||||
|
||||
import com.github.steveice10.opennbt.tag.builtin.CompoundTag;
|
||||
import com.viaversion.viaversion.api.Via;
|
||||
import com.viaversion.viaversion.api.minecraft.ClientWorld;
|
||||
import com.viaversion.viaversion.api.minecraft.Environment;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.BaseChunk;
|
||||
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
|
||||
@ -37,13 +36,13 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class ChunkType1_9_3 extends PartialType<Chunk, ClientWorld> {
|
||||
public class ChunkType1_9_3 extends PartialType<Chunk, Environment> {
|
||||
|
||||
private static final ChunkType1_9_3 WITH_SKYLIGHT = new ChunkType1_9_3(new ClientWorld(Environment.NORMAL));
|
||||
private static final ChunkType1_9_3 WITHOUT_SKYLIGHT = new ChunkType1_9_3(new ClientWorld(Environment.NETHER));
|
||||
private static final ChunkType1_9_3 WITH_SKYLIGHT = new ChunkType1_9_3(Environment.NORMAL);
|
||||
private static final ChunkType1_9_3 WITHOUT_SKYLIGHT = new ChunkType1_9_3(Environment.NETHER);
|
||||
|
||||
public ChunkType1_9_3(ClientWorld clientWorld) {
|
||||
super(clientWorld, Chunk.class);
|
||||
public ChunkType1_9_3(Environment environment) {
|
||||
super(environment, Chunk.class);
|
||||
}
|
||||
|
||||
public static ChunkType1_9_3 forEnvironment(Environment environment) {
|
||||
@ -51,7 +50,7 @@ public class ChunkType1_9_3 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Chunk read(ByteBuf input, ClientWorld world) throws Exception {
|
||||
public Chunk read(ByteBuf input, Environment environment) throws Exception {
|
||||
int chunkX = input.readInt();
|
||||
int chunkZ = input.readInt();
|
||||
|
||||
@ -67,7 +66,7 @@ public class ChunkType1_9_3 extends PartialType<Chunk, ClientWorld> {
|
||||
ChunkSection section = Types1_9.CHUNK_SECTION.read(input);
|
||||
sections[i] = section;
|
||||
section.getLight().readBlockLight(input);
|
||||
if (world.getEnvironment() == Environment.NORMAL) {
|
||||
if (environment == Environment.NORMAL) {
|
||||
section.getLight().readSkyLight(input);
|
||||
}
|
||||
}
|
||||
@ -93,7 +92,7 @@ public class ChunkType1_9_3 extends PartialType<Chunk, ClientWorld> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(ByteBuf output, ClientWorld world, Chunk chunk) throws Exception {
|
||||
public void write(ByteBuf output, Environment environment, Chunk chunk) throws Exception {
|
||||
output.writeInt(chunk.getX());
|
||||
output.writeInt(chunk.getZ());
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user