示例#1
0
        public override void OnGameLogicTurn()
        {
            base.OnGameLogicTurn();
            if (SelfBaseUnit.IsPlayer())
            {
                SetAlertDirty();
            }

            foreach (var item in Data)
            {
                item.GameLogicTurn();
                if (!item.IsValid())
                {
                    ClearData.Add(item);
                }
                if (item.IsCommingTimeOut())
                {
                    item.OnCommingTimeOut();
                    Callback_OnCommingTimeOut?.Invoke(item);
                }
            }
            for (int i = 0; i < ClearData.Count; ++i)
            {
                ClearData[i].OnTimeOut();
                Remove(ClearData[i]);
            }
            ClearData.Clear();
        }
示例#2
0
 public override void GameLogicTurn()
 {
     base.GameLogicTurn();
     foreach (var item in Data)
     {
         item.GameLogicTurn();
         if (item.IsOver())
         {
             ClearData.Add(item);
         }
         if (item.IsCommingTimeOut())
         {
             item.OnCommingTimeOut();
             Callback_OnCommingTimeOut?.Invoke(item);
         }
     }
     for (int i = 0; i < ClearData.Count; ++i)
     {
         ClearData[i].OnTimeOut();
         RemoveAlert(ClearData[i]);
     }
     ClearData.Clear();
 }