public override void Init(Position startingPosition, TurnManager turnManager, TileManager tileManager,
                                  BoardEntitySelector boardEntitySelector, BattleCalculator battleCalculator, Ka ka = null)
        {
            base.Init(startingPosition, turnManager, tileManager, boardEntitySelector, battleCalculator);

            if (charactersprite != null)
            {
                charactersprite.transform.SetParent(FindObjectOfType <CharacterManagerMarker>().transform);
            }

            allCharacterBoardEntities.Add(this);
            if (enemyAIBasic1 != null)
            {
                enemyAIBasic1.Init(tileManager, this);
            }

            basicAttack = new BasicAttack();
            AddSkill(basicAttack);
            if (charContainer != null)
            {
                charContainer.Init(this);
            }
            floatingTextGenerator = GetComponent <FloatingTextGenerator>();
            this.ka = ka;
            if (ka != null)
            {
                ka.Init(this);
                if (charKaAura != null)
                {
                    //charKaAura.SetActive(true);
                    //Color newColor = new Color(ka.KaColor.r, ka.KaColor.g, ka.KaColor.b, charKaAura.GetComponent<Image>().color.a);
                    //charKaAura.GetComponent<Image>().color = newColor;
                }
            }
            initalized = true;
            foreach (Skill skill in skills)
            {
                InitSkill(skill);
            }
            foreach (Passive passive in passives)
            {
                InitPassive(passive);
            }
            foreach (Passive p in Passives)
            {
                p.StartBattle();
            }
        }
 private void DieHelper()
 {
     if (ka == null)
     {
         turnManager.RemoveBoardEntity(this);
         GetTile().SetBoardEntity(null);
         if (TurnManager.CurrentBoardEntity == this)
         {
             EndMyTurn();
         }
         Destroy(gameObject);
     }
     else
     {
         stats.SetMutableStat(StatType.Health, 1);
         SetAnimation(AnimatorUtils.animationType.idle);
         ka = null;
         charKaAura.SetActive(false);
         FloatingTextGenerator.AddTextDisplay(new TextDisplay()
         {
             text = "Lost Support Character"
         });
     }
 }