Avorion Script API Documentation

Plan

function Plan(var id)

Parameters

id The id of the entity this component belongs to, or the entity itself, must be an id of an existing entity or nil for the entity in the current script context

Returns

A new instance of Plan

property bool accumulatingHealth
property Box boundingBox[read-only]
property Sphere boundingSphere[read-only]
property vec3 centerOfMass[read-only]
property bool collisionDamage
property bool convex
property double durability[read-only]
property Entity entity[read-only]
property uuid entityId[read-only]
property double mass[read-only]
property int numBlocks[read-only]
property double processingPower[read-only]
property float radius[read-only]
property BlockPlanBlock root[read-only]
property var rootIndex[read-only]
property bool singleBlockDestructionEnabled
property int size[read-only]
property float volume[read-only]

function int addBlock(vec3 position, vec3 size, int parentIndex, int index, Color color, Material material, Matrix orientation, int blockIndex, var secondaryColor)

Add a new block to an existing plan.

Parameters

position The position of the new
size The size of the new block
parentIndex The parent index of the block the new block will be attached to. This parameter will be ignored when there are no blocks in the plan.
index The index of the new block. Use -1 to assign an index automatically (recommended)
color The color of the new block
material The material of the new block
orientation The orientation of the new block
blockIndex The type of the new block, must be a valid block type. See enum BlockType
secondaryColor The secondaryColor of the new block. If nil, ColorNone() will be used

Returns

Returns the index of the new block on success, nil otherwise.

function int addPlan(int parentIndex, BlockPlan other, int otherBlock)

function int addPlanDisplaced(int parentIndex, BlockPlan other, int otherBlock, vec3 delta)

function var damage(float damage, int block, vec3 location, Uuid inflictingEntity, var damageSource, var damageType)

Returns

nothing

function var deleteSubTree(int index)

Returns

nothing

function var destroy()

Returns

nothing

function bool empty()

function bool exists(int index)

function BlockPlan get()

Returns the plan of the entity. This copies the entire plan, keep that in mind when using plans with large block counts.

Returns

A copy of the plan of the entity

function BlockPlanBlock getBlock(int index)

function int... getBlockIndices()

function int... getBlocksByType(int index)

function double getMoneyValue()

function BlockPlan getMove()

Returns the plan of the entity. This function will move the plan out of the entity, and replace the entity's plan with a single block. This operation is independent of the size of the plan, use it when you have to get large plans with lots of blocks.

Returns

The plan of the entity

function BlockPlanBlock getNthBlock(int n)

function var getNthIndex(int n)

function int getNumBlocks(int blockIndex)

function int... getRemoved(int index)

function double... getResourceValue()

function BlockStatistics getStats()

function double getUndamagedMoneyValue()

function double... getUndamagedResourceValue()

function var heal(float damage, int block, vec3 location, Uuid inflictingEntity)

Returns

nothing

function var move(BlockPlan plan)

Set the new plan of the entity. The entity will get deleted if the plan is empty. This moves all the data out of the plan that is used as the first argument. The content of the plan given as argument is then undefined, but still valid. It might be empty, it might contain the previous plan. This operation is independent of the size of the plan, use it when you have to set large plans with lots of blocks.

Parameters

plan The new BlockPlan of the entity

Returns

nothing

function var removeBlock(int index)

Returns

nothing

function var set(BlockPlan plan)

Set the new plan of the entity. The entity will get deleted if the plan is empty. This copies the entire plan that is given as argument, keep that in mind when setting plans with large block counts.

Parameters

plan The new BlockPlan of the entity

Returns

nothing

function var setBlockColor(int index, Color color)

Returns

nothing

function var setBlockDamageFactor(int blockIndex, float factor)

Returns

nothing

function var setBlockType(int index, int type)

Returns

nothing

function var setBlockTypeDamageFactor(int blockType, float factor)

Returns

nothing

function var setColor(Color color, var secondaryColor)

Set all blocks of plan to the same color (and secondary color)

Parameters

color The new primary color
secondaryColor The new secondary color. If nil, ColorNone() will be used

Returns

nothing

function var setMaterial(Material material)

Returns

nothing

function var setSecondaryBlockColor(int index, Color color)

Returns

nothing

Overview
Home Functions Search
Search:

This is the official documentation for the scripting API of Avorion. This documentation is automatically generated and not necessarily complete. Depending on the context in which functions exist, some documentation such as descriptions, return values or variable names or types may be missing.

Work in Progress. Documentation of Avorion Version: 2.5.7 c8e4beec84f7