private PlayerAbility.AbilityDelegate CalculateDisableBehaviour(PlayerAbility ability, PlayerAbility.AbilityDelegate playerActions)
    {
        PlayerAbility.AbilityDelegate actionToExecute = null;

        if (ability.IsCommandPhaseMandatory)
        {
            actionToExecute = DisableMenuLight;
        }
        else
        {
            actionToExecute = DisableMenu;
        }


        if (playerActions == null)
        {
            playerActions = actionToExecute;
        }
        else
        {
            playerActions += actionToExecute;
        }

        return(playerActions);
    }
    private void AllocateAbilities(PlayerAbility ability, GameObject buttonGameObject, List <GameObject> buttonsContainer, PlayerAbility.AbilityDelegate playerActions, bool isButtonActive)
    {
        Button buttonComponent = buttonGameObject.GetComponent <Button>();

        buttonComponent.onClick.AddListener(() => playerActions(ability.PlayerReference));
        buttonGameObject.SetActive(isButtonActive);
        buttonsContainer.Add(buttonGameObject);
    }