Импорт класса

Link to импорт-класса

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.IData;

Implemented Interfaces

Link to implemented-interfaces

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

Name: listOf

Creates a collection of the given IData members.


This attempts to give the most accurate type for the given members, for example, if all the members are bytes, then it returns a ByteArrayData.

However if the types are mixed or do not have a *ArrayData version, then a ListData is returned.

Returns: A list of the given members.
Return Type: IData

ZenScript
Copy
// IData.listOf(members as IData[]) as IData

IData.listOf(1, 2, 3);
ПараметрТипОписание
Параметр
members
Тип
IData[]
Описание
The members to put in the list.
Result TypeЯвляется неявным
Result Type
boolean
Является неявным
false
Result Type
byte
Является неявным
false
Result Type
byte[]
Является неявным
false
Result Type
double
Является неявным
false
Result Type
float
Является неявным
false
Result Type
IData[string]
Является неявным
false
Result Type
int
Является неявным
false
Result Type
int[]
Является неявным
false
Result Type
long
Является неявным
false
Result Type
long[]
Является неявным
false
Result Type
short
Является неявным
false
Result Type
stdlib.List<IData>
Является неявным
false
Result Type
string
Является неявным
false

Name: add

Adds the given IData to this IData.

Returns: A new IData after adding the other data.
Return Type: IData

ZenScript
Copy
// IData.add(other as IData) as IData

(1 as IData).add(2);
ПараметрТипОписание
Параметр
other
Тип
IData
Описание
the other data to add.

Name: asBool

Casts this IData to a boolean.

Returns: this data as a bool
Return Type: boolean

ZenScript
Copy
// IData.asBool() as boolean

(1 as IData).asBool();

Name: asByte

Casts this IData to a byte.

Returns: this data as a byte
Return Type: byte

ZenScript
Copy
// IData.asByte() as byte

(1 as IData).asByte();

Name: asByteArray

Casts this IData to a byte array.

Returns: this data as a byte array
Return Type: byte[]

ZenScript
Copy
// IData.asByteArray() as byte[]

(1 as IData).asByteArray();

Name: asDouble

Casts this IData to a double.

Returns: this data as a double
Return Type: double

ZenScript
Copy
// IData.asDouble() as double

(1 as IData).asDouble();

Name: asFloat

Casts this IData to a float.

Returns: this data as a float
Return Type: float

ZenScript
Copy
// IData.asFloat() as float

(1 as IData).asFloat();

Name: asInt

Casts this IData to an int.

Returns: this data as an int
Return Type: int

ZenScript
Copy
// IData.asInt() as int

(1 as IData).asInt();

Name: asIntArray

Casts this IData to an int array.

Returns: this data as an int array
Return Type: int[]

ZenScript
Copy
// IData.asIntArray() as int[]

(1 as IData).asIntArray();

Name: asList

Casts this IData to a list.

Returns: this data as a list
Return Type: stdlib.List<IData>

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

(1 as IData).asList();

Name: asLong

Casts this IData to a long.

Returns: this data as a long
Return Type: long

ZenScript
Copy
// IData.asLong() as long

(1 as IData).asLong();

Name: asLongArray

Casts this IData to a long array.

Returns: this data as a long array
Return Type: long[]

ZenScript
Copy
// IData.asLongArray() as long[]

(1 as IData).asLongArray();

Name: asMap

Casts this IData to a map.

Returns: this data as a map
Return Type: IData[string]

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

(1 as IData).asMap();

Name: asShort

Casts this IData to a short.

Returns: this data as a short
Return Type: short

ZenScript
Copy
// IData.asShort() as short

(1 as IData).asShort();

Name: asString

Gets an escaped string version of this IData, quotes are included in the output

E.G println(("hello" as IData).asString()) prints "hello"

Returns: The escaped string version of this IData.
Return Type: string

ZenScript
Copy
// IData.asString() as string

(1 as IData).asString();

Name: compareTo

Compares this IData to the other IData

Returns: The comparison result.
Return Type: int

ZenScript
Copy
// IData.compareTo(other as IData) as int

(1 as IData).compareTo(5);
ПараметрТипОписание
Параметр
other
Тип
IData
Описание
the data to be compared.

Name: copy

Return Type: IData

ZenScript
Copy
// IData.copy() as IData

(1 as IData).copy();

Name: getAsString

Gets the literal string version of this IData.

E.G println(("hello" as IData).getAsString()) prints hello

Returns: The literal string version of this IData.
Return Type: string

ZenScript
Copy
// IData.getAsString() as string

(1 as IData).getAsString();

Name: getId

Gets the internal ID of this data.

Returns: the intenral ID of this data.
Return Type: byte

ZenScript
Copy
// IData.getId() as byte

(1 as IData).getId();

Name: getKeys

Gets the keys of this IData

Returns: The keys of this IData.
Return Type: Set<string>

ZenScript
Copy
// IData.getKeys() as Set<string>

(1 as IData).getKeys();

Name: isEmpty

Checks if this data is empty.

Returns: True if empty.
Return Type: boolean

ZenScript
Copy
// IData.isEmpty() as boolean

(1 as IData).isEmpty();

Name: length

Gets the length of this IData.

Returns: The length of this IData.
Return Type: int

ZenScript
Copy
// IData.length() as int

(1 as IData).length();

Name: map

Maps this IData to another IData based on the given operation.

Returns: A new IData from the operation
Return Type: IData

ZenScript
Copy
// IData.map(operation as Function<IData,IData>) as IData

(1 as IData).map((data) => 3);
ПараметрТипОписание
Параметр
operation
Тип
Function<IData,IData>
Описание
The operation to apply to this IData

Name: merge

Merges the given data with this data.

Returns: the result of merging the datas.
Return Type: IData

ZenScript
Copy
IData.merge(other as IData) as IData
ПараметрТипОписание
Параметр
other
Тип
IData
Описание
the data to merge

Name: put

Puts the given value inside this IData at the given index.

ZenScript
Copy
// IData.put(index as string, value as IData?)

new MapData().put("key", "value");
ПараметрТипОписание
Параметр
index
Тип
string
Описание
The key to store the data at
Параметр
value
Тип
IData?
Описание
The data to store.

Name: remove

Removes the stored data at the given index.

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

[1, 2, 3] as IData.remove(0);
ПараметрТипОписание
Параметр
index
Тип
int
Описание
The index to remove.

Name: remove

Removes the stored data at the given key.

ZenScript
Copy
// IData.remove(key as string)

{key: "value"} as IData.remove("key");
ПараметрТипОписание
Параметр
key
Тип
string
Описание
The key to remove.

Name: setAt

Sets the given value inside this IData at the given index.

ZenScript
Copy
IData.setAt(name as string, data as IData?)
ПараметрТипОписание
Параметр
name
Тип
string
Описание
The key to store the data at
Параметр
data
Тип
IData?
Описание
The data to store.

Операторы

Link to операторы

Name: ADD

Adds the given IData to this IData.

ZenScript
Copy
myIData + other as IData
(1 as IData) + 2

Name: AND

Applies a bitwise AND (&) operation to this IData and the other IData

ZenScript
Copy
myIData & other as IData
(1 as IData) & 2

Name: CAT

Concatenates the given IData to this IData.

ZenScript
Copy
myIData ~ other as IData
(1 as IData) ~ 2

Name: COMPARE

Compares this IData to the other IData

ZenScript
Copy
myIData < other as IData
(1 as IData) < 5

Name: CONTAINS

Checks if this IData contains the other IData


For most data types, this will check equality of the data, but for map data, it will check if the other data is a string, and then check if it contains a key with that name

ZenScript
Copy
other as IData in myIData

Name: DIV

Divides the given IData from this IData.

ZenScript
Copy
myIData / other as IData
(1 as IData) / 2

Name: EQUALS

Checks if this IData is equal to the other IData.

ZenScript
Copy
myIData == other as IData

Name: INDEXGET

Gets the data at the given index.

ZenScript
Copy
[myIData]
[[1, 2, 3] as IData]

Name: INDEXSET

Puts the given value inside this IData at the given index.

ZenScript
Copy
[myIData] = index as string
[new MapData()] = "key"

Name: MOD

Applies a modulo operation to this IData against the other IData.

ZenScript
Copy
myIData % other as IData
(1 as IData) % 2

Name: MUL

Multiplies the given IData to this IData.

ZenScript
Copy
myIData * other as IData
(1 as IData) * 2

Name: NEG

Negates this IData.

ZenScript
Copy
-myIData
-(1 as IData)

Name: NOT

Applies a NOT (!) operation to this IData.

ZenScript
Copy
!myIData
!true

Name: OR

Applies a bitwise OR (|) operation to this IData and the other IData

ZenScript
Copy
myIData | other as IData
(1 as IData) | 2

Name: SHL

Applies a SHL (<<) operation to this data by the other data

ZenScript
Copy
myIData << other as IData
(1 as IData) << 2

Name: SHR

Applies a SHR (>>) operation to this data by the other data

ZenScript
Copy
myIData >> other as IData
(1 as IData) >> 2

Name: SUB

Subtracts the given IData from this IData.

ZenScript
Copy
myIData - other as IData
(1 as IData) - 2

Name: XOR

Applies a bitwise XOR (^) operation to this IData and the other IData

ZenScript
Copy
myIData ^ other as IData
(1 as IData) ^ 2

Свойства

Link to свойства

НазваниеТипИмеет GetterИмеет SetterОписание
Название
isEmpty
Тип
boolean
Имеет Getter
true
Имеет Setter
false
Описание
Checks if this data is empty.
Название
keys
Тип
Set<string>
Имеет Getter
true
Имеет Setter
false
Описание
Gets the keys of this IData
Название
length
Тип
int
Имеет Getter
true
Имеет Setter
false
Описание
Gets the length of this IData.