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 | 141 ++++++++++++++++++++++++++++++++---------------
1 files changed, 96 insertions(+), 45 deletions(-)
diff --git a/System/MainInterfacePanel/PlayerTaskDatas.cs b/System/MainInterfacePanel/PlayerTaskDatas.cs
index 112033a..ccc3af9 100644
--- a/System/MainInterfacePanel/PlayerTaskDatas.cs
+++ b/System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -121,13 +121,15 @@
public int currentMission { get; private set; }
public int currentMissionState { get; private set; }
- public int GetNowTaskID { get; set; }
+ public int GetNowTaskID { get; set; }//鑾峰彇褰撳墠閫変腑鏉$殑浠诲姟ID
private bool AutomaticityBool = false;//鎺у埗鏄惁鑷姩杩涜鑷姩浠诲姟
private int retainTaskID = 0;
private float BossDelayTimeint = 0;
private List<int> FaBaoNPCIdList = new List<int>();//鐢ㄤ簬鑾峰彇闇�瑕佹秷澶辩殑娉曞疂NPCID锛�
public Vector3 UIeffectFabaoVec = new Vector3();//娉曞疂NPC娑堝け鏃惰幏鍙栫殑鍧愭爣
+
+
PlayerPackModel _playerPack;
PlayerPackModel playerPack
{
@@ -183,8 +185,12 @@
public void OnPlayerLoginOk()
{
+ GlobalTimeEvent.Instance.secondEvent -= secondEvent;
+ GlobalTimeEvent.Instance.secondEvent += secondEvent;
AutomaticityBool = true;
}
+
+
private void onStageLoadFinish()//鍦板浘鍒囨崲鏃惰皟鐢�
{
@@ -203,6 +209,10 @@
{
try
{
+ if (AutomaticityBool && MissionState!=3)
+ {
+ TaskupToDate = MissionID;
+ }
var pytaskM = Config.Instance.Get<PyTaskConfig>(MissionID);
if (pytaskM == null)
{
@@ -219,6 +229,7 @@
if (allMissionDict.ContainsKey(MissionID))
{
+ int missionState = allMissionDict[MissionID].MissionState;
if (allMissionDict[MissionID].MissionState != MissionState && MissionState == 3 && AutomaticityBool)
{
if (CompletionOfTaskEvent != null)
@@ -228,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
{
@@ -264,7 +286,7 @@
}
catch (Exception ex)
{
- DebugEx.Log(ex);
+ DebugEx.Log(ex.StackTrace);
}
}
@@ -290,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>();
@@ -309,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)
{
@@ -317,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>();
@@ -326,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>();
@@ -336,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>();
@@ -353,7 +378,10 @@
{
if (BountyDic.ContainsKey(_TaskNow) || FairyAuDic.ContainsKey(_TaskNow))
{
- RequestGetTaskAward("OK");
+ if (!ModelCenter.Instance.GetModel<TeamModel>().teamPrepare.isPreparing)
+ {
+ RequestGetTaskAward("OK");
+ }
}
}
}
@@ -459,7 +487,7 @@
SideQuestsType17 = 17,//鏀嚎17-21鏂板
SideQuestsType18 = 18,
SideQuestsType19 = 19,
- SideQuestsType20 = 20,
+ SideQuestsType20 = 20,//(鍚庣鐗规畩澶勭悊锛屾殏瀹氫笉璁╀娇鐢�)
SideQuestsType21 = 21,
}
@@ -848,9 +876,14 @@
{
if (MainTaskDic.ContainsKey(_MissionId) && MainCardLevelChange != null && _DictValue == 0)
{
+
+ if (IsGetOnBool)
+ {
+ GetNowTaskID = _MissionId;
+ }
MainCardLevelChange(_MissionId);
+
}
-
}
}
else
@@ -858,15 +891,22 @@
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)
{
CardLevelChange(_MissionId);
}
- if (MainTaskDic.ContainsKey(_MissionId) && MainCardLevelChange != null)
- {
- MainCardLevelChange(_MissionId);
+ if (MainTaskDic.ContainsKey(_MissionId))
+ {
+ if (IsGetOnBool)
+ {
+ GetNowTaskID = _MissionId;
+ }
+ if (MainCardLevelChange != null)
+ {
+ MainCardLevelChange(_MissionId);
+ }
}
}
}
@@ -986,15 +1026,6 @@
}
}
}
-
- //if (_NpcID == allMissionDict[key].LightList.NpcId)
- //{
- // if (allMissionDict[key].LightList.StateLight > Light)
- // {
- // Light = allMissionDict[key].LightList.StateLight;
- // }
-
- //}
}
return Light;
@@ -1013,7 +1044,6 @@
return;
}
}
-
}
if (FairyAuDic.Count != 0)
{
@@ -1027,8 +1057,6 @@
}
}
}
-
-
}
public void DailyBountyMove()//鏃ュ父璧忛噾浠诲姟
{
@@ -1043,7 +1071,6 @@
return;
}
}
-
}
if (BountyDic.Count != 0)
{
@@ -1057,7 +1084,6 @@
}
}
}
-
}
@@ -1080,7 +1106,6 @@
}
}
}
-
}
private int Autotasking(int taskID)
@@ -1144,7 +1169,6 @@
return;
}
}
-
}
else if (FairyAuDic.ContainsKey(_taskID))//浠欑洘浠诲姟
{
@@ -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;
@@ -1248,7 +1272,6 @@
{
break;
}
-
if (MapTransferUtility.Instance.MapTransferDoType != MapTransferUtility.E_MapTransferDoType.None)
{
break;
@@ -1272,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;
}
@@ -1371,7 +1394,6 @@
GA_NpcFunc.SetNpcFuncVisible(Npcid, true);
}
}
-
}
}
@@ -1439,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;
}
@@ -1493,7 +1515,6 @@
{
return -1;
}
-
}
public int GetQuestState(int _taskId)
@@ -1507,5 +1528,35 @@
return -1;
}
}
+ //--------涓昏鐢ㄤ簬璁板綍浠诲姟鍒楄〃閫変腑鏉$殑鏅鸿兘鎬� 锛�-_-||锛�
+ public int TaskupToDate = 0;//鑾峰彇鏈�鏂颁换鍔D
+ public int GetOnTaskId = 0;
+ public bool IsGetOnBool = false;
+ private int NeedTime = 10;
+ private DateTime dateTimeA;
+ public void GetTaskGetOnNow(int TaskID, string DictKey)//璁板綍涓嬩俊鎭瓧鍏哥殑ID
+ {
+ string key1Str = "on_kill_" + TaskID;
+ string key2Str = "get_byid_" + TaskID;
+ if (TaskID > 1 && (key1Str== DictKey || key2Str== DictKey))
+ {
+ GetOnTaskId = TaskID;
+ dateTimeA =DateTime.Now;
+ }
+ }
+ private void secondEvent()
+ {
+ TimeSpan timeS =DateTime.Now- dateTimeA;
+ int timeSend = timeS.Seconds;
+ if (timeSend >= NeedTime)
+ {
+ IsGetOnBool = true;
+ GetOnTaskId = GetNowTaskID;//鑾峰彇褰撳墠閫変腑鐨処D
+ }
+ else
+ {
+ IsGetOnBool = false;
+ }
+ }
}
--
Gitblit v1.8.0