using System; using System.Collections.Generic; using Gamesmiths.Forge.Godot.Resources.Abilities; using Godot; using Movementtests.systems; [Tool, GlobalClass] public partial class AbilitySelection : Control { [Signal] public delegate void AbilityAddedEventHandler(WeaponSystem.WeaponEvent forEvent, ForgeAbilityBehavior behavior); [Signal] public delegate void AbilityRemovedEventHandler(WeaponSystem.WeaponEvent forEvent, ForgeAbilityBehavior behavior); [Export] public WeaponSystem.WeaponEvent ForEvent { get; set; } = WeaponSystem.WeaponEvent.StartedFlying; [Export] public string Title { get; set; } = string.Empty; [Export] public PackedScene AbilitySelectedItem { get; set; } [Export] public ForgeAbilityBehavior[] AbilityBehaviors { get; set; } private VBoxContainer _selectedAbilities; private MenuButton _addAbility; private PopupMenu _addAbilityMenu; public override void _Ready() { var titleLabel = GetNode