> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rollingquest.kramgames.com/llms.txt
> Use this file to discover all available pages before exploring further.

# BlockLocation — Block Grid Position Reference

> API reference for the BlockLocation class in RollingQuest Lua scripting. Represents a block's grid position with face and orientation for editor data.

The `BlockLocation` class represents a block's position in the level grid, including its face and orientation. This is used in editor/design-time data to describe where an element is placed and how it is oriented.

<Note>
  For runtime grid position during gameplay, use [`BlockSlot`](/api/classes/block) instead. `BlockLocation` extends the concept with face and orientation data for design-time use.
</Note>

## Properties

| Property      | Type          | Read/Write | Description               |
| ------------- | ------------- | ---------- | ------------------------- |
| `x`           | `integer`     | ❌          | X coordinate in the grid. |
| `y`           | `integer`     | ❌          | Y coordinate in the grid. |
| `z`           | `integer`     | ❌          | Z coordinate in the grid. |
| `side`        | `Face`        | ❌          | Which face of the block.  |
| `orientation` | `Orientation` | ❌          | Compass orientation.      |

## Usage Example

Read a block location from enemy data:

```lua theme={null}
function OnStart()
    -- BlockLocation is used in editor data to describe element positions
    Logger.info("BlockLocation describes where elements are placed in the grid")
end
```
