обработка NBT в чанках
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package mc.core.network;
|
||||
|
||||
import com.flowpowered.nbt.Tag;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@@ -29,6 +30,7 @@ public abstract class NetInputStream extends InputStream {
|
||||
public abstract double readDouble();
|
||||
public abstract String readString();
|
||||
public abstract UUID readUUID();
|
||||
public abstract Tag<?> readNBT();
|
||||
|
||||
public abstract void skipBytes(int count);
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package mc.core.network;
|
||||
|
||||
import com.flowpowered.nbt.Tag;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.util.UUID;
|
||||
@@ -20,6 +22,7 @@ public abstract class NetOutputStream extends OutputStream {
|
||||
public abstract void writeDouble(double value);
|
||||
public abstract void writeString(String value);
|
||||
public abstract void writeUUID(UUID uuid);
|
||||
public abstract void writeNBT(Tag<?> tag);
|
||||
|
||||
@Override
|
||||
public void write(int b) throws IOException {
|
||||
|
||||
@@ -1,8 +1,17 @@
|
||||
package mc.core.world.block;
|
||||
|
||||
import com.flowpowered.nbt.CompoundTag;
|
||||
|
||||
public interface Block {
|
||||
int getLight();
|
||||
void setLight(int light);
|
||||
BlockType getBlockType();
|
||||
BlockLocation getLocation();
|
||||
|
||||
default CompoundTag getNBTData() {
|
||||
return null;
|
||||
}
|
||||
|
||||
default void setNBTData(CompoundTag nbtData) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -96,11 +96,10 @@ public enum BlockType {
|
||||
MOSS_STONE(48, 0),
|
||||
OBSIDIAN(49, 0),
|
||||
MONSTER_SPAWNER(52, 0),
|
||||
//BAG CHUNK
|
||||
// CHEST_NORTH(54, 2),
|
||||
// CHEST_SOUTH(54, 3),
|
||||
// CHEST_WEST (54, 4),
|
||||
// CHEST_EAST (54, 5),
|
||||
CHEST_NORTH(54, 2, "minecraft:chest"),
|
||||
CHEST_SOUTH(54, 3, "minecraft:chest"),
|
||||
CHEST_WEST (54, 4, "minecraft:chest"),
|
||||
CHEST_EAST (54, 5, "minecraft:chest"),
|
||||
ORE_DIAMOND(56, 0),
|
||||
ORE_REDSTONE(73, 0),
|
||||
ORE_GLOWING_REDSTONE(74, 0),
|
||||
@@ -118,6 +117,12 @@ public enum BlockType {
|
||||
PEONY(175, 5),
|
||||
ROSE_BUSH_10(175, 10);
|
||||
|
||||
BlockType(int id, int meta) {
|
||||
this.id = id;
|
||||
this.meta = meta;
|
||||
this.namedId = null;
|
||||
}
|
||||
|
||||
public static BlockType getByIdMeta(int id, int meta) {
|
||||
if (id < 0) {
|
||||
log.warn("Incorrect id \"{}\"", id);
|
||||
@@ -137,4 +142,6 @@ public enum BlockType {
|
||||
private final int id;
|
||||
@Getter
|
||||
private final int meta;
|
||||
@Getter
|
||||
private final String namedId;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user