Package net.minecraft.nbt
Class NbtHelper
java.lang.Object
net.minecraft.nbt.NbtHelper
Helper methods for handling NBT.
- Mappings:
Namespace Name official rdintermediary net/minecraft/class_2512named net/minecraft/nbt/NbtHelper
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Comparator<NbtList>private static final charprivate static final Splitterprivate static final Stringprivate static final Splitterstatic final Stringprivate static final Comparator<NbtList>private static final intprivate static final intprivate static final charprivate static final Loggerprivate static final char -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic StringBuilderappendFormattedString(StringBuilder stringBuilder, NbtElement nbt, int depth, boolean withArrayContents) private static StringBuilderappendIndent(int depth, StringBuilder stringBuilder) static NbtCompoundfromBlockPos(BlockPos pos) Returns the serialized block position.static NbtCompoundfromBlockState(BlockState state) Returns the serialized block state.static NbtCompoundfromFluidState(FluidState state) Returns the serialized fluid state.(package private) static NbtCompoundfromNbtProviderFormat(NbtCompound compound) (package private) static NbtCompoundstatic NbtCompoundfromNbtProviderString(String string) Returns thestringparsed as an NBT provider-formatted NBT compound.static NbtIntArraySerializes aUUIDinto its equivalent NBT representation.static intgetDataVersion(NbtCompound nbt, int fallback) static booleanmatches(@Nullable NbtElement standard, @Nullable NbtElement subject, boolean ignoreListOrder) Returns whetherstandardis a subset ofsubject.private static <T extends Comparable<T>>
StringnameValue(Property<T> property, Comparable<?> value) static NbtCompoundstatic NbtCompoundputDataVersion(NbtCompound nbt, int dataVersion) static BlockPostoBlockPos(NbtCompound nbt) Returns the block position from thenbt.static BlockStatetoBlockState(RegistryEntryLookup<Block> blockLookup, NbtCompound nbt) Returns the block state from thenbt.static StringReturns the human-readable, non-deserializable representation ofnbt.static StringtoFormattedString(NbtElement nbt, boolean withArrayContents) Returns the human-readable, non-deserializable representation ofnbt.static @Nullable com.mojang.authlib.GameProfiletoGameProfile(NbtCompound nbt) Returns the game profile converted fromnbt.(package private) static NbtCompoundtoNbtProviderFormat(NbtCompound compound) (package private) static StringtoNbtProviderFormattedPalette(NbtCompound compound) static StringtoNbtProviderString(NbtCompound compound) Returns the string representation ofcompoundas used by the NBT provider in the data generator.static TexttoPrettyPrintedText(NbtElement element) Returns the pretty-printed text representation ofelement.static UUIDtoUuid(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 NbtCompoundwriteGameProfile(NbtCompound nbt, com.mojang.authlib.GameProfile profile) Writes the game profile tonbt.
-
Field Details
-
BLOCK_POS_COMPARATOR
- Mappings:
Namespace Name Mixin selector official bLrd;b:Ljava/util/Comparator;intermediary field_27816Lnet/minecraft/class_2512;field_27816:Ljava/util/Comparator;named BLOCK_POS_COMPARATORLnet/minecraft/nbt/NbtHelper;BLOCK_POS_COMPARATOR:Ljava/util/Comparator;
-
ENTITY_POS_COMPARATOR
- Mappings:
Namespace Name Mixin selector official cLrd;c:Ljava/util/Comparator;intermediary field_27817Lnet/minecraft/class_2512;field_27817:Ljava/util/Comparator;named ENTITY_POS_COMPARATORLnet/minecraft/nbt/NbtHelper;ENTITY_POS_COMPARATOR:Ljava/util/Comparator;
-
DATA_KEY
- See Also:
- Mappings:
Namespace Name Mixin selector official aLrd;a:Ljava/lang/String;intermediary field_33224Lnet/minecraft/class_2512;field_33224:Ljava/lang/String;named DATA_KEYLnet/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 dLrd;d:Cintermediary field_33225Lnet/minecraft/class_2512;field_33225:Cnamed LEFT_CURLY_BRACKETLnet/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 eLrd;e:Cintermediary field_33226Lnet/minecraft/class_2512;field_33226:Cnamed RIGHT_CURLY_BRACKETLnet/minecraft/nbt/NbtHelper;RIGHT_CURLY_BRACKET:C
-
COMMA
- See Also:
- Mappings:
Namespace Name Mixin selector official fLrd;f:Ljava/lang/String;intermediary field_33227Lnet/minecraft/class_2512;field_33227:Ljava/lang/String;named COMMALnet/minecraft/nbt/NbtHelper;COMMA:Ljava/lang/String;
-
COLON
private static final char COLON- See Also:
- Mappings:
Namespace Name Mixin selector official gLrd;g:Cintermediary field_33228Lnet/minecraft/class_2512;field_33228:Cnamed COLONLnet/minecraft/nbt/NbtHelper;COLON:C
-
COMMA_SPLITTER
- Mappings:
Namespace Name Mixin selector official hLrd;h:Lcom/google/common/base/Splitter;intermediary field_27818Lnet/minecraft/class_2512;field_27818:Lcom/google/common/base/Splitter;named COMMA_SPLITTERLnet/minecraft/nbt/NbtHelper;COMMA_SPLITTER:Lcom/google/common/base/Splitter;
-
COLON_SPLITTER
- Mappings:
Namespace Name Mixin selector official iLrd;i:Lcom/google/common/base/Splitter;intermediary field_27819Lnet/minecraft/class_2512;field_27819:Lcom/google/common/base/Splitter;named COLON_SPLITTERLnet/minecraft/nbt/NbtHelper;COLON_SPLITTER:Lcom/google/common/base/Splitter;
-
LOGGER
- Mappings:
Namespace Name Mixin selector official jLrd;j:Lorg/slf4j/Logger;intermediary field_11582Lnet/minecraft/class_2512;field_11582:Lorg/slf4j/Logger;named LOGGERLnet/minecraft/nbt/NbtHelper;LOGGER:Lorg/slf4j/Logger;
-
field_33229
private static final int field_33229- See Also:
- Mappings:
Namespace Name Mixin selector official kLrd;k:Iintermediary field_33229Lnet/minecraft/class_2512;field_33229:Inamed field_33229Lnet/minecraft/nbt/NbtHelper;field_33229:I
-
field_33230
private static final int field_33230- See Also:
- Mappings:
Namespace Name Mixin selector official lLrd;l:Iintermediary field_33230Lnet/minecraft/class_2512;field_33230:Inamed field_33230Lnet/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 aLrd;a(Lqr;)Lcom/mojang/authlib/GameProfile;intermediary method_10683Lnet/minecraft/class_2512;method_10683(Lnet/minecraft/class_2487;)Lcom/mojang/authlib/GameProfile;named toGameProfileLnet/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 aLrd;a(Lqr;Lcom/mojang/authlib/GameProfile;)Lqr;intermediary method_10684Lnet/minecraft/class_2512;method_10684(Lnet/minecraft/class_2487;Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_2487;named writeGameProfileLnet/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 whetherstandardis a subset ofsubject.Elements are matched based on the following order:
- Passing the same reference to both parameters will return
true. - If
standardisnull, returntrue. - If
subjectisnull, returnfalse. - If the types of
standardandsubjectare different, returnfalse. - If
standardisNbtCompound, returntrueif all keys in thestandardexist insubjectand the values match (comparing recursively.) - If
standardisNbtListandignoreListOrderistrue, returntrueif both lists are empty, or if there exists a "matching" value insubjectfor all values ofstandard(that is, ifstandardis 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
standardis a subset ofsubject - Mappings:
Namespace Name Mixin selector official aLrd;a(Lrk;Lrk;Z)Zintermediary method_10687Lnet/minecraft/class_2512;method_10687(Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;Z)Znamed matchesLnet/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 aUUIDinto its equivalent NBT representation.- Since:
- 20w10a
- See Also:
- Mappings:
Namespace Name Mixin selector official aLrd;a(Ljava/util/UUID;)Lqv;intermediary method_25929Lnet/minecraft/class_2512;method_25929(Ljava/util/UUID;)Lnet/minecraft/class_2495;named fromUuidLnet/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- ifelementis not a valid representation of a UUID- Since:
- 20w10a
- See Also:
- Mappings:
Namespace Name Mixin selector official aLrd;a(Lrk;)Ljava/util/UUID;intermediary method_25930Lnet/minecraft/class_2512;method_25930(Lnet/minecraft/class_2520;)Ljava/util/UUID;named toUuidLnet/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 bLrd;b(Lqr;)Lgu;intermediary method_10691Lnet/minecraft/class_2512;method_10691(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2338;named toBlockPosLnet/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 aLrd;a(Lgu;)Lqr;intermediary method_10692Lnet/minecraft/class_2512;method_10692(Lnet/minecraft/class_2338;)Lnet/minecraft/class_2487;named fromBlockPosLnet/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.AIRif the block name is not present.- Returns:
- the block state from the
nbt - See Also:
- Mappings:
Namespace Name Mixin selector official aLrd;a(Lhf;Lqr;)Ldby;intermediary method_10681Lnet/minecraft/class_2512;method_10681(Lnet/minecraft/class_7871;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2680;named toBlockStateLnet/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 aLrd;a(Ldca;Lddb;Ljava/lang/String;Lqr;Lqr;)Ldca;intermediary method_10682Lnet/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 withPropertyLnet/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 aLrd;a(Ldby;)Lqr;intermediary method_10686Lnet/minecraft/class_2512;method_10686(Lnet/minecraft/class_2680;)Lnet/minecraft/class_2487;named fromBlockStateLnet/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 aLrd;a(Ldxb;)Lqr;intermediary method_36115Lnet/minecraft/class_2512;method_36115(Lnet/minecraft/class_3610;)Lnet/minecraft/class_2487;named fromFluidStateLnet/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 aLrd;a(Lddb;Ljava/lang/Comparable;)Ljava/lang/String;intermediary method_10685Lnet/minecraft/class_2512;method_10685(Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/String;named nameValueLnet/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)withwithArrayContentsparameter set to true.- Returns:
- the human-readable, non-deserializable representation of
nbt - See Also:
- Mappings:
Namespace Name Mixin selector official bLrd;b(Lrk;)Ljava/lang/String;intermediary method_36118Lnet/minecraft/class_2512;method_36118(Lnet/minecraft/class_2520;)Ljava/lang/String;named toFormattedStringLnet/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 aLrd;a(Lrk;Z)Ljava/lang/String;intermediary method_36117Lnet/minecraft/class_2512;method_36117(Lnet/minecraft/class_2520;Z)Ljava/lang/String;named toFormattedStringLnet/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 aLrd;a(Ljava/lang/StringBuilder;Lrk;IZ)Ljava/lang/StringBuilder;intermediary method_36116Lnet/minecraft/class_2512;method_36116(Ljava/lang/StringBuilder;Lnet/minecraft/class_2520;IZ)Ljava/lang/StringBuilder;named appendFormattedStringLnet/minecraft/nbt/NbtHelper;appendFormattedString(Ljava/lang/StringBuilder;Lnet/minecraft/nbt/NbtElement;IZ)Ljava/lang/StringBuilder;
-
appendIndent
- Mappings:
Namespace Name Mixin selector official aLrd;a(ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder;intermediary method_36114Lnet/minecraft/class_2512;method_36114(ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder;named appendIndentLnet/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 cLrd;c(Lrk;)Lsw;intermediary method_32270Lnet/minecraft/class_2512;method_32270(Lnet/minecraft/class_2520;)Lnet/minecraft/class_2561;named toPrettyPrintedTextLnet/minecraft/nbt/NbtHelper;toPrettyPrintedText(Lnet/minecraft/nbt/NbtElement;)Lnet/minecraft/text/Text;
-
toNbtProviderString
Returns the string representation ofcompoundas used by the NBT provider in the data generator.The passed
compoundwill be sorted and modified in-place to make it more human-readable e.g. by convertingNbtCompoundin thepalettesNbtListto its short string representation. Therefore the returned value is not an accurate representation of the original NBT.- Returns:
- the string representation of
compoundas used by the NBT provider in the data generator - See Also:
- Mappings:
Namespace Name Mixin selector official cLrd;c(Lqr;)Ljava/lang/String;intermediary method_32271Lnet/minecraft/class_2512;method_32271(Lnet/minecraft/class_2487;)Ljava/lang/String;named toNbtProviderStringLnet/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 thestringparsed as an NBT provider-formatted NBT compound.This method first parses the string as an NBT, then performs several conversions from human-readable
NbtCompounditems to the actual values used in-game.- Returns:
- the
stringparsed as an NBT provider-formatted NBT compound - Throws:
com.mojang.brigadier.exceptions.CommandSyntaxException- See Also:
- Mappings:
Namespace Name Mixin selector official aLrd;a(Ljava/lang/String;)Lqr;intermediary method_32260Lnet/minecraft/class_2512;method_32260(Ljava/lang/String;)Lnet/minecraft/class_2487;named fromNbtProviderStringLnet/minecraft/nbt/NbtHelper;fromNbtProviderString(Ljava/lang/String;)Lnet/minecraft/nbt/NbtCompound;
-
toNbtProviderFormat
- Mappings:
Namespace Name Mixin selector official dLrd;d(Lqr;)Lqr;intermediary method_32273Lnet/minecraft/class_2512;method_32273(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487;named toNbtProviderFormatLnet/minecraft/nbt/NbtHelper;toNbtProviderFormat(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtCompound;
-
fromNbtProviderFormat
- Mappings:
Namespace Name Mixin selector official eLrd;e(Lqr;)Lqr;intermediary method_32275Lnet/minecraft/class_2512;method_32275(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487;named fromNbtProviderFormatLnet/minecraft/nbt/NbtHelper;fromNbtProviderFormat(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtCompound;
-
toNbtProviderFormattedPalette
- Mappings:
Namespace Name Mixin selector official fLrd;f(Lqr;)Ljava/lang/String;intermediary method_32277Lnet/minecraft/class_2512;method_32277(Lnet/minecraft/class_2487;)Ljava/lang/String;named toNbtProviderFormattedPaletteLnet/minecraft/nbt/NbtHelper;toNbtProviderFormattedPalette(Lnet/minecraft/nbt/NbtCompound;)Ljava/lang/String;
-
fromNbtProviderFormattedPalette
- Mappings:
Namespace Name Mixin selector official bLrd;b(Ljava/lang/String;)Lqr;intermediary method_32267Lnet/minecraft/class_2512;method_32267(Ljava/lang/String;)Lnet/minecraft/class_2487;named fromNbtProviderFormattedPaletteLnet/minecraft/nbt/NbtHelper;fromNbtProviderFormattedPalette(Ljava/lang/String;)Lnet/minecraft/nbt/NbtCompound;
-
putDataVersion
- Mappings:
Namespace Name Mixin selector official gLrd;g(Lqr;)Lqr;intermediary method_48310Lnet/minecraft/class_2512;method_48310(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487;named putDataVersionLnet/minecraft/nbt/NbtHelper;putDataVersion(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtCompound;
-
putDataVersion
- Mappings:
Namespace Name Mixin selector official aLrd;a(Lqr;I)Lqr;intermediary method_48308Lnet/minecraft/class_2512;method_48308(Lnet/minecraft/class_2487;I)Lnet/minecraft/class_2487;named putDataVersionLnet/minecraft/nbt/NbtHelper;putDataVersion(Lnet/minecraft/nbt/NbtCompound;I)Lnet/minecraft/nbt/NbtCompound;
-
getDataVersion
- Mappings:
Namespace Name Mixin selector official bLrd;b(Lqr;I)Iintermediary method_48309Lnet/minecraft/class_2512;method_48309(Lnet/minecraft/class_2487;I)Inamed getDataVersionLnet/minecraft/nbt/NbtHelper;getDataVersion(Lnet/minecraft/nbt/NbtCompound;I)I
-