ToolAPI
Index
Interfaces
Functions
- addBlockMaterial
- addToolMaterial
- dropExpOrbs
- dropOreExp
- fortuneDropModifier
- getBlockData
- getBlockDestroyLevel
- getBlockMaterial
- getBlockMaterialName
- getCarriedToolData
- getCarriedToolLevel
- getDestroyTimeViaTool
- getEnchantExtraData
- getToolData
- getToolLevel
- getToolLevelViaBlock
- refresh
- registerBlockDiggingLevel
- registerBlockMaterial
- registerBlockMaterialAsArray
- registerSword
- registerTool
- resetEngine
Functions
addBlockMaterial
Creates new material with specified breaking speed multiplier. Some of the materials are already registered:
stone - used for pickaxes
wood - used for axes
dirt - used for shovels
plant - used for all plants (no vanilla tool supports this material)
fibre - used for swords (to break web)
cobweb - currently not used
unbreaking - used for unbreaking blocks, liquids, end portal, etc.
Parameters
name: string
new (or existing) material name
breakingMultiplier: number
multiplier used to calculate block breaking speed. 1 is a default value for dirt and 3 is a default value for stone
Returns void
addToolMaterial
Creates new tool material with specified parameters. Some of the tool materials are already registered:
wood - used for wooden instruments
stone - used for stone instruments
iron - used for iron instruments
golden - used for golden instruments
diamond - used for diamond instruments
Parameters
name: string
new (or existing) material name
material: ToolMaterial
parameters describing material properties
Returns void
dropExpOrbs
Spawns experience orbs on the specified coordinate.
Parameters
x: number
y: number
z: number
value: number
amount of experience to spawn
Returns void
dropOreExp
Spawns random amount of experience on the specified block coordinates.
Parameters
coords: Vector
block coordinates
minVal: number
minimum amount of orbs to be spawned
maxVal: number
maximum amount of orbs to be spawned
modifier: number
additional experiences, usually passed from ToolAPI.EnchantData.experience field
Returns void
fortuneDropModifier
Applies fortune drop modifier to the drop array.
Parameters
drop: ItemInstanceArray[]
drop array containing number of the arrays
level: number
enchantment level
Returns ItemInstanceArray[]
getBlockData
Parameters
blockID: number
numeric tile ID
Returns BlockData | undefined
Object containing ToolAPI block data or undefined if no block data was specified for this block.
getBlockDestroyLevel
Parameters
blockID: number
numeric tile ID
Returns number
Destroy level of the block with specified ID or
0, if no block data was specified for this block.
getBlockMaterial
Parameters
blockID: number
numeric tile ID
Returns Nullable<BlockMaterial>
Object containing block material information or
null, if no block data was specified for this block.
getBlockMaterialName
Parameters
blockID: number
numeric tile ID
Returns Nullable<string>
getCarriedToolData
Returns any
Carried tool information stored in slightly modified ToolAPI.ToolParams object or null if no tool data was specified.
getCarriedToolLevel
Returns number
Carried tool's breaking level or
0if no tool data was provided.
getDestroyTimeViaTool
Calculates destroy time for the block that is being broken with specified tool at the specified coords. Used mostly by Core Engine to apply break. time
Parameters
fullBlock: Tile
toolItem: ItemInstance
coords: ItemUseCoordinates
optionalignoreNative: boolean
if block and item are native items, and this parameter is set to true, all the calculations will still be performed
Returns number
getEnchantExtraData
Parameters
optionalextra: ItemExtraData
item extra instance, if not specified, method uses carried item's extra
Returns EnchantData
Enchant data object, containing enchants used for blocks destroy speed calculations.
getToolData
Parameters
itemID: number
numeric item ID
Returns Nullable<ToolParams>
Tool information stored in slightly modified ToolAPI.ToolParams object or null if no tool data was specified.
getToolLevel
Parameters
itemID: number
numeric item ID
Returns number
Tool's breaking level or 0 if no tool data was provided.
getToolLevelViaBlock
Parameters
itemID: number
numeric item ID
blockID: number
numeric tile ID
Returns number
Digging level if specified tool can mine specified block,
0if data for the tool or for the block was not specified or if specified tool cannot mine specified block.
refresh
- That feature is obsolete
Backwards compatibility.
Returns void
registerBlockDiggingLevel
Sets digging level for block. If digging level of tool is higher then block's one, the block is dropped.
Parameters
uid: number
numeric tile ID
level: number
block's digging level
Returns void
registerBlockMaterial
Registers material and digging level for the specified block.
Parameters
uid: number
numeric tile ID
materialName: string
material name
optionallevel: number
block's digging level
optionalisNative: boolean
used to mark vanilla blocks data. Generally used within Core Engine code and should not be used within mods until you really know what you're doing
Returns void
registerBlockMaterialAsArray
Registers material and digging level for the specified blocks.
Parameters
materialName: string
material name
UIDs: number[]
an array of numeric tiles IDs
isNative: boolean
used to mark vanilla blocks data. Generally used within Core Engine code and should not be used within mods until you really know what you're doing
Returns void
registerSword
Registers item as a sword.
Parameters
id: number
numeric item ID
toolMaterial: string | ToolMaterial
registered tool material name or tool material object used to register the sword
optionalparams: ToolParams
additional tool parameters
Returns void
registerTool
Registers item as a tool.
Parameters
id: number
numeric item ID
toolMaterial: string | ToolMaterial
registered tool material name or tool material object used to register the tool
blockMaterials: string[]
block material names that can be broken by this instrument. For example, you can use ["stone"] for the pickaxes
optionalparams: ToolParams
additional tool parameters
Returns void
resetEngine
- internal
Returns void
Module used to manage block and tools material and create tools with all required properties.