extends RefCounted class_name ItemDef # Base class for all Werkstatt items. Each item is its own .gd file in res://items/ # that extends ItemDef and fills the fields in _init(). # ItemDB auto-discovers all .gd files in res://items/ at first access. # ─── Pflichtfelder ──────────────────────────────────────────────────────────── var id: String = "" var name: String = "" var name_en: String = "" var desc: String = "" var desc_en: String = "" var category: String = "" # "WAFFENMODUL" | "HÜLLENMOD" | "ANTRIEBSMOD" | "SPEZIAL" var category_en: String = "" # "WEAPON MOD" | "HULL MOD" | "DRIVE MOD" | "SPECIAL" var icon: String = "◈" var cost: int = 50 var rarity: int = 0 # 0=Common, 1=Uncommon, 2=Rare, 3=Epic var effects: Dictionary = {} # ShipStats keys → multipliers/additives # ─── Visuelle Anhänge am Schiff ─────────────────────────────────────────────── # Format: [[x_offset, y_offset, "color_key"], ...] # color_key muss ein Schlüssel in der Schiffs-Palette sein (nose, bright, mid, # dim, accent, edge, shadow) oder "white" / "red" / "yellow" / "green" als Fallback. var visual_pixels: Array = [] # ─── Schiffswachstum ────────────────────────────────────────────────────────── # Nur Items mit hull_size_bonus > 0 vergrößern das Schiff. var hull_size_bonus: float = 0.0