extends Control var _label: Label func _ready() -> void: mouse_filter = Control.MOUSE_FILTER_IGNORE _label = Label.new() _label.name = "EnemyDetails" _label.mouse_filter = Control.MOUSE_FILTER_IGNORE _label.add_theme_font_size_override("font_size", 9) _label.add_theme_color_override("font_color", Color("c9acb5")) _label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER _label.set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT) add_child(_label) func _process(_delta: float) -> void: var enemy: Node = null for candidate in get_tree().get_nodes_in_group("enemies"): if not candidate.is_queued_for_deletion() and (enemy == null or int(candidate.loot_tier) < int(enemy.loot_tier)): enemy = candidate var profile := DamageTypes.enemy_profile(GameState.system_level, GameState.system_seed) var kind := int(profile["kind"]) var names := ["Działko plazmowe", "Działko maszynowe", "Laser", "Rakiety", "Działko gamma"] _label.text = "%s\n%s" % [names[kind], DamageTypes.describe(profile["absorption"])] if enemy != null: _label.text += "\nDPS: %.1f (%s)\nTarcze: %.0f / %.0f" % [enemy.get_weapon_dps(), ["zwykły", "elita", "boss"][enemy.loot_tier], enemy.shields, enemy.max_shields] else: _label.text += "\nUkład oczyszczony"