Zum Hauptinhalt springen

Skill Tree Connections

Advanced Menus now features a powerful Skill Tree engine. This system allows you to create hierarchical menus where nodes are automatically connected by lines (rods) and directional arrows.

Automatic Linking

Instead of manually defining every link in a links array, you can now use the parent property on any element.

parentString

The unique ID of another element (Button or Decoration) to link from. A line will automatically be drawn from the parent to this element.

{
"id": "skill_node_2",
"parent": "skill_node_1",
...
}

Advanced Connection Styling

When defining links (either via the global links array or through the style field of an auto-link template), you have access to new precision controls.

Edge Snapping & Margins

To prevent lines from overlapping your icons or text, the engine calculates the exact intersection with the node's edge.

marginDouble

The empty space (in menu units) between the node edge and the start/end of the link. Higher values create a "small gap" effect.

Directional Arrowheads

You can add stylized arrowheads to indicate the flow of a skill tree.

arrowheadObject

Configuration for the arrowhead display.

Properties

material

Minecraft material (e.g., ARROW, FLINT). customModelDataInt

Custom model ID for the arrowhead. scaleDouble

Visual scale of the head. layerOffsetDouble

Pushes the arrow slightly forward or backward relative to the line (default: 0).

3D Orientation

All links and arrowheads are rendered in a Flat-to-Menu orientation. This means they are aligned with the menu plane (X-Y) rather than constantly facing the player's camera. This ensures that perspective shifts during movement look professional and integrated.

Conditional Visibility

You can hide arrowheads specifically based on criteria (e.g., only show the arrow if the parent is unlocked).

arrowCriteria

"> The condition required to display the arrowhead entity.