ICollectionData #所收集数据

Link to icollectiondata-所收集数据

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

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;

已实现的接口

Link to 已实现的接口

ICollectionData实现了以下接口。 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
参数类型
参数
members
类型
IData[]
Result Type是否隐藏
Result Type
布尔值
是否隐藏
false
Result Type
ICollectionData #所收集数据
是否隐藏
false
Result Type
INumberData #编号数据
是否隐藏
false

Name: add

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

new ListData(["Hello", "World"]).add("today");
参数类型描述
参数
value
类型
IData #数据
描述
要添加到列表的值

Name: add

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

new ListData(["Hello", "World"]).add(1, "beautiful");
参数类型描述
参数
index
类型
int
描述
要添加的索引。 后续项目将会上移一个索引
参数
value
类型
IData #数据
描述
要添加到列表的值

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

获取列表 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

获取此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

删除列表中的每个元素

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");
参数类型描述
参数
data
类型
IData #数据
描述
要检查是否有包含的数据

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);
参数类型描述
参数
index
类型
int
描述
The index (从0开始)

Name: getId

获取内部NBT标签的 ID。

用来确定哪些NBT类型被存储(例如在列表中)

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

获取内部INBT标记的字符串表示形式

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);
参数类型描述
参数
index
类型
int
描述
The index (从0开始)

Name: setAt

在给定值的索引处设置项目

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");
参数类型描述
参数
index
类型
int
描述
要设置的索引 (从0开始)
参数
value
类型
IData #数据
描述
新值
名称类型可获得可设置
名称
empty
类型
布尔值
可获得
true
可设置
false
名称
size #大小
类型
int
可获得
true
可设置
false