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

Importare la Classe

Link to importare-la-classe

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
Copy
import crafttweaker.api.data.ICollectionData;

Interfacce Implementate

Link to interfacce-implementate

ICollectionData implements the following interfaces. That means all methods defined in these interfaces are also available in ICollectionData

Name: getFromMembers

Creates the most specific ICollectionData form possible for the provided members.

Tries to return (in order) ByteArrayData, IntArrayData, LongArrayData or if neither is applicable ListData

Return Type: ICollectionData

ZenScript
Copy
ICollectionData.getFromMembers(members as IData[]) as ICollectionData
ParametroTipo
Parametro
members
Tipo
IData[]
Result TypeImplicito
Result Type
boolean
Implicito
no
Result Type
ICollectionData
Implicito
no
Result Type
INumberData
Implicito
no

Name: add

ZenScript
Copy
// ICollectionData.add(value as IData)

new ListData(["Hello", "World"]).add("today");
ParametroTipoDescrizione
Parametro
valore
Tipo
IData
Descrizione
The value to add to the list

Name: add

ZenScript
Copy
// ICollectionData.add(index as int, value as IData)

new ListData(["Hello", "World"]).add(1, "beautiful");
ParametroTipoDescrizione
Parametro
indice
Tipo
int
Descrizione
The index to add to. Subsequent items will be moved one index higher
Parametro
valore
Tipo
IData
Descrizione
The value to add to the list

Name: asBoolean

Return Type: boolean

ZenScript
Copy
// ICollectionData.asBoolean() as boolean

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

Name: asCollection

Return Type: ICollectionData

ZenScript
Copy
// ICollectionData.asCollection() as ICollectionData

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

Name: asList

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

Returns: null if this IData is not a list.
Return Type: stdlib.List<IData>

ZenScript
Copy
// ICollectionData.asList() as stdlib.List<IData>

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

Name: asMap

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

Returns: null if this IData is not a map.
Return Type: IData[string]

ZenScript
Copy
// ICollectionData.asMap() as IData[string]

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

Name: asNumber

Return Type: INumberData

ZenScript
Copy
// ICollectionData.asNumber() as INumberData

new ListData(["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
// ICollectionData.asString() as string

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

Name: clear

Removes every element in the list

ZenScript
Copy
// ICollectionData.clear()

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

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
// ICollectionData.contains(data as IData) as boolean

new ListData(["Hello", "World"]).contains("Display");
ParametroTipoDescrizione
Parametro
data
Tipo
IData
Descrizione
data to check if it is contained

Name: getAt

Retrieves the IData stored at the given index.

Returns: The IData
Return Type: IData

ZenScript
Copy
// ICollectionData.getAt(index as int) as IData

new ListData(["Hello", "World"]).getAt(0);
ParametroTipoDescrizione
Parametro
indice
Tipo
int
Descrizione
The index (0-based)

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
// ICollectionData.getId() as byte

new ListData(["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
// ICollectionData.getString() as string

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

Name: isEmpty

Return Type: boolean

ZenScript
Copy
// ICollectionData.isEmpty() as boolean

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

Name: remove

Removes the IData stored at the given index.

Returns: The IData that was removed
Return Type: IData

ZenScript
Copy
// ICollectionData.remove(index as int) as IData

new ListData(["Hello", "World"]).remove(0);
ParametroTipoDescrizione
Parametro
indice
Tipo
int
Descrizione
The index (0-based)

Name: setAt

Sets the item at the provided index to the given value

Returns: The replaced value
Return Type: IData

ZenScript
Copy
// ICollectionData.setAt(index as int, value as IData) as IData

new ListData(["Hello", "World"]).setAt(0, "Bye");
ParametroTipoDescrizione
Parametro
indice
Tipo
int
Descrizione
The index to set (0-based)
Parametro
valore
Tipo
IData
Descrizione
The new Value
NomeTipoHa GetterHa Setter
Nome
empty
Tipo
boolean
Ha Getter
Ha Setter
no
Nome
size
Tipo
int
Ha Getter
Ha Setter
no