Package net.minecraft.nbt
Class NbtHelper
java.lang.Object
net.minecraft.nbt.NbtHelper
Helper methods for handling NBT.
- Mappings:
Namespace Name official rd
intermediary net/minecraft/class_2512
named net/minecraft/nbt/NbtHelper
-
Field Summary
Modifier and TypeFieldDescriptionprivate static final Comparator<NbtList>
private static final char
private static final Splitter
private static final String
private static final Splitter
static final String
private static final Comparator<NbtList>
private static final int
private static final int
private static final char
private static final Logger
private static final char
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic StringBuilder
appendFormattedString
(StringBuilder stringBuilder, NbtElement nbt, int depth, boolean withArrayContents) private static StringBuilder
appendIndent
(int depth, StringBuilder stringBuilder) static NbtCompound
fromBlockPos
(BlockPos pos) Returns the serialized block position.static NbtCompound
fromBlockState
(BlockState state) Returns the serialized block state.static NbtCompound
fromFluidState
(FluidState state) Returns the serialized fluid state.(package private) static NbtCompound
fromNbtProviderFormat
(NbtCompound compound) (package private) static NbtCompound
static NbtCompound
fromNbtProviderString
(String string) Returns thestring
parsed as an NBT provider-formatted NBT compound.static NbtIntArray
Serializes aUUID
into its equivalent NBT representation.static int
getDataVersion
(NbtCompound nbt, int fallback) static boolean
matches
(@Nullable NbtElement standard, @Nullable NbtElement subject, boolean ignoreListOrder) Returns whetherstandard
is a subset ofsubject
.private static <T extends Comparable<T>>
StringnameValue
(Property<T> property, Comparable<?> value) static NbtCompound
static NbtCompound
putDataVersion
(NbtCompound nbt, int dataVersion) static BlockPos
toBlockPos
(NbtCompound nbt) Returns the block position from thenbt
.static BlockState
toBlockState
(RegistryEntryLookup<Block> blockLookup, NbtCompound nbt) Returns the block state from thenbt
.static String
Returns the human-readable, non-deserializable representation ofnbt
.static String
toFormattedString
(NbtElement nbt, boolean withArrayContents) Returns the human-readable, non-deserializable representation ofnbt
.static @Nullable com.mojang.authlib.GameProfile
toGameProfile
(NbtCompound nbt) Returns the game profile converted fromnbt
.(package private) static NbtCompound
toNbtProviderFormat
(NbtCompound compound) (package private) static String
toNbtProviderFormattedPalette
(NbtCompound compound) static String
toNbtProviderString
(NbtCompound compound) Returns the string representation ofcompound
as used by the NBT provider in the data generator.static Text
toPrettyPrintedText
(NbtElement element) Returns the pretty-printed text representation ofelement
.static UUID
toUuid
(NbtElement element) Deserializes an NBT element into aUUID
.private static <S extends State<?,
S>, T extends Comparable<T>>
SwithProperty
(S state, Property<T> property, String key, NbtCompound properties, NbtCompound root) static NbtCompound
writeGameProfile
(NbtCompound nbt, com.mojang.authlib.GameProfile profile) Writes the game profile tonbt
.
-
Field Details
-
BLOCK_POS_COMPARATOR
- Mappings:
Namespace Name Mixin selector official b
Lrd;b:Ljava/util/Comparator;
intermediary field_27816
Lnet/minecraft/class_2512;field_27816:Ljava/util/Comparator;
named BLOCK_POS_COMPARATOR
Lnet/minecraft/nbt/NbtHelper;BLOCK_POS_COMPARATOR:Ljava/util/Comparator;
-
ENTITY_POS_COMPARATOR
- Mappings:
Namespace Name Mixin selector official c
Lrd;c:Ljava/util/Comparator;
intermediary field_27817
Lnet/minecraft/class_2512;field_27817:Ljava/util/Comparator;
named ENTITY_POS_COMPARATOR
Lnet/minecraft/nbt/NbtHelper;ENTITY_POS_COMPARATOR:Ljava/util/Comparator;
-
DATA_KEY
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a:Ljava/lang/String;
intermediary field_33224
Lnet/minecraft/class_2512;field_33224:Ljava/lang/String;
named DATA_KEY
Lnet/minecraft/nbt/NbtHelper;DATA_KEY:Ljava/lang/String;
-
LEFT_CURLY_BRACKET
private static final char LEFT_CURLY_BRACKET- See Also:
- Mappings:
Namespace Name Mixin selector official d
Lrd;d:C
intermediary field_33225
Lnet/minecraft/class_2512;field_33225:C
named LEFT_CURLY_BRACKET
Lnet/minecraft/nbt/NbtHelper;LEFT_CURLY_BRACKET:C
-
RIGHT_CURLY_BRACKET
private static final char RIGHT_CURLY_BRACKET- See Also:
- Mappings:
Namespace Name Mixin selector official e
Lrd;e:C
intermediary field_33226
Lnet/minecraft/class_2512;field_33226:C
named RIGHT_CURLY_BRACKET
Lnet/minecraft/nbt/NbtHelper;RIGHT_CURLY_BRACKET:C
-
COMMA
- See Also:
- Mappings:
Namespace Name Mixin selector official f
Lrd;f:Ljava/lang/String;
intermediary field_33227
Lnet/minecraft/class_2512;field_33227:Ljava/lang/String;
named COMMA
Lnet/minecraft/nbt/NbtHelper;COMMA:Ljava/lang/String;
-
COLON
private static final char COLON- See Also:
- Mappings:
Namespace Name Mixin selector official g
Lrd;g:C
intermediary field_33228
Lnet/minecraft/class_2512;field_33228:C
named COLON
Lnet/minecraft/nbt/NbtHelper;COLON:C
-
COMMA_SPLITTER
- Mappings:
Namespace Name Mixin selector official h
Lrd;h:Lcom/google/common/base/Splitter;
intermediary field_27818
Lnet/minecraft/class_2512;field_27818:Lcom/google/common/base/Splitter;
named COMMA_SPLITTER
Lnet/minecraft/nbt/NbtHelper;COMMA_SPLITTER:Lcom/google/common/base/Splitter;
-
COLON_SPLITTER
- Mappings:
Namespace Name Mixin selector official i
Lrd;i:Lcom/google/common/base/Splitter;
intermediary field_27819
Lnet/minecraft/class_2512;field_27819:Lcom/google/common/base/Splitter;
named COLON_SPLITTER
Lnet/minecraft/nbt/NbtHelper;COLON_SPLITTER:Lcom/google/common/base/Splitter;
-
LOGGER
- Mappings:
Namespace Name Mixin selector official j
Lrd;j:Lorg/slf4j/Logger;
intermediary field_11582
Lnet/minecraft/class_2512;field_11582:Lorg/slf4j/Logger;
named LOGGER
Lnet/minecraft/nbt/NbtHelper;LOGGER:Lorg/slf4j/Logger;
-
field_33229
private static final int field_33229- See Also:
- Mappings:
Namespace Name Mixin selector official k
Lrd;k:I
intermediary field_33229
Lnet/minecraft/class_2512;field_33229:I
named field_33229
Lnet/minecraft/nbt/NbtHelper;field_33229:I
-
field_33230
private static final int field_33230- See Also:
- Mappings:
Namespace Name Mixin selector official l
Lrd;l:I
intermediary field_33230
Lnet/minecraft/class_2512;field_33230:I
named field_33230
Lnet/minecraft/nbt/NbtHelper;field_33230:I
-
-
Constructor Details
-
NbtHelper
private NbtHelper()
-
-
Method Details
-
toGameProfile
Returns the game profile converted fromnbt
.- Returns:
- the game profile converted from
nbt
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lqr;)Lcom/mojang/authlib/GameProfile;
intermediary method_10683
Lnet/minecraft/class_2512;method_10683(Lnet/minecraft/class_2487;)Lcom/mojang/authlib/GameProfile;
named toGameProfile
Lnet/minecraft/nbt/NbtHelper;toGameProfile(Lnet/minecraft/nbt/NbtCompound;)Lcom/mojang/authlib/GameProfile;
-
writeGameProfile
Writes the game profile tonbt
. This modifies the passed compound.- Returns:
- the compound with the serialized game profile
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lqr;Lcom/mojang/authlib/GameProfile;)Lqr;
intermediary method_10684
Lnet/minecraft/class_2512;method_10684(Lnet/minecraft/class_2487;Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_2487;
named writeGameProfile
Lnet/minecraft/nbt/NbtHelper;writeGameProfile(Lnet/minecraft/nbt/NbtCompound;Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/nbt/NbtCompound;
-
matches
public static boolean matches(@Nullable @Nullable NbtElement standard, @Nullable @Nullable NbtElement subject, boolean ignoreListOrder) Returns whetherstandard
is a subset ofsubject
.Elements are matched based on the following order:
- Passing the same reference to both parameters will return
true
. - If
standard
isnull
, returntrue
. - If
subject
isnull
, returnfalse
. - If the types of
standard
andsubject
are different, returnfalse
. - If
standard
isNbtCompound
, returntrue
if all keys in thestandard
exist insubject
and the values match (comparing recursively.) - If
standard
isNbtList
andignoreListOrder
istrue
, returntrue
if both lists are empty, or if there exists a "matching" value insubject
for all values ofstandard
(that is, ifstandard
is a subset ofsubject
, ignoring duplicates.), otherwisefalse
. This means that the comparison ignores the ordering of the lists. - Otherwise, return
standard.equals(subject)
.
- Parameters:
standard
- the standard (also called as "template" or "schema") elementsubject
- the element to testignoreListOrder
- whether to ignore ordering forNbtList
- Returns:
- whether
standard
is a subset ofsubject
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lrk;Lrk;Z)Z
intermediary method_10687
Lnet/minecraft/class_2512;method_10687(Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;Z)Z
named matches
Lnet/minecraft/nbt/NbtHelper;matches(Lnet/minecraft/nbt/NbtElement;Lnet/minecraft/nbt/NbtElement;Z)Z
- Passing the same reference to both parameters will return
-
fromUuid
Serializes aUUID
into its equivalent NBT representation.- Since:
- 20w10a
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ljava/util/UUID;)Lqv;
intermediary method_25929
Lnet/minecraft/class_2512;method_25929(Ljava/util/UUID;)Lnet/minecraft/class_2495;
named fromUuid
Lnet/minecraft/nbt/NbtHelper;fromUuid(Ljava/util/UUID;)Lnet/minecraft/nbt/NbtIntArray;
-
toUuid
Deserializes an NBT element into aUUID
. The NBT element's data must have the same structure as the output offromUuid(java.util.UUID)
.- Throws:
IllegalArgumentException
- ifelement
is not a valid representation of a UUID- Since:
- 20w10a
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lrk;)Ljava/util/UUID;
intermediary method_25930
Lnet/minecraft/class_2512;method_25930(Lnet/minecraft/class_2520;)Ljava/util/UUID;
named toUuid
Lnet/minecraft/nbt/NbtHelper;toUuid(Lnet/minecraft/nbt/NbtElement;)Ljava/util/UUID;
-
toBlockPos
Returns the block position from thenbt
.- Returns:
- the block position from the
nbt
- See Also:
- Mappings:
Namespace Name Mixin selector official b
Lrd;b(Lqr;)Lgu;
intermediary method_10691
Lnet/minecraft/class_2512;method_10691(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2338;
named toBlockPos
Lnet/minecraft/nbt/NbtHelper;toBlockPos(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/util/math/BlockPos;
-
fromBlockPos
Returns the serialized block position.- Returns:
- the serialized block position
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lgu;)Lqr;
intermediary method_10692
Lnet/minecraft/class_2512;method_10692(Lnet/minecraft/class_2338;)Lnet/minecraft/class_2487;
named fromBlockPos
Lnet/minecraft/nbt/NbtHelper;fromBlockPos(Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/nbt/NbtCompound;
-
toBlockState
Returns the block state from thenbt
.This returns the default state for
Blocks.AIR
if the block name is not present.- Returns:
- the block state from the
nbt
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lhf;Lqr;)Ldbt;
intermediary method_10681
Lnet/minecraft/class_2512;method_10681(Lnet/minecraft/class_7871;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2680;
named toBlockState
Lnet/minecraft/nbt/NbtHelper;toBlockState(Lnet/minecraft/registry/RegistryEntryLookup;Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/block/BlockState;
-
withProperty
private static <S extends State<?,S>, S withPropertyT extends Comparable<T>> (S state, Property<T> property, String key, NbtCompound properties, NbtCompound root) - Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ldbv;Ldcw;Ljava/lang/String;Lqr;Lqr;)Ldbv;
intermediary method_10682
Lnet/minecraft/class_2512;method_10682(Lnet/minecraft/class_2688;Lnet/minecraft/class_2769;Ljava/lang/String;Lnet/minecraft/class_2487;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2688;
named withProperty
Lnet/minecraft/nbt/NbtHelper;withProperty(Lnet/minecraft/state/State;Lnet/minecraft/state/property/Property;Ljava/lang/String;Lnet/minecraft/nbt/NbtCompound;Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/state/State;
-
fromBlockState
Returns the serialized block state.- Returns:
- the serialized block state
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ldbt;)Lqr;
intermediary method_10686
Lnet/minecraft/class_2512;method_10686(Lnet/minecraft/class_2680;)Lnet/minecraft/class_2487;
named fromBlockState
Lnet/minecraft/nbt/NbtHelper;fromBlockState(Lnet/minecraft/block/BlockState;)Lnet/minecraft/nbt/NbtCompound;
-
fromFluidState
Returns the serialized fluid state.- Returns:
- the serialized fluid state
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ldww;)Lqr;
intermediary method_36115
Lnet/minecraft/class_2512;method_36115(Lnet/minecraft/class_3610;)Lnet/minecraft/class_2487;
named fromFluidState
Lnet/minecraft/nbt/NbtHelper;fromFluidState(Lnet/minecraft/fluid/FluidState;)Lnet/minecraft/nbt/NbtCompound;
-
nameValue
private static <T extends Comparable<T>> String nameValue(Property<T> property, Comparable<?> value) - Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ldcw;Ljava/lang/Comparable;)Ljava/lang/String;
intermediary method_10685
Lnet/minecraft/class_2512;method_10685(Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/String;
named nameValue
Lnet/minecraft/nbt/NbtHelper;nameValue(Lnet/minecraft/state/property/Property;Ljava/lang/Comparable;)Ljava/lang/String;
-
toFormattedString
Returns the human-readable, non-deserializable representation ofnbt
.This does not include contents of
NbtByteArray
,NbtIntArray
, andNbtLongArray
. To include them, calltoFormattedString(NbtElement, boolean)
withwithArrayContents
parameter set to true.- Returns:
- the human-readable, non-deserializable representation of
nbt
- See Also:
- Mappings:
Namespace Name Mixin selector official b
Lrd;b(Lrk;)Ljava/lang/String;
intermediary method_36118
Lnet/minecraft/class_2512;method_36118(Lnet/minecraft/class_2520;)Ljava/lang/String;
named toFormattedString
Lnet/minecraft/nbt/NbtHelper;toFormattedString(Lnet/minecraft/nbt/NbtElement;)Ljava/lang/String;
-
toFormattedString
Returns the human-readable, non-deserializable representation ofnbt
.- Parameters:
withArrayContents
- whether to include contents ofNbtByteArray
,NbtIntArray
, andNbtLongArray
- Returns:
- the human-readable, non-deserializable representation of
nbt
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lrk;Z)Ljava/lang/String;
intermediary method_36117
Lnet/minecraft/class_2512;method_36117(Lnet/minecraft/class_2520;Z)Ljava/lang/String;
named toFormattedString
Lnet/minecraft/nbt/NbtHelper;toFormattedString(Lnet/minecraft/nbt/NbtElement;Z)Ljava/lang/String;
-
appendFormattedString
public static StringBuilder appendFormattedString(StringBuilder stringBuilder, NbtElement nbt, int depth, boolean withArrayContents) - Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ljava/lang/StringBuilder;Lrk;IZ)Ljava/lang/StringBuilder;
intermediary method_36116
Lnet/minecraft/class_2512;method_36116(Ljava/lang/StringBuilder;Lnet/minecraft/class_2520;IZ)Ljava/lang/StringBuilder;
named appendFormattedString
Lnet/minecraft/nbt/NbtHelper;appendFormattedString(Ljava/lang/StringBuilder;Lnet/minecraft/nbt/NbtElement;IZ)Ljava/lang/StringBuilder;
-
appendIndent
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder;
intermediary method_36114
Lnet/minecraft/class_2512;method_36114(ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder;
named appendIndent
Lnet/minecraft/nbt/NbtHelper;appendIndent(ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder;
-
toPrettyPrintedText
Returns the pretty-printed text representation ofelement
.- Returns:
- the pretty-printed text representation of
element
- See Also:
- Mappings:
Namespace Name Mixin selector official c
Lrd;c(Lrk;)Lsw;
intermediary method_32270
Lnet/minecraft/class_2512;method_32270(Lnet/minecraft/class_2520;)Lnet/minecraft/class_2561;
named toPrettyPrintedText
Lnet/minecraft/nbt/NbtHelper;toPrettyPrintedText(Lnet/minecraft/nbt/NbtElement;)Lnet/minecraft/text/Text;
-
toNbtProviderString
Returns the string representation ofcompound
as used by the NBT provider in the data generator.The passed
compound
will be sorted and modified in-place to make it more human-readable e.g. by convertingNbtCompound
in thepalettes
NbtList
to its short string representation. Therefore the returned value is not an accurate representation of the original NBT.- Returns:
- the string representation of
compound
as used by the NBT provider in the data generator - See Also:
- Mappings:
Namespace Name Mixin selector official c
Lrd;c(Lqr;)Ljava/lang/String;
intermediary method_32271
Lnet/minecraft/class_2512;method_32271(Lnet/minecraft/class_2487;)Ljava/lang/String;
named toNbtProviderString
Lnet/minecraft/nbt/NbtHelper;toNbtProviderString(Lnet/minecraft/nbt/NbtCompound;)Ljava/lang/String;
-
fromNbtProviderString
public static NbtCompound fromNbtProviderString(String string) throws com.mojang.brigadier.exceptions.CommandSyntaxException Returns thestring
parsed as an NBT provider-formatted NBT compound.This method first parses the string as an NBT, then performs several conversions from human-readable
NbtCompound
items to the actual values used in-game.- Returns:
- the
string
parsed as an NBT provider-formatted NBT compound - Throws:
com.mojang.brigadier.exceptions.CommandSyntaxException
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Ljava/lang/String;)Lqr;
intermediary method_32260
Lnet/minecraft/class_2512;method_32260(Ljava/lang/String;)Lnet/minecraft/class_2487;
named fromNbtProviderString
Lnet/minecraft/nbt/NbtHelper;fromNbtProviderString(Ljava/lang/String;)Lnet/minecraft/nbt/NbtCompound;
-
toNbtProviderFormat
- Mappings:
Namespace Name Mixin selector official d
Lrd;d(Lqr;)Lqr;
intermediary method_32273
Lnet/minecraft/class_2512;method_32273(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487;
named toNbtProviderFormat
Lnet/minecraft/nbt/NbtHelper;toNbtProviderFormat(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtCompound;
-
fromNbtProviderFormat
- Mappings:
Namespace Name Mixin selector official e
Lrd;e(Lqr;)Lqr;
intermediary method_32275
Lnet/minecraft/class_2512;method_32275(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487;
named fromNbtProviderFormat
Lnet/minecraft/nbt/NbtHelper;fromNbtProviderFormat(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtCompound;
-
toNbtProviderFormattedPalette
- Mappings:
Namespace Name Mixin selector official f
Lrd;f(Lqr;)Ljava/lang/String;
intermediary method_32277
Lnet/minecraft/class_2512;method_32277(Lnet/minecraft/class_2487;)Ljava/lang/String;
named toNbtProviderFormattedPalette
Lnet/minecraft/nbt/NbtHelper;toNbtProviderFormattedPalette(Lnet/minecraft/nbt/NbtCompound;)Ljava/lang/String;
-
fromNbtProviderFormattedPalette
- Mappings:
Namespace Name Mixin selector official b
Lrd;b(Ljava/lang/String;)Lqr;
intermediary method_32267
Lnet/minecraft/class_2512;method_32267(Ljava/lang/String;)Lnet/minecraft/class_2487;
named fromNbtProviderFormattedPalette
Lnet/minecraft/nbt/NbtHelper;fromNbtProviderFormattedPalette(Ljava/lang/String;)Lnet/minecraft/nbt/NbtCompound;
-
putDataVersion
- Mappings:
Namespace Name Mixin selector official g
Lrd;g(Lqr;)Lqr;
intermediary method_48310
Lnet/minecraft/class_2512;method_48310(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487;
named putDataVersion
Lnet/minecraft/nbt/NbtHelper;putDataVersion(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtCompound;
-
putDataVersion
- Mappings:
Namespace Name Mixin selector official a
Lrd;a(Lqr;I)Lqr;
intermediary method_48308
Lnet/minecraft/class_2512;method_48308(Lnet/minecraft/class_2487;I)Lnet/minecraft/class_2487;
named putDataVersion
Lnet/minecraft/nbt/NbtHelper;putDataVersion(Lnet/minecraft/nbt/NbtCompound;I)Lnet/minecraft/nbt/NbtCompound;
-
getDataVersion
- Mappings:
Namespace Name Mixin selector official b
Lrd;b(Lqr;I)I
intermediary method_48309
Lnet/minecraft/class_2512;method_48309(Lnet/minecraft/class_2487;I)I
named getDataVersion
Lnet/minecraft/nbt/NbtHelper;getDataVersion(Lnet/minecraft/nbt/NbtCompound;I)I
-