Exemple #1
0
 void doEventDelay()
 {
     if (!CanTriggerEvent())
     {
         return;
     }
     tk2dRuntime.TileMap.TileInfo eventTile = GetTileInfo(_x, _y, 1);
     if (eventTile != null)
     {
         //处理区域图上的事件
         if (eventTile.stringVal == "Event")
         {
             string id = Application.loadedLevelName + "_" + _x + "_" + _y;
             Messenger.Broadcast <string>(NotifyTypes.DealSceneEvent, id);
         }
     }
     else
     {
         //之前没有触发任何事件则在这里处理随机遇敌
         List <RateData> ratesData = Statics.GetMeetEnemyRates(UserModel.CurrentUserData.CurrentAreaSceneName);
         RateData        rateData;
         for (int i = 0; i < ratesData.Count; i++)
         {
             rateData = ratesData[i];
             if (rateData.Rate > 0 && rateData.IsTrigger(250f))
             {
                 if (AreaMainPanelCtrl.MakeCostNocturnalClothing())
                 {
                     Statics.CreatePopMsg(Vector3.zero, "被敌人发现后脱下夜行衣摆脱了对方", Color.yellow, 30);
                     break;
                 }
                 Messenger.Broadcast <string>(NotifyTypes.CreateBattle, rateData.Id); //遇敌
                 eventTriggerDate = Time.fixedTime;
                 break;
             }
         }
     }
 }