IData
Link to idata
The IData interface is a generic Interface for handling Data like NBT. You can cast about all primitives (short, double, string, int, ...) as well as certain arrays to IData. Remember that while they offer similar features, IData and their counterparts are NOT the same, which is why they will be referred to as DataTypes (e.g. ByteData).
Importing the class
Link to importing-the-class
It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.
ZenScript Copyimport crafttweaker.api.data.IData;
Casters
Link to casters
Result Type | Is Implicit |
---|---|
Result Type boolean型 | Is Implicit false |
Result Type ICollectionData | Is Implicit false |
Result Type INumberData | Is Implicit false |
Methods
Link to methods
Name: asBoolean
Return Type: boolean
ZenScript Copy// IData.asBoolean() as boolean
{Display: {lore: ["Hello", "World"]}}.asBoolean();
Name: asCollection
Return Type: ICollectionData
ZenScript Copy// IData.asCollection() as ICollectionData
{Display: {lore: ["Hello", "World"]}}.asCollection();
Name: asNumber
Return Type: INumberData
ZenScript Copy// IData.asNumber() as INumberData
{Display: {lore: ["Hello", "World"]}}.asNumber();
Name: asString
Gets the String representation of this IData
Returns: String that represents this IData (value and type).
Return Type: string
ZenScript Copy// IData.asString() as string
{Display: {lore: ["Hello", "World"]}}.asString();
Name: contains
Checks if this IData contains another IData, mainly used in subclasses of ICollectionData, is the same as an equals check on other IData types
Returns: true if the given IData is contained in this IData
Return Type: boolean
ZenScript Copy// IData.contains(data as IData) as boolean
{Display: {lore: ["Hello", "World"]}}.contains("Display");
Parameter | Type | Description |
---|---|---|
Parameter data | Type IData | Description data to check if it is contained |
Name: copy
Makes a copy of this IData.
IData is immutable by default, use this to create a proper copy of the object.
Returns: a copy of this IData.
Return Type: IData
ZenScript Copy// IData.copy() as IData
{Display: {lore: ["Hello", "World"]}}.copy();
Name: getId
Gets the ID of the internal NBT tag.
Used to determine what NBT type is stored (in a list for example)
Returns: ID of the NBT tag that this data represents.
Return Type: byte
ZenScript Copy// IData.getId() as byte
{Display: {lore: ["Hello", "World"]}}.getId();
Name: getString
Gets the String representation of the internal INBT tag
Returns: String that represents the internal INBT of this IData.
Return Type: string
ZenScript Copy// IData.getString() as string
{Display: {lore: ["Hello", "World"]}}.getString();