ICollectionData

The ICollection data is used to represent a collection of crafttweaker.api.data.IData like a List

This class was added by a mod with mod-id crafttweaker. So you need to have this mod installed if you want to use this feature.

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.

crafttweaker.api.data.ICollectionData

Implemented Interfaces

ICollectionData implements the following interfaces. That means any method available to them can also be used on this class.

Methods

add

new ListData(["Hello", "World"]).add(value as crafttweaker.api.data.IData);
new ListData(["Hello", "World"]).add("today");
ParameterTypeDescription
valuecrafttweaker.api.data.IDataThe value to add to the list
new ListData(["Hello", "World"]).add(index as int, value as crafttweaker.api.data.IData);
new ListData(["Hello", "World"]).add(1, "beautiful");
ParameterTypeDescription
indexintThe index to add to. Subsequent items will be moved one index higher
valuecrafttweaker.api.data.IDataThe value to add to the list

asList

Gets a List representation of this IData, returns null on anything but crafttweaker.api.data.ListData.

Returns: null if this IData is not a list.

Returns List<crafttweaker.api.data.IData>

new ListData(["Hello", "World"]).asList();

asMap

Gets a Map<String, IData> representation of this IData, returns null on anything but crafttweaker.api.data.MapData.

Returns: null if this IData is not a map.

Returns crafttweaker.api.data.IData[String]

new ListData(["Hello", "World"]).asMap();

asString

Gets the String representation of this IData

Returns: String that represents this IData (value and type).

Returns String

new ListData(["Hello", "World"]).asString();

clear

Removes every element in the list

new ListData(["Hello", "World"]).clear();

contains

Checks if this IData contains another IData, mainly used in subclasses of crafttweaker.api.data.ICollectionData, is the same as an equals check on other IData types

Returns boolean

new ListData(["Hello", "World"]).contains(data as crafttweaker.api.data.IData);
new ListData(["Hello", "World"]).contains("Display");
ParameterTypeDescription
datacrafttweaker.api.data.IDatadata to check if it is contained

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.

Returns crafttweaker.api.data.IData

new ListData(["Hello", "World"]).copy();

get

Retrieves the crafttweaker.api.data.IData stored at the given index.

Returns crafttweaker.api.data.IData

new ListData(["Hello", "World"]).get(index as int);
new ListData(["Hello", "World"]).get(0);
ParameterTypeDescription
indexintThe index (0-based)

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.

Returns byte

new ListData(["Hello", "World"]).getId();

getString

Gets the String representation of the internal INBT tag

Returns: String that represents the internal INBT of this IData.

Returns String

new ListData(["Hello", "World"]).getString();

remove

Removes the crafttweaker.api.data.IData stored at the given index.

Returns crafttweaker.api.data.IData

new ListData(["Hello", "World"]).remove(index as int);
new ListData(["Hello", "World"]).remove(0);
ParameterTypeDescription
indexintThe index (0-based)

set

Sets the item at the provided index to the given value

Returns crafttweaker.api.data.IData

new ListData(["Hello", "World"]).set(index as int, value as crafttweaker.api.data.IData);
new ListData(["Hello", "World"]).set(0, "Bye");
ParameterTypeDescription
indexintThe index to set (0-based)
valuecrafttweaker.api.data.IDataThe new Value

Properties

名称TypeHas GetterHas Setter
sizeinttruefalse