internal override void Process()
        {
            base.Process();
            LuaTurnSetInfo       ltsiTo   = EncounterInfo.currentTurn().toLuaTurnSetInfo();
            LuaTurnSetInfo       ltsiFrom = EncounterInfo.getTurnSetFrom(lci.parent).toLuaTurnSetInfo();
            LuaCharacterTurnInfo lcti     = EncounterInfo.getCharacterTurnFrom(lci.parent).toLuaCharacterTurnInfo();

            ltsiTo.HandleChangeSide(lcti, ltsiFrom, ltsiTo, LuaTurnSetInfo.SideTurnType.MindControl);
        }
        public static void StartAI(LuaCharacterTurnInfo lcti)
        {
            lcti.parent.bIsCompleted = false;
            TBAGW.EncounterInfo.currentTurn().bTest = false;

            if (TBAGW.EncounterInfo.currentTurn().bIsPlayerTurnSet)
            {
                TBAGW.EncounterInfo.currentTurn().bPlayerTurnEnemyOverriden = true;
            }

            TBAGW.EncounterInfo.currentTurn().UpdateEnemyLogic(lcti.parent);
            TBAGW.EncounterInfo.currentTurn().currentEnemy = lcti.parent;
        }
 public void HandleChangeSide(LuaCharacterTurnInfo lci, LuaTurnSetInfo lsiFrom, LuaTurnSetInfo lsiTo, SideTurnType stt = SideTurnType.Normal)
 {
     lsiFrom.parent.Remove(lci.parent, stt);
     lsiTo.parent.AddViaChangeSide(lci.parent, stt);
 }
 public bool CTIsFromCurrentTS(LuaCharacterTurnInfo lcti)
 {
     return(charTurnInfos.Find(ct => ct.parent == lcti.parent) != default(LuaCharacterTurnInfo));
 }