@abstract extends Resource class_name Artefact const ARTEFACT_ICON = preload("res://common/icons/cube-3d-sphere.svg") const DESC_ICON = preload("res://common/icons/align-right.svg") @abstract func get_artefact_name() -> String @abstract func get_3d_scene() -> PackedScene func get_artefact_desc() -> String: return "" func modify_player_max_energy(v : int) -> int: return v func modify_player_inventory_size(v : int) -> int: return v func card_info() -> CardInfo: var info = CardInfo.new( get_artefact_name(), tr("ARTEFACT") ) info.important_stat_icon = ARTEFACT_ICON var desc_section := CardSectionInfo.new( tr("DESCRIPTION"), get_artefact_desc(), ) desc_section.title_icon = DESC_ICON info.sections.append(desc_section) return info