From f93c57bfd57f97e78c3a00a29f302f5e8c83cdee Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期四, 18 十月 2018 21:43:03 +0800
Subject: [PATCH] 2158【1.2.0】猫耳聊天屏蔽逻辑优化

---
 System/MainInterfacePanel/PlayerTaskDatas.cs |   67 +++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 21 deletions(-)

diff --git a/System/MainInterfacePanel/PlayerTaskDatas.cs b/System/MainInterfacePanel/PlayerTaskDatas.cs
index 8a82286..ccc3af9 100644
--- a/System/MainInterfacePanel/PlayerTaskDatas.cs
+++ b/System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -128,6 +128,8 @@
     private float BossDelayTimeint = 0;
     private List<int> FaBaoNPCIdList = new List<int>();//鐢ㄤ簬鑾峰彇闇�瑕佹秷澶辩殑娉曞疂NPCID锛�
     public Vector3 UIeffectFabaoVec = new Vector3();//娉曞疂NPC娑堝け鏃惰幏鍙栫殑鍧愭爣
+
+
     PlayerPackModel _playerPack;
     PlayerPackModel playerPack
     {
@@ -207,6 +209,10 @@
     {
         try
         {
+            if (AutomaticityBool && MissionState!=3)
+            {
+                TaskupToDate = MissionID;
+            }
             var pytaskM = Config.Instance.Get<PyTaskConfig>(MissionID);
             if (pytaskM == null)
             {
@@ -223,6 +229,7 @@
 
             if (allMissionDict.ContainsKey(MissionID))
             {
+                int missionState = allMissionDict[MissionID].MissionState;
                 if (allMissionDict[MissionID].MissionState != MissionState && MissionState == 3 && AutomaticityBool)
                 {
                     if (CompletionOfTaskEvent != null)
@@ -232,10 +239,21 @@
                 }
                 TaskChanges(MissionID, MissionState, DiscriptionIndex);//浠诲姟鐨勭姸鎬佷慨鏀�
 
-                if (Event_TaskRefreshes != null)//鍒锋柊浠诲姟
+                if (missionState == 0 && (MissionState == 1 || MissionState==2))
                 {
-                    Event_TaskRefreshes(MissionID);
+                    if (Event_TaskToAdd != null)//浠诲姟娣诲姞锛堢敤浜庡瓨鍌ㄤ簬韬笂鐨勬湭鎺ュ彇浠诲姟鐨勭壒娈婂鐞嗭級
+                    {
+                        Event_TaskToAdd(MissionID, MissionState, DiscriptionIndex);
+                    }
                 }
+                else
+                {
+                    if (Event_TaskRefreshes != null)//鍒锋柊浠诲姟
+                    {
+                        Event_TaskRefreshes(MissionID);
+                    }
+                }
+                
             }
             else
             {
@@ -268,7 +286,7 @@
         }
         catch (Exception ex)
         {
-            DebugEx.Log(ex);
+            DebugEx.Log(ex.StackTrace);
         }
 
     }
@@ -294,8 +312,8 @@
         {
             return;
         }
-        bool IsOpenMain = WindowCenter.Instance.CheckOpen<MainInterfaceWin>();
-        if (!WindowCenter.Instance.CheckOpen<DefaultDialogueBoxWin>() && IsOpenMain)
+        bool IsOpenMain = WindowCenter.Instance.IsOpen<MainInterfaceWin>();
+        if (!WindowCenter.Instance.IsOpen<DefaultDialogueBoxWin>() && IsOpenMain)
         {
             WindowCenter.Instance.Open<DefaultDialogueBoxWin>();
             WindowCenter.Instance.Close<MainInterfaceWin>();
@@ -313,7 +331,7 @@
             return;
         }
         var config = Config.Instance.Get<StoryMissionsConfig>(taskID);
-        bool IsOpenMain = WindowCenter.Instance.CheckOpen<MainInterfaceWin>();
+        bool IsOpenMain = WindowCenter.Instance.IsOpen<MainInterfaceWin>();
         var treasureStageUpShow = ModelCenter.Instance.GetModel<TreasureModel>().treasureStageUpShow;
         if (config != null)
         {
@@ -321,7 +339,7 @@
             {
                 if (NPCid == config.NpcID[i])
                 {
-                    if (!WindowCenter.Instance.CheckOpen<DialogueDuidanceWin>() && IsOpenMain
+                    if (!WindowCenter.Instance.IsOpen<DialogueDuidanceWin>() && IsOpenMain
                         && !treasureStageUpShow && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
                     {
                         WindowCenter.Instance.Close<MainInterfaceWin>();
@@ -330,7 +348,7 @@
                     return;
                 }
             }
-            if (!WindowCenter.Instance.CheckOpen<TaskBoxBGMWin>() && IsOpenMain && !treasureStageUpShow)
+            if (!WindowCenter.Instance.IsOpen<TaskBoxBGMWin>() && IsOpenMain && !treasureStageUpShow)
             {
                 WindowCenter.Instance.Close<MainInterfaceWin>();
                 WindowCenter.Instance.Open<TaskBoxBGMWin>();
@@ -340,14 +358,17 @@
             {
                 if (BountyDic.ContainsKey(_TaskNow) || FairyAuDic.ContainsKey(_TaskNow))
                 {
-                    RequestGetTaskAward("OK");
+                    if (!ModelCenter.Instance.GetModel<TeamModel>().teamPrepare.isPreparing)
+                    {
+                        RequestGetTaskAward("OK");
+                    }
                 }
 
             }
         }
         else
         {
-            if (!WindowCenter.Instance.CheckOpen<TaskBoxBGMWin>() && IsOpenMain && !treasureStageUpShow)
+            if (!WindowCenter.Instance.IsOpen<TaskBoxBGMWin>() && IsOpenMain && !treasureStageUpShow)
             {
                 WindowCenter.Instance.Close<MainInterfaceWin>();
                 WindowCenter.Instance.Open<TaskBoxBGMWin>();
@@ -357,7 +378,10 @@
             {
                 if (BountyDic.ContainsKey(_TaskNow) || FairyAuDic.ContainsKey(_TaskNow))
                 {
-                    RequestGetTaskAward("OK");
+                    if (!ModelCenter.Instance.GetModel<TeamModel>().teamPrepare.isPreparing)
+                    {
+                        RequestGetTaskAward("OK");
+                    }               
                 }
             }
         }
@@ -463,7 +487,7 @@
         SideQuestsType17 = 17,//鏀嚎17-21鏂板
         SideQuestsType18 = 18,
         SideQuestsType19 = 19,
-        SideQuestsType20 = 20,
+        SideQuestsType20 = 20,//(鍚庣鐗规畩澶勭悊锛屾殏瀹氫笉璁╀娇鐢�)
         SideQuestsType21 = 21,
     }
 
@@ -867,7 +891,7 @@
             if (_DicTaskInformation[_MissionId].ContainsKey(_DictKey))
             {
                 _DicTaskInformation[_MissionId][_DictKey] = _DictValue.ToString();
-                if (_DictKey == "kaji" && _DictValue == 0)
+                if (_DictKey == "kaji" && (_DictValue == 0|| _DictValue == 1))//kaji:0涓轰富绾垮崱绾у彉鏇达紝kaji:1涓洪瓟鏃忓崱绾у彉鏇�
                 {
                     if (CardLevelChange != null)
                     {
@@ -1238,7 +1262,7 @@
         var _singleModel = PlayerBackModel.GetSinglePackModel(PackType.rptEquip);
         // 濡傛灉鏈夊畧鎶�, 鍒欎笉鎷惧彇
         var _itemModel = _singleModel.GetItemModelByIndex((int)RoleEquipType.retSpiritAnimal);
-        if (_itemModel == null || !GeneralConfig.Instance.GuardianPickUpID.Contains(_itemModel.itemId))
+        if (_itemModel == null || !GeneralDefine.GuardianPickUpID.Contains(_itemModel.itemId))
         {
             float _chkDistanceSqrt;
             DropItemManager.DropObject _obj = null;
@@ -1271,12 +1295,12 @@
             yield break;
         }
 
-        if (WindowCenter.Instance.CheckOpen<TreasureLevelUpWin>())
+        if (WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
         {
             yield break;
         }
 
-        if (WindowCenter.Instance.CheckOpen<MysteriousMissionWin>())
+        if (WindowCenter.Instance.IsOpen<MysteriousMissionWin>())
         {
             yield break;
         }
@@ -1437,18 +1461,18 @@
 
     public static bool IsOPenAutoResolve()//浠诲姟闈㈡澘涓嶅紑鍚嚜鍔ㄦ寕鏈虹姸鎬�
     {
-        WindowCenter.Instance.CheckOpen<DefaultDialogueBoxWin>();
-        WindowCenter.Instance.CheckOpen<DialogueDuidanceWin>();
+        WindowCenter.Instance.IsOpen<DefaultDialogueBoxWin>();
+        WindowCenter.Instance.IsOpen<DialogueDuidanceWin>();
         bool _bool = true;
-        if (WindowCenter.Instance.CheckOpen<TaskBoxBGMWin>())
+        if (WindowCenter.Instance.IsOpen<TaskBoxBGMWin>())
         {
             _bool = false;
         }
-        else if (WindowCenter.Instance.CheckOpen<DefaultDialogueBoxWin>())
+        else if (WindowCenter.Instance.IsOpen<DefaultDialogueBoxWin>())
         {
             _bool = false;
         }
-        else if (WindowCenter.Instance.CheckOpen<DialogueDuidanceWin>())
+        else if (WindowCenter.Instance.IsOpen<DialogueDuidanceWin>())
         {
             _bool = false;
         }
@@ -1505,6 +1529,7 @@
         }
     }
     //--------涓昏鐢ㄤ簬璁板綍浠诲姟鍒楄〃閫変腑鏉$殑鏅鸿兘鎬� 锛�-_-||锛�
+    public int TaskupToDate = 0;//鑾峰彇鏈�鏂颁换鍔D
     public int GetOnTaskId = 0;
     public bool IsGetOnBool = false;
     private  int NeedTime = 10;

--
Gitblit v1.8.0