Core/NetworkPackage/ServerPack/HB2_ActionMap/HB206_tagMCHelpBattleCallResult.cs
@@ -6,6 +6,7 @@ public class HB206_tagMCHelpBattleCallResult : GameNetPackBasic { public uint ObjID; // 助战实例ID public uint PlayerID; // 助战镜像ID,大于1小于100代表机器人,如果是机器人前端按顺序自己记录对应实例ID代表已召唤 public byte Job; // ְҵ public HB206_tagMCHelpBattleCallResult () { _cmd = (ushort)0xB206; @@ -14,6 +15,7 @@ public override void ReadFromBytes (byte[] vBytes) { TransBytes (out ObjID, vBytes, NetDataType.DWORD); TransBytes (out PlayerID, vBytes, NetDataType.DWORD); TransBytes (out Job, vBytes, NetDataType.BYTE); } } System/DailyQuest/DailyQuestBehaviour.cs
@@ -313,15 +313,7 @@ m_GotoTxt.text = Language.Get("DailyQuestWin_Assistance"); break; default: switch ((DailyQuestType)data.id) { case DailyQuestType.DungeonAssist: m_GotoTxt.text = Language.Get("DailyQuestTalk"); break; default: m_GotoTxt.text = Language.Get("DailyQuestWin_Goto"); break; } m_GotoTxt.text = Language.Get("DailyQuestWin_Goto"); break; } System/DailyQuest/DailyQuestModel.cs
@@ -537,11 +537,12 @@ case DailyQuestType.Prayer: case DailyQuestType.PersonalBoss: case DailyQuestType.ElderGodArea: case DailyQuestType.DungeonAssist: case DailyQuestType.RuneTower: case DailyQuestType.TreasureCollectSoul: dailyQuest.redpoint.state = RedPointState.None; break; case DailyQuestType.DungeonAssist: break; default: if (PlayerDatas.Instance.baseData.LV <= GeneralDefine.dailyQuestRedpointLevelLimit && (dailyQuestState == DailyQuestState.CanBuyTimes || dailyQuestState == DailyQuestState.Normal)) System/DailyQuest/DailyQuestWin.cs
@@ -286,10 +286,11 @@ GotoTreasureCollectSoul(); break; case DailyQuestType.DungeonAssist: WindowCenter.Instance.CloseImmediately<DailyQuestWin>(); ChatCtrl.Inst.presentChatType = ChatInfoType.World; ChatCtrl.Inst.openFromDaily = true; WindowCenter.Instance.Open<ChatWin>(); //WindowCenter.Instance.CloseImmediately<DailyQuestWin>(); //ChatCtrl.Inst.presentChatType = ChatInfoType.World; //ChatCtrl.Inst.openFromDaily = true; //WindowCenter.Instance.Open<ChatWin>(); WindowCenter.Instance.Open<DungeonAssistWin>(); break; case DailyQuestType.FairyGrabBoss: WindowCenter.Instance.CloseImmediately<DailyQuestWin>(); System/Dungeon/AssistCheckInSuccessWin.cs
@@ -1,5 +1,6 @@ using UnityEngine; using UnityEngine.UI; using TableConfig; namespace Snxxz.UI { @@ -11,6 +12,7 @@ [SerializeField] Button sureBtn; [SerializeField] Button closeBtn; public const int dailyId = 23; DungeonAssistModel assistModel { get { return ModelCenter.Instance.GetModel<DungeonAssistModel>(); } } #region Built-in protected override void BindController() @@ -44,7 +46,8 @@ public void SetDisplay() { infoText.text = Language.Get("DungeonAssist123",10); var dailyQuestConfig = Config.Instance.Get<DailyQuestConfig>(dailyId); infoText.text = Language.Get("DungeonAssist123", dailyQuestConfig.OnceActivity); conditionText.text = Language.Get("DungeonAssist124",assistModel.checkInTotalTime); } System/Dungeon/AssistPlayerCell.cs
@@ -6,6 +6,7 @@ namespace Snxxz.UI { [XLua.Hotfix] public class AssistPlayerCell : MonoBehaviour { [SerializeField] Text nameText; System/Dungeon/DungeonAssistModel.cs
@@ -8,15 +8,16 @@ namespace Snxxz.UI { [XLua.Hotfix] [XLua.LuaCallCSharp] public class DungeonAssistModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk { public string helpInfoLocalSave { get; private set; } public List<string> helpInfolist { get; private set; } public event Action UpdateResultEvent; FairyModel fairyModel { get { return ModelCenter.Instance.GetModel<FairyModel>(); } } FriendsModel friendsModel { get { return ModelCenter.Instance.GetModel<FriendsModel>(); } } DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } } public override void Init() { @@ -31,6 +32,7 @@ IsCheckInOk = false; IsRegisterToday = false; assistPlayerDict.Clear(); SetRedpoint(); } public void OnPlayerLoginOk() @@ -39,11 +41,25 @@ helpInfoLocalSave = StringUtility.Contact("HelpInfoLocalSave", playerId); GetLocalSaveData(); UpdateRedpoint(); UpdateMainAssistRedpoint(); } public override void UnInit() { } public bool IsCheckIn { get { return checkInRedpoint.state == RedPointState.Simple; } } public bool IsNewAssistInfo { get { return main_AssistRedpoint.state != RedPointState.None; } } public bool TryGetFreeRefresh(out int remainNum) @@ -209,6 +225,25 @@ return RelatedToPlayer.None; } public int GetNewAssistInfoNum() { if (helpInfolist == null) return 0; int newNum = 0; for(int i = 0; i < helpInfolist.Count; i++) { var info = helpInfolist[i]; string date = string.Empty; string result = string.Empty; bool isNew = false; TryGetAssistResult(info,out date,out result,out isNew); if(isNew) { newNum += 1; } } return newNum; } #region 本地数据 public Dictionary<string, DungeonHelpBattleConfig> helpBattleDict { get; private set;} private void ParseDunegonHelpConfig() @@ -310,6 +345,7 @@ { UpdateResultEvent(); } UpdateMainAssistRedpoint(); } public bool TryGetAssistResult(string _info,out string _date,out string _result,out bool _isNew) @@ -339,6 +375,7 @@ helpInfolist[i] = StringUtility.Contact(infos[0], "|", infos[1], "|", false); } } UpdateMainAssistRedpoint(); LocalSave.DeleteKey(helpInfoLocalSave); LocalSave.SetStringArray(helpInfoLocalSave, helpInfolist.ToArray()); } @@ -527,10 +564,22 @@ #region 红点 public const int AssistCheckInRedPoint = 7800001; public Redpoint checkInRedpoint = new Redpoint(AssistCheckInRedPoint); public Redpoint main_AssistRedpoint = new Redpoint(7800002); public Redpoint checkInRedpoint { get; private set; } public event Action UpdateRedpointEvent; public void SetRedpoint() { DailyQuestData questData = null; dailyQuestModel.TryGetDailyQuest((int)DailyQuestType.DungeonAssist, out questData); if(questData != null) { checkInRedpoint = new Redpoint(questData.redpoint.id, AssistCheckInRedPoint); } } public void UpdateRedpoint() { if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.DayDaily)) return; if (!FuncOpen.Instance.IsFuncOpen(151)) return; if(IsCheckInOk) { @@ -541,6 +590,27 @@ checkInRedpoint.state = RedPointState.Simple; } } public void UpdateMainAssistRedpoint() { if (!FuncOpen.Instance.IsFuncOpen(151)) return; int newInfoNum = GetNewAssistInfoNum(); main_AssistRedpoint.count = newInfoNum; if (newInfoNum > 0) { main_AssistRedpoint.state = RedPointState.Quantity; } else { main_AssistRedpoint.state = RedPointState.None; } if (UpdateRedpointEvent != null) { UpdateRedpointEvent(); } } #endregion public class AssistResult System/Dungeon/DungeonAssistPlayerWin.cs
@@ -1,4 +1,5 @@ using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; @@ -18,7 +19,7 @@ [SerializeField] ScrollerController assistPlayerCtrl; DungeonAssistModel assistModel { get { return ModelCenter.Instance.GetModel<DungeonAssistModel>(); } } private bool isRefresh; #region Built-in protected override void BindController() { @@ -49,6 +50,7 @@ assistModel.UpdataAssistPlayerListEvent -= UpdateAssistPlayersList; assistModel.UpdataAssistPlayerEvent -= UpdateAssistPlayerState; TimeDownMgr.Instance.Stop(TimeDownMgr.CoolTimeType.DungeonAssistCoolTime); StopAllCoroutines(); } protected override void OnAfterClose() @@ -59,6 +61,7 @@ public void SetDisplay() { isRefresh = true; UpdateAssistPlayers(); UpdateOneKeyAssist(); UpdateRefreshTimes(); @@ -139,6 +142,9 @@ private void ClickRefresh() { if (!isRefresh) return; isRefresh = false; int remainNum = 0; bool isFree = assistModel.TryGetFreeRefresh(out remainNum); if(isFree) @@ -172,6 +178,13 @@ assistModel.SendAssistRefresh(); } } StartCoroutine(DelayRefreshTime()); } IEnumerator DelayRefreshTime() { yield return new WaitForSeconds(0.5f); isRefresh = true; } } } System/Dungeon/DungeonAssistResultCell.cs
@@ -4,6 +4,7 @@ namespace Snxxz.UI { [XLua.Hotfix] public class DungeonAssistResultCell : ScrollerUI { [SerializeField] Text dateText; System/Dungeon/DungeonGetXianYuanCoinsBehvaiour.cs
@@ -5,6 +5,7 @@ namespace Snxxz.UI { [XLua.Hotfix] public class DungeonGetXianYuanCoinsBehvaiour : MonoBehaviour { [SerializeField] Text getCoinsText; System/GMCommand/GMInputWin.cs
@@ -87,13 +87,6 @@ { OnClickSendBtn(); } if(Input.GetKeyDown(KeyCode.F)) { if (!WindowCenter.Instance.IsOpen<DungeonAssistWin>()) { WindowCenter.Instance.Open<DungeonAssistWin>(); } } } private void CreateCmdCell() System/MainInterfacePanel/MainInterfaceWin.cs
@@ -85,6 +85,7 @@ [SerializeField] Button m_SendRedbagBtn; [SerializeField] Button WishingAwardImg; [SerializeField] Button MysticalPurchaseImg; [SerializeField] Button DungeonAssistImg; [SerializeField] Button m_GotoFairyGrabBoss; [SerializeField] Button m_FlyToFairyGrabBoss; @@ -144,7 +145,8 @@ FeatureNoticeModel featureNoticeModel { get { return ModelCenter.Instance.GetModel<FeatureNoticeModel>(); } } WishingPoolModel wishModel { get { return ModelCenter.Instance.GetModel<WishingPoolModel>(); } } MysticalPurchaseModel purchaseModel { get { return ModelCenter.Instance.GetModel<MysticalPurchaseModel>(); } } IceCrystalVeinModel m_IceCrystalVeinModel; DungeonAssistModel assistModel { get { return ModelCenter.Instance.GetModel<DungeonAssistModel>(); } } IceCrystalVeinModel m_IceCrystalVeinModel; IceCrystalVeinModel iceCrystalVeinModel { get { return m_IceCrystalVeinModel ?? (m_IceCrystalVeinModel = ModelCenter.Instance.GetModel<IceCrystalVeinModel>()); } } #region Built-in protected override void BindController() @@ -183,6 +185,7 @@ m_SendRedbagBtn.AddListener(SendRedpacketBtn); WishingAwardImg.AddListener(ClickWishAward); MysticalPurchaseImg.AddListener(ClickMysticalPurchase); DungeonAssistImg.AddListener(ClickDungeonAssist); m_GotoFairyGrabBoss.AddListener(GotoFairyGrabBoss); m_FlyToFairyGrabBoss.AddListener(FlyToFairyGrabBoss); } @@ -214,6 +217,7 @@ m_BossBriefInfos.gameObject.SetActive(false); UpdateWishAwardImag(); UpdateMysticalPurchaseImag(); UpdateDungeonAssistImag(); ArticleExperience();//关于经验条 FriendQuestBtn(); UpdateFairyRequest(); @@ -240,6 +244,7 @@ NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent; fairyGrabBossModel.bossGrabHintEvent += bossGrabHintEvent; wishModel.UpdateWishAwardEvent += UpdateWishAwardImag; assistModel.UpdateRedpointEvent += UpdateDungeonAssistImag; purchaseModel.UpdateNewMysticalEvent += UpdateMysticalPurchaseImag; fairyGrabBossModel.gotoBossStateUpdate += ShowFairyGrabBoss; } @@ -395,6 +400,7 @@ m_FairyCallBehaviour.UnInit(); horseRidBool = false; purchaseModel.UpdateNewMysticalEvent -= UpdateMysticalPurchaseImag; assistModel.UpdateRedpointEvent -= UpdateDungeonAssistImag; PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting; FunctionUnlockFlyObject.functionUnLockShowBeginEvent -= UnFlodFunctionArea; fairyModel.UpdateFairyRequestEvent -= UpdateFairyRequest; @@ -694,6 +700,16 @@ WindowCenter.Instance.Open<OpenServerActivityWin>(false, (int)OpenServerActivityCenter.OSActivityType.MysticalPurchase); } private void ClickDungeonAssist() { WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.DungeonAssitCheckIn); } private void UpdateDungeonAssistImag() { DungeonAssistImg.gameObject.SetActive(assistModel.IsNewAssistInfo); } private void UpdateMysticalPurchaseImag() { MysticalPurchaseImg.gameObject.SetActive(purchaseModel.priorityOpen); System/Treasure/DemonDungeonBehaviour.cs
@@ -53,7 +53,7 @@ } else if (select) { m_BossName.color = UIHelper.GetUIColor(TextColType.Green, true); m_BossName.color = UIHelper.GetUIColor(TextColType.Red); } else { System/WindowJump/WindowJumpMgr.cs
@@ -589,6 +589,9 @@ case JumpUIType.DogzFunc2Type2: SetJumpLogic<DogzWin>(_tagWinSearchModel.TABID); break; case JumpUIType.DungeonAssitCheckIn: SetJumpLogic<DungeonAssistWin>(_tagWinSearchModel.TABID); break; case JumpUIType.FaBaoSoul_BenYuan: case JumpUIType.FaBaoSoul_FengMo: case JumpUIType.FaBaoSoul_Strength: @@ -1479,6 +1482,7 @@ Team_TrialDungeon = 255, //组队列表-宗门试炼标签 Team_EmperorRelic = 256, //组队列表-娲皇遗迹标签 OpenServer_AccumulateRecharge = 257, //精彩活动—累计充值界面 DungeonAssitCheckIn = 258, //副本助战登记 DhszTs = 1001,//定海神针功法提升界面 HyqTs = 1002,//皓月枪功法提升界面 GyzTs = 1003,//鬼牙刃功法提升界面