| System/HappyXB/BestXBWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HappyXB/HappyXBModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HappyXB/RuneXBWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/HappyXB/XBItemCell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainInterfacePanel/SideMission.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainInterfacePanel/TaskAllocation.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
System/HappyXB/BestXBWin.cs
@@ -54,7 +54,10 @@ [SerializeField] float maxTimeInter = 0.6f; [Header("最小时间间隔")] [SerializeField] float minTimeInter = 0.005f; [Header("闪烁次数")] [SerializeField] public int flashingTimes = 10; [Header("单次闪烁时间")] [SerializeField] public float flashingTime = 0.2f; [Header("得到物品停留时间")] [SerializeField] float stopTime = 2f; [Header("寻宝得到物品动画时间")] @@ -434,6 +437,14 @@ { if (cycle > cycleTimes) { for (int i = 0; i < xbItemlist.Count; i++) { xbItemlist[i].CheckToFlashing(1,curSelectIndex); } for (int i = 0; i < xbItemlist.Count; i++) { xbItemlist[i].RefreshSelectIcon(curSelectIndex); } if (isXBMany) { if (targetIndex >= targetIndexs.Count - 1) @@ -495,7 +506,16 @@ IEnumerator PlaySelectItemAni(bool isEndXB,int targetIndex = 0,int curSelectIndex = 0) { yield return new WaitForSeconds(stopTime); XBGetItemConfig getItemConfig = XBModel.GetXBItemConfigByType(1); if(getItemConfig != null && getItemConfig.LuckyGridNum == curSelectIndex) { yield return new WaitForSeconds(flashingTime*flashingTimes); } else { yield return new WaitForSeconds(stopTime); } if(isEndXB) { if(targetIndexs.Count > 1) System/HappyXB/HappyXBModel.cs
@@ -314,6 +314,28 @@ return dict; } public XBGetItemConfig GetXBItemConfigByType(int type) { int lv = 0; List<XBGetItemConfig> configlist = null; xbTypeItemDict.TryGetValue(type, out configlist); if (configlist != null) { for (int i = configlist.Count - 1; i > -1; i--) { if (PlayerDatas.Instance.baseData.LV >= configlist[i].MinLV) { lv = configlist[i].MinLV; break; } } } XBGetItemConfig xbItemConfig = null; string key = StringUtility.Contact(type, lv); xbGetItemDict.TryGetValue(key,out xbItemConfig); return xbItemConfig; } #region 处理服务端数据 public event Action RefreshXBTypeInfoAct; public event Action RefreshXBResultAct; System/HappyXB/RuneXBWin.cs
@@ -55,6 +55,11 @@ [SerializeField] float maxTimeInter = 0.6f; [Header("最小时间间隔")] [SerializeField] float minTimeInter = 0.005f; [Header("闪烁次数")] [SerializeField] public int flashingTimes = 10; [Header("单次闪烁时间")] [SerializeField] public float flashingTime = 0.2f; [Header("得到物品停留时间")] [SerializeField] float stopTime = 0.5f; [Header("寻宝得到物品动画时间")] @@ -444,6 +449,11 @@ { if (cycle > cycleTimes) { for (int i = 0; i < xbItemlist.Count; i++) { xbItemlist[i].CheckToFlashing(2, curSelectIndex); } if (isXBMany) { if (targetIndex >= targetIndexs.Count - 1) @@ -503,7 +513,16 @@ IEnumerator PlaySelectItemAni(bool isEndXB, int targetIndex = 0, int curSelectIndex = 0) { yield return new WaitForSeconds(stopTime); XBGetItemConfig getItemConfig = XBModel.GetXBItemConfigByType(2); if (getItemConfig != null && getItemConfig.LuckyGridNum == curSelectIndex) { yield return new WaitForSeconds(flashingTime * flashingTimes); } else { yield return new WaitForSeconds(stopTime); } if (isEndXB) { if (targetIndexs.Count > 1) System/HappyXB/XBItemCell.cs
@@ -2,6 +2,7 @@ using UnityEngine.UI; using TableConfig; using System.Collections.Generic; using System.Collections; namespace Snxxz.UI { @@ -12,6 +13,7 @@ [SerializeField] Text nameText; ItemTipsModel itemTips { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } HappyXBModel XBModel { get { return ModelCenter.Instance.GetModel<HappyXBModel>(); } } int xbIndex = 0; public void SetModel(int itemId,int count,int index) @@ -45,5 +47,53 @@ selectIcon.SetActive(false); } } public void CheckToFlashing(int xbType, int curSelect) { if (curSelect != xbIndex) return; XBGetItemConfig xbItemConfig = XBModel.GetXBItemConfigByType(xbType); if (xbItemConfig == null || xbItemConfig.LuckyGridNum != xbIndex) return; StartCoroutine(BestItemFlashing(xbType)); } IEnumerator BestItemFlashing(int xbType) { int num = 0; BestXBWin bestXB = null; RuneXBWin runeXB = null; switch (xbType) { case 1: bestXB = WindowCenter.Instance.Get<BestXBWin>(); break; case 2: runeXB = WindowCenter.Instance.Get<RuneXBWin>(); break; } int flashingTimes = 0; float flashingTime = 0; if(bestXB != null) { flashingTimes = bestXB.flashingTimes; flashingTime = bestXB.flashingTime; } else if(runeXB != null) { flashingTimes = runeXB.flashingTimes; flashingTime = runeXB.flashingTime; } while (true) { selectIcon.SetActive(!selectIcon.activeInHierarchy); num += 1; if (num >= flashingTimes) { break; } yield return new WaitForSeconds(flashingTime); } } } } System/MainInterfacePanel/SideMission.cs
@@ -23,6 +23,7 @@ [SerializeField] Button _Btn_Forward;//支线前往按钮 [SerializeField] Text _Text_Forward;//按钮文字 [SerializeField] Button m_FinishAtOnce;//立即完成 PlayerTaskDatas m_TaskModel; PlayerTaskDatas taskmodel { get { return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } } ItemTipsModel _itemTipsModel; @@ -40,6 +41,7 @@ private void Start() { _Btn_Forward.onClick.AddListener(ForwardButton); m_FinishAtOnce.AddListener(OnClickSkillTask); } private void OnEnable() { @@ -60,6 +62,11 @@ } private void OnClickSkillTask() { TaskAllocation.Instance.SkillTask(TaskIdNow); } private void ForwardButton() { if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3) @@ -144,7 +151,7 @@ str = WordAnalysis.Color_Start_Regex.Replace(str, string.Empty); str = WordAnalysis.Color_End_Regex.Replace(str, string.Empty); _Text_TaskTarget.text = str;//任务目标 SkillTask(taskID); if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)//能够进行立即完成的支线任务 { _Text_Forward.text = string.Format(Language.Get("FinishAtOnce_Z")); @@ -234,6 +241,16 @@ } return string.Empty; } private void SkillTask(int TsakID) { if (!taskmodel.allMissionDict.ContainsKey(TsakID) || !mainModel.TaskId_Skill.Contains(TsakID)) { m_FinishAtOnce.gameObject.SetActive(false); return; } m_FinishAtOnce.gameObject.SetActive(true); } } } System/MainInterfacePanel/TaskAllocation.cs
@@ -9,9 +9,11 @@ using System.Text.RegularExpressions; using System.Collections.Generic; //用于任务分配 namespace Snxxz.UI { namespace Snxxz.UI { public class TaskAllocation:Singleton<TaskAllocation> { public class TaskAllocation : Singleton<TaskAllocation> { private static StringBuilder textBuilder = new StringBuilder(); private const string Info_Pattern = "{([a-zA-Z0-9_]+)}"; @@ -23,7 +25,7 @@ return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } } public string GetTaskInfo(string val, int _item)//用于0820中字典的值替换(1字符串2任务ID) public string GetTaskInfo(string val, int _item)//用于0820中字典的值替换(1字符串2任务ID) { textBuilder.Length = 0; int index = 0; @@ -56,7 +58,7 @@ } } public int ForRingNumber()//获取赏金环数 public int ForRingNumber()//获取赏金环数 { if (taskmodel.ReplaceDic.ContainsKey(1)) { @@ -114,7 +116,38 @@ } return 0; } PlayerMainDate m_MainModel; PlayerMainDate mainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel<PlayerMainDate>()); } } public void SkillTask(int TaskID)//用于解锁被动技能任务 { int Gold = (int)UIHelper.GetMoneyCnt(1);//仙玉 if (mainModel.TaskId_Skill.Contains(TaskID)) { int Index = mainModel.TaskId_Skill.IndexOf(TaskID); int NeedMoney = mainModel.NeedFairyJade[Index]; string strNull = string.Format(Language.Get("PassiveSkillTask3"), NeedMoney); ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), strNull, (bool isOk) => { if (isOk) { if (Gold >= NeedMoney) { taskmodel.CompletionOfTask(TaskID); WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2); } else { if (VersionConfig.Get().isBanShu) { SysNotifyMgr.Instance.ShowTip("GoldErr"); return; } WindowCenter.Instance.Open<RechargeTipWin>(); } } }); } } } }