HammeritePrefabSet

Core: the map. Inherits Resource

A collection of prefabs.

Saved as its own resource, separately from any map, and loaded into the map editor.

Properties

TypeNameDefault
HammeritePrefab[]prefabs[]
Stringset_name"Untitled Set"

Methods

ReturnsMethod
voidadd_prefab(prefab: HammeritePrefab)
intcount_thumbnails()
HammeritePrefabfind_prefab_by_name(name: String)
PackedStringArrayget_categories()
HammeritePrefabget_prefab_by_id(prefab_id: int)
HammeritePrefab[]get_prefabs_in_category(category: String)
boolhas_prefab(prefab_id: int)
Variantregenerate_all_thumbnails(generator: Object)
voidremove_prefab(prefab: HammeritePrefab)

Signals

thumbnails_regenerated

signal thumbnails_regenerated()

Emitted once regenerate_all_thumbnails() has drawn every prefab, when a generator was still drawing as it was called.

Property descriptions

prefabs

var prefabs: HammeritePrefab[] = []

The prefabs in this set. add_prefab() keeps one per HammeritePrefab.prefab_id; appending directly does not.

set_name

var set_name: String = "Untitled Set"

Shown to the author; not the resource path.

Method descriptions

add_prefab()

func add_prefab(prefab: HammeritePrefab) -> void

Add prefab, or put it in place of the prefab of the same HammeritePrefab.prefab_id the set already has - two loaded copies of one prefab are one prefab.

count_thumbnails()

func count_thumbnails() -> int

How many prefabs in the set have a HammeritePrefab.preview_texture.

find_prefab_by_name()

func find_prefab_by_name(name: String) -> HammeritePrefab

The first prefab whose HammeritePrefab.prefab_name is name, or null. Names need not be unique, so a set that wants to be asked by name keeps them so.

get_categories()

func get_categories() -> PackedStringArray

Every category the set's prefabs are in, each once and sorted, from their HammeritePrefab.category; a prefab with none is not counted.

get_prefab_by_id()

func get_prefab_by_id(prefab_id: int) -> HammeritePrefab

The prefab whose HammeritePrefab.prefab_id is prefab_id, or null if the set has none.

get_prefabs_in_category()

func get_prefabs_in_category(category: String) -> HammeritePrefab[]

Every prefab whose HammeritePrefab.category is exactly category; a new array.

has_prefab()

func has_prefab(prefab_id: int) -> bool

Whether the set holds a prefab with this HammeritePrefab.prefab_id.

regenerate_all_thumbnails()

func regenerate_all_thumbnails(generator: Object) -> Variant

Calls HammeritePrefab.generate_thumbnail() on each prefab in turn, each once the one before has drawn. Await it: while a generator is still drawing it answers thumbnails_regenerated, and when every one answered at once, nothing.

remove_prefab()

func remove_prefab(prefab: HammeritePrefab) -> void

Remove prefab from the set. Instances already placed in a map are untouched.

Hammerite 2.0 · built from 6d57ab2d, 2026-10-17