mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-25 06:36:45 +01:00
Our own basic NBT types
This commit is contained in:
parent
edc8701e35
commit
2a606b1ed1
@ -0,0 +1,11 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public interface NBTBase {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the NBTType for this NBTBase
|
||||||
|
* @return this NBTType
|
||||||
|
*/
|
||||||
|
NBTType getNBTType();
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTByte implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private Byte value;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.BYTE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Byte getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(Byte value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTByteArray implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private byte[] values;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.BYTE_ARRAY;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getLength() {
|
||||||
|
return values.length;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public byte[] getValues() {
|
||||||
|
return values;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValues(byte[] values) {
|
||||||
|
this.values = values;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTDouble implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private double value;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.DOUBLE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(double value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTFloat implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private float value;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.FLOAT;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public float getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(float value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTIntArray implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private int[] values;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.INT_ARRAY;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getLength() {
|
||||||
|
return values.length;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] getValues() {
|
||||||
|
return values;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValues(int[] values) {
|
||||||
|
this.values = values;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTInteger implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private int value;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.INT;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(int value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class NBTList implements NBTBase {
|
||||||
|
|
||||||
|
private int length;
|
||||||
|
private String key;
|
||||||
|
private List<? extends NBTBase> values;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.LIST;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getLength() {
|
||||||
|
return length;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<? extends NBTBase> getValues() {
|
||||||
|
return values;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValues(List<? extends NBTBase> values) {
|
||||||
|
this.values = values;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTLong implements NBTBase {
|
||||||
|
|
||||||
|
public String key;
|
||||||
|
public long value;
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public long getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(long value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.LONG;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTLongArray implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private long[] values;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.LONG_ARRAY;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getLength() {
|
||||||
|
return values.length;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public long[] getValues() {
|
||||||
|
return values;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValues(long[] values) {
|
||||||
|
this.values = values;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTShort implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private short value;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.SHORT;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public short getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(short value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
public class NBTString implements NBTBase {
|
||||||
|
|
||||||
|
private String key;
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.STRING;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKey() {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKey(String key) {
|
||||||
|
this.key = key;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class NBTTagCompound implements NBTBase {
|
||||||
|
|
||||||
|
private Map<String, NBTBase> tagMap;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NBTType getNBTType() {
|
||||||
|
return NBTType.COMPOUND;
|
||||||
|
}
|
||||||
|
|
||||||
|
public NBTBase getTag(String key) {
|
||||||
|
return tagMap.get(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package com.gmail.nossr50.core.nbt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the NBT Type
|
||||||
|
* Based on NBT Structure in 1.14.4
|
||||||
|
*/
|
||||||
|
public enum NBTType {
|
||||||
|
////String[] a = new String[]{"END", "BYTE", "SHORT", "INT", "LONG", "FLOAT", "DOUBLE", "BYTE[]", "STRING", "LIST", "COMPOUND", "INT[]", "LONG[]"};
|
||||||
|
END,
|
||||||
|
BYTE,
|
||||||
|
SHORT,
|
||||||
|
INT,
|
||||||
|
LONG,
|
||||||
|
FLOAT,
|
||||||
|
DOUBLE,
|
||||||
|
BYTE_ARRAY,
|
||||||
|
STRING,
|
||||||
|
LIST,
|
||||||
|
COMPOUND,
|
||||||
|
INT_ARRAY,
|
||||||
|
LONG_ARRAY
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user