HammeriteNavigationEditorExtension

Navigation. Inherits RefCounted

Adds the navigation tool to a Hammerite HammeriteMapEditor. Requires hammerite-editor.

Initialize in your game after integrating the HammeriteMapEditor: var nav_plugin := HammeriteNavigationEditorExtension.new() nav_plugin.initialize(map_editor)

Methods

ReturnsMethod
voidinitialize(editor: HammeriteMapEditor)
voidcleanup()
voidopen_tool()

Constants

MENU_COMMAND

const MENU_COMMAND = &"nav.open_tool"

Id of the Tools menu command that opens the Navigation tool, in HammeriteMapEditor.commands - so a game can rebind it or take it away.

Method descriptions

initialize()

func initialize(editor: HammeriteMapEditor) -> void

Add the Navigation tool, the Room height overlay, the nav_link entity type and a nav_role field on prop_model to editor, and from then on save the map's navigation cache whenever the map is saved. Call once; it may come before or after the editor registers its own entity types.

cleanup()

func cleanup() -> void

Undo initialize(), the icon it hung on nav_link included. The navigation cache is no longer saved with the map afterwards. The entity type and the prop field stay registered, and deliberately: they are the autoload's (HammeriteNavigationRuntime.register_entity_types()), because a shipped build with no editor in it still has to build a map's links. All this extension ever added to them is a picture for the entity picker, and that is what goes (#224).

open_tool()

func open_tool() -> void

Open this addon's editor tool - the Navigation tool, which bakes the walkable ground and shows it. The same thing the toolbar button and the Tools menu entry do.

Hammerite 1.0 · built from a6dd634, 2026-10-10