— — — — —
— — — — —
— — — — —
— — — — —
— — — — —
— — — — —
— — — — —
— — — — —
An object is a resource type meant for certain entities that can be interacted with by the player as well as for those that are simply decorations to place onto tiles. Objects, similar to tiles and characters, are created in the Voxel Editor and then placed into a map using the “Place” mode of the Map Editor. Refer to the table below for some examples of what should be represented as an object in your game.
Usage | Examples |
---|---|
Interactive Entities | Treasure chests (or other containers), signs, doors, levers, switches |
Decorations | Tables and chairs (or other furniture), trees, bushes, fences |
Item Pickups | A key or potion within the world that will provide an item to the player |
Refer to the table below for a list of object properties that can be accessed from a script. If the property's value can be changed using an assignment statement, it will be noted in the description.
Property | Description |
---|---|
<object>.id | Entity ID of the object, as set in the Map Editor from the Entity Properties panel. This can be used to either retrieve or change the ID of the object. |
<object>.type | Type of entity, in this case the constant value OBJECT. |
<object>.coord | Coordinate of the object. |
<object>.direction | Cardinal direction (NORTH, SOUTH, WEST, EAST) in which the object is rotated. The default direction of an entity is SOUTH. |
<object>.tiles | An array of tiles that the object is currently occupying. |
<object>.groups | An array of groups to which the object is assigned. The array will be empty if the object is not assigned to any groups. |
<object>.tags | An array of tags (as strings) for the object, as set in the Voxel Editor from the Model Properties panel. |
<object>.interact_cursor | Interaction cursor for the object, as set in the Map Editor from the Entity Properties panel. This can be used to either retrieve or change the interaction cursor for the object. Valid values include “default”, “walk”, “interact”, “speak”, “attack”, or any custom cursor defined in your game configuration. |
<object>.property[“x”] | Custom property stored on the object, where “x” is a string containing the name of the property. This can be used to either retrieve or change the property's value. |
<object>.model | Name of the object's model (e.g. “tree”). |
<object>.frame | Current animation frame (as a number, with the first frame being 1). This can be used to either retrieve or change the model's current frame. If this property is changed and an animation is playing, the animation will first be stopped. |
<object>.animations | An array of animation names defined for this object. The names will be string values. |
<object>.attach_points | An array of attach point names defined for this object (across all animation frames). The names will be string values. The array will be empty if no attach points are defined. |
<object>.attachment[“x”] | Object attached to the object, where “x” is the attach point ID. |
<object>.effect[“x”] | Effect attached to the object, where “x” is the attach point ID. |
<object>.textures | An array of texture names defined for this object. The names will be string values. |