2
0
Fork 0
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

103 lines
2.6 KiB
Java

package net.minecraft.nbt;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
public abstract class NBTBase
{
public static final String[] NBTTypes = new String[] {"END", "BYTE", "SHORT", "INT", "LONG", "FLOAT", "DOUBLE", "BYTE[]", "STRING", "LIST", "COMPOUND", "INT[]"};
private static final String __OBFID = "CL_00001229";
/**
* Write the actual data contents of the tag, implemented in NBT extension classes
*/
abstract void write(DataOutput output) throws IOException;
abstract void func_152446_a(DataInput input, int depth, NBTSizeTracker sizeTracker) throws IOException;
public abstract String toString();
/**
* Gets the type byte for the tag.
*/
public abstract byte getId();
protected static NBTBase func_150284_a(byte id)
{
switch (id)
{
case 0:
return new NBTTagEnd();
case 1:
return new NBTTagByte();
case 2:
return new NBTTagShort();
case 3:
return new NBTTagInt();
case 4:
return new NBTTagLong();
case 5:
return new NBTTagFloat();
case 6:
return new NBTTagDouble();
case 7:
return new NBTTagByteArray();
case 8:
return new NBTTagString();
case 9:
return new NBTTagList();
case 10:
return new NBTTagCompound();
case 11:
return new NBTTagIntArray();
default:
return null;
}
}
/**
* Creates a clone of the tag.
*/
public abstract NBTBase copy();
public boolean equals(Object p_equals_1_)
{
if (!(p_equals_1_ instanceof NBTBase))
{
return false;
}
else
{
NBTBase nbtbase = (NBTBase)p_equals_1_;
return this.getId() == nbtbase.getId();
}
}
public int hashCode()
{
return this.getId();
}
protected String func_150285_a_()
{
return this.toString();
}
public abstract static class NBTPrimitive extends NBTBase
{
private static final String __OBFID = "CL_00001230";
public abstract long func_150291_c();
public abstract int func_150287_d();
public abstract short func_150289_e();
public abstract byte func_150290_f();
public abstract double func_150286_g();
public abstract float func_150288_h();
}
}