| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Wednesday, November 22, 2017 |
| | | //-------------------------------------------------------- |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | using UnityEngine.UI; |
| | | using TableConfig; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using DG.Tweening; |
| | | //主界面功能预告 |
| | | namespace Snxxz.UI { |
| | | |
| | | public class FunctionForecastTip : MonoBehaviour { |
| | | public static int OpenTag = 0; |
| | | [SerializeField] Transform _FunctionForecastPanel;//切换面板 |
| | | [SerializeField] Image _FunctionIcon;//图标Icon |
| | | [SerializeField] Button _FunctionIconBtn;//面板开关按钮 |
| | | [SerializeField] Text _NameText;//标题名 |
| | | [SerializeField] Text _Information;//信息内容 |
| | | public static Action<int> FunctionOpenTagEvent; |
| | | public void Init()//初始化 |
| | | { |
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent += OnPlayersUpLV; |
| | | FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; |
| | | DataAssignment(); |
| | | } |
| | | |
| | | |
| | | |
| | | public void Unit() |
| | | { |
| | | FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; |
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= OnPlayersUpLV; |
| | | } |
| | | |
| | | |
| | | private void Start() |
| | | { |
| | | _FunctionIconBtn.AddListener(FunctionIconBtn); |
| | | } |
| | | |
| | | private void OnFuncStateChangeEvent(int obj) |
| | | { |
| | | var config = ConfigManager.Instance.GetTemplate<FunctionForecastConfig>(obj); |
| | | if (config != null) |
| | | { |
| | | DataAssignment(); |
| | | } |
| | | } |
| | | |
| | | private void OnPlayersUpLV(PlayerDataRefresh _type) |
| | | { |
| | | if (_type==PlayerDataRefresh.LV) |
| | | { |
| | | DataAssignment(); |
| | | } |
| | | } |
| | | |
| | | void DataAssignment() |
| | | { |
| | | if (FuncOpen.Instance.IsFuncOpen(OpenTag)) |
| | | { |
| | | _FunctionForecastPanel.gameObject.SetActive(false); |
| | | } |
| | | |
| | | var configs = ConfigManager.Instance.GetAllValues<FunctionForecastConfig>(); |
| | | foreach (var config in configs) |
| | | { |
| | | if (!FuncOpen.Instance.IsFuncOpen(config.FuncId) |
| | | && PlayerDatas.Instance.baseData.LV >= config.OpenLevel) |
| | | { |
| | | OpenTag = config.FuncId; |
| | | if (FunctionOpenTagEvent != null) |
| | | { |
| | | FunctionOpenTagEvent(OpenTag); |
| | | } |
| | | OpenPanel(OpenTag); |
| | | return; |
| | | } |
| | | } |
| | | _FunctionForecastPanel.gameObject.SetActive(false); |
| | | return; |
| | | } |
| | | |
| | | void OpenPanel(int ID) |
| | | { |
| | | _FunctionForecastPanel.gameObject.SetActive(true); |
| | | _FunctionIcon.SetSprite(ConfigManager.Instance.GetTemplate<FunctionForecastConfig>(ID).FuncIconKey); |
| | | _NameText.text = ConfigManager.Instance.GetTemplate<FunctionForecastConfig>(ID).Describe; |
| | | FuncOpenLVConfig funcoPenConfig = ConfigManager.Instance.GetTemplate<FuncOpenLVConfig>(ID); |
| | | if (funcoPenConfig.LimitMagicWeapon != 0 || funcoPenConfig.LimitMissionID!=0) |
| | | { |
| | | if (funcoPenConfig.LimitMagicWeapon != 0) |
| | | { |
| | | int faBaoID = funcoPenConfig.LimitMagicWeapon / 100; |
| | | TreasureConfig treasure = ConfigManager.Instance.GetTemplate<TreasureConfig>(faBaoID); |
| | | _Information.text = string.Format(Language.Get("FuncFBOpen"), treasure.Name); |
| | | return; |
| | | } |
| | | if (funcoPenConfig.LimitMissionID != 0) |
| | | { |
| | | _Information.text = string.Format(Language.Get("TaskFuncOpen"), funcoPenConfig.LimitLV); |
| | | return; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | _Information.text = string.Format(Language.Get("FuncLevelOpen"), funcoPenConfig.LimitLV); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | void FunctionIconBtn()//面板开启 |
| | | { |
| | | WindowCenter.Instance.Open<FunctionForecastWin>(); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | //--------------------------------------------------------
|
| | | // [Author]: 第二世界
|
| | | // [ Date ]: Wednesday, November 22, 2017
|
| | | //--------------------------------------------------------
|
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | | using UnityEngine.UI;
|
| | | using TableConfig;
|
| | | using System;
|
| | | using System.Collections.Generic;
|
| | | using DG.Tweening;
|
| | | //主界面功能预告
|
| | | namespace Snxxz.UI {
|
| | |
|
| | | public class FunctionForecastTip : MonoBehaviour {
|
| | | public static int OpenTag = 0;
|
| | | [SerializeField] Transform _FunctionForecastPanel;//切换面板 |
| | | [SerializeField] Image _FunctionIcon;//图标Icon
|
| | | [SerializeField] Button _FunctionIconBtn;//面板开关按钮
|
| | | [SerializeField] Text _NameText;//标题名
|
| | | [SerializeField] Text _Information;//信息内容
|
| | | public static Action<int> FunctionOpenTagEvent;
|
| | | public void Init()//初始化
|
| | | {
|
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent += OnPlayersUpLV;
|
| | | FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
|
| | | DataAssignment();
|
| | | }
|
| | |
|
| | |
|
| | |
|
| | | public void Unit()
|
| | | {
|
| | | FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
|
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= OnPlayersUpLV;
|
| | | }
|
| | | |
| | |
|
| | | private void Start()
|
| | | {
|
| | | _FunctionIconBtn.AddListener(FunctionIconBtn);
|
| | | }
|
| | |
|
| | | private void OnFuncStateChangeEvent(int obj)
|
| | | {
|
| | | var config = ConfigManager.Instance.GetTemplate<FunctionForecastConfig>(obj);
|
| | | if (config != null)
|
| | | {
|
| | | DataAssignment();
|
| | | }
|
| | | }
|
| | |
|
| | | private void OnPlayersUpLV(PlayerDataRefresh _type)
|
| | | {
|
| | | if (_type==PlayerDataRefresh.LV)
|
| | | {
|
| | | DataAssignment();
|
| | | }
|
| | | }
|
| | |
|
| | | void DataAssignment()
|
| | | {
|
| | | if (FuncOpen.Instance.IsFuncOpen(OpenTag))
|
| | | {
|
| | | _FunctionForecastPanel.gameObject.SetActive(false);
|
| | | }
|
| | |
|
| | | var configs = ConfigManager.Instance.GetAllValues<FunctionForecastConfig>();
|
| | | foreach (var config in configs)
|
| | | {
|
| | | if (!FuncOpen.Instance.IsFuncOpen(config.FuncId)
|
| | | && PlayerDatas.Instance.baseData.LV >= config.OpenLevel)
|
| | | {
|
| | | OpenTag = config.FuncId;
|
| | | if (FunctionOpenTagEvent != null)
|
| | | {
|
| | | FunctionOpenTagEvent(OpenTag);
|
| | | }
|
| | | OpenPanel(OpenTag);
|
| | | return;
|
| | | }
|
| | | }
|
| | | _FunctionForecastPanel.gameObject.SetActive(false);
|
| | | return;
|
| | | }
|
| | |
|
| | | void OpenPanel(int ID)
|
| | | {
|
| | | _FunctionForecastPanel.gameObject.SetActive(true);
|
| | | _FunctionIcon.SetSprite(ConfigManager.Instance.GetTemplate<FunctionForecastConfig>(ID).FuncIconKey);
|
| | | _NameText.text = ConfigManager.Instance.GetTemplate<FunctionForecastConfig>(ID).Describe;
|
| | | FuncOpenLVConfig funcoPenConfig = ConfigManager.Instance.GetTemplate<FuncOpenLVConfig>(ID);
|
| | | if (funcoPenConfig.LimitMagicWeapon != 0 || funcoPenConfig.LimitMissionID!=0)
|
| | | {
|
| | | if (funcoPenConfig.LimitMagicWeapon != 0)
|
| | | {
|
| | | int faBaoID = funcoPenConfig.LimitMagicWeapon / 100;
|
| | | TreasureConfig treasure = ConfigManager.Instance.GetTemplate<TreasureConfig>(faBaoID);
|
| | | _Information.text = string.Format(Language.Get("FuncFBOpen"), treasure.Name);
|
| | | return;
|
| | | }
|
| | | if (funcoPenConfig.LimitMissionID != 0)
|
| | | {
|
| | | _Information.text = string.Format(Language.Get("TaskFuncOpen"), funcoPenConfig.LimitLV);
|
| | | return;
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | _Information.text = string.Format(Language.Get("FuncLevelOpen"), funcoPenConfig.LimitLV);
|
| | | }
|
| | | |
| | | }
|
| | |
|
| | | |
| | | void FunctionIconBtn()//面板开启
|
| | | {
|
| | | WindowCenter.Instance.Open<FunctionForecastWin>();
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | |
|
| | |
|