Merge branch 'master' into 1871天赋功能
| | |
| | | private void ExcuteBuildUI()
|
| | | {
|
| | | AssetSource.allFromEditor = true;
|
| | | CheckFontSwitch.CheckAndReplaceFontSwitch();
|
| | | //CheckFontSwitch.CheckAndReplaceFontSwitch();
|
| | | UpdateUIPrefabSetting.SetAllUIPrefabAssetBundleName();
|
| | | UpdateUIWindowSetting.SetAllUIWindowAssetBundleName();
|
| | | UpdateSpriteSetting.SetAllSpriteAssetBundleName();
|
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, September 03, 2018 |
| | | // [ Date ]: Thursday, September 20, 2018 |
| | | //-------------------------------------------------------- |
| | | |
| | | using UnityEngine; |
| | |
| | | public string itemAward { get ; private set; }
|
| | | public int[] successList;
|
| | | public int treasureId { get ; private set ; }
|
| | | public int sort { get ; private set ; }
|
| | | public string Icon { get ; private set; }
|
| | | public string Name { get ; private set; }
|
| | | public string targetDescription { get ; private set; }
|
| | |
| | |
|
| | | treasureId=IsNumeric(rawContents[8]) ? int.Parse(rawContents[8]):0;
|
| | |
|
| | | Icon = rawContents[9].Trim();
|
| | | sort=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0; |
| | |
|
| | | Name = rawContents[10].Trim();
|
| | | Icon = rawContents[10].Trim();
|
| | |
|
| | | targetDescription = rawContents[11].Trim();
|
| | | Name = rawContents[11].Trim();
|
| | |
|
| | | effectId=IsNumeric(rawContents[12]) ? int.Parse(rawContents[12]):0; |
| | | targetDescription = rawContents[12].Trim();
|
| | | |
| | | effectId=IsNumeric(rawContents[13]) ? int.Parse(rawContents[13]):0; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 761a8477b6259554ab927daec347dba7 |
| | | timeCreated: 1535981375 |
| | | timeCreated: 1537429075 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | |
| | | public int pkState;//是否在pk中 175 1--进入状态 2--退出状态
|
| | | public int bossState;//Boss状态 176 1--进入状态 2--退出状态
|
| | | public int OnlyFinalHurt;
|
| | | public int forbidenTalk;
|
| | | public int NpcHurtAddPer;//对怪物伤害加成 188
|
| | | public int FunalHurtPer;//对怪物伤害加成 189
|
| | | } |
| | |
| | | case PlayerDataRefresh.FunalHurtPer:
|
| | | extersion.FunalHurtPer = (int)value;
|
| | | break;
|
| | | case PlayerDataRefresh.CDBPlayerRefresh_ForbidenTalk:
|
| | | extersion.forbidenTalk = (int)value;
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | |
|
| | | // A5 C4 神兽装备强化 #tagCMDogzEquipPlus
|
| | |
|
| | |
|
| | |
|
| | | public class CA5C4_tagCMDogzEquipPlus : GameNetPackBasic {
|
| | |
|
| | | public byte EquipIndex; //神兽装备背包中索引
|
| | |
|
| | | public byte IndexCount; //材料所在神兽物品背包索引的数量
|
| | |
|
| | | public byte[] IndexList; //材料所在神兽物品背包索引列表
|
| | |
|
| | | public byte IsDouble; //是否双倍强化
|
| | |
|
| | |
|
| | |
|
| | | public CA5C4_tagCMDogzEquipPlus () {
|
| | |
|
| | | combineCmd = (ushort)0x03FE;
|
| | |
|
| | | _cmd = (ushort)0xA5C4;
|
| | |
|
| | | }
|
| | |
|
| | |
|
| | |
|
| | | public override void WriteToBytes () {
|
| | |
|
| | | WriteBytes (EquipIndex, NetDataType.BYTE);
|
| | |
|
| | | WriteBytes (IndexCount, NetDataType.BYTE);
|
| | |
|
| | | WriteBytes (IndexList, NetDataType.BYTE, IndexCount);
|
| | |
|
| | | WriteBytes (IsDouble, NetDataType.BYTE);
|
| | |
|
| | | }
|
| | |
|
| | |
|
| | |
|
| | | }
|
| | |
|
| | | // A5 C4 神兽装备强化 #tagCMDogzEquipPlus
|
| | |
|
| | | public class CA5C4_tagCMDogzEquipPlus : GameNetPackBasic {
|
| | | public byte EquipIndex; //神兽装备背包中索引
|
| | | public byte IndexCount; //材料所在神兽物品背包索引的数量
|
| | | public byte[] IndexList; //材料所在神兽物品背包索引列表
|
| | | public uint[] IndexUseCountList; //材料所在神兽物品背包索引对应使用个数列表
|
| | | public byte IsDouble; //是否双倍强化
|
| | |
|
| | | public CA5C4_tagCMDogzEquipPlus () {
|
| | | _cmd = (ushort)0xA5C4;
|
| | | }
|
| | |
|
| | | public override void WriteToBytes () {
|
| | | WriteBytes (EquipIndex, NetDataType.BYTE);
|
| | | WriteBytes (IndexCount, NetDataType.BYTE);
|
| | | WriteBytes (IndexList, NetDataType.BYTE, IndexCount);
|
| | | WriteBytes (IndexUseCountList, NetDataType.DWORD, IndexCount);
|
| | | WriteBytes (IsDouble, NetDataType.BYTE);
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | #!/bin/sh |
| | | # -*- coding: UTF-8 -*- |
| | | |
| | | if [ "$(grep -in '^[0-9]*[1-9][0-9]* .*' "$1")" == "" ] && [ "$(grep -in '^Merge .*' "$1")" == "" ] && [ "$(grep -in '^Revert .*' "$1")" == "" ]; then |
| | | if [ "$(grep -in '^[0-9]\{4,5\} .*' "$1")" == "" ] && [ "$(grep -in '^Merge .*' "$1")" == "" ] && [ "$(grep -in '^Revert .*' "$1")" == "" ]; then |
| | | echo 以下3种是正确的备注信息是: |
| | | echo 1. 12345 正常提交备注信息必须以数字单号开头。#数字单号后面带空格# |
| | | echo 1. 12345 正常提交备注信息必须以4到5位数字单号开头。#数字单号后面带空格# |
| | | echo 2. Merge 以Merge开头说明这是一次git合并操作,这是被允许的。#Merge后面带空格# |
| | | echo 3. Revert 以Revert开头说明这是一次git还原操作,这是被允许的。#Revert后面带空格# |
| | | exit 1 |
| | |
| | | const string downloadUrl = "http://{0}.voice.2460web.com:53001/voice/download";
|
| | | private void SendSpeech(byte[] encode, long _tick)
|
| | | {
|
| | | if (IsChatBanned)
|
| | | {
|
| | | SaveSpeech((int)PlayerDatas.Instance.PlayerId, _tick, encode);
|
| | | return;
|
| | | }
|
| | | VoiceHttpRequest.Instance.Enqueue(encode, _tick, (int)PlayerDatas.Instance.PlayerId);
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | #endregion
|
| | |
|
| | | #region 聊天黑名单
|
| | |
|
| | | public string SetChatExtra()
|
| | | {
|
| | | var vipLevel = PlayerDatas.Instance.baseData.VIPLv;
|
| | | var job = PlayerDatas.Instance.baseData.Job;
|
| | | return StringUtility.Contact(vipLevel.ToString().PadLeft(2, '0'), 0, job);
|
| | | }
|
| | |
|
| | | public void HandleChatBanned(ChatInfoType channel, string message, int toPlayer)
|
| | | {
|
| | | if (IsChatBanned)
|
| | | {
|
| | | var playerId = PlayerDatas.Instance.baseData.PlayerID;
|
| | | var playerName = UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName);
|
| | | switch (channel)
|
| | | {
|
| | | case ChatInfoType.World:
|
| | | ChatCtrl.Inst.RevChatInfo(new H0201_tagTalkGong()
|
| | | {
|
| | | Content = message,
|
| | | Extras = SetChatExtra(),
|
| | | PlayerID = playerId,
|
| | | Name = playerName,
|
| | | });
|
| | | break;
|
| | | case ChatInfoType.Area:
|
| | | ChatCtrl.Inst.RevChatInfo(new H0207_tagTalkArea()
|
| | | {
|
| | | Content = message,
|
| | | Extras = SetChatExtra(),
|
| | | PlayerID = playerId,
|
| | | SrcName = playerName,
|
| | | });
|
| | | break;
|
| | | case ChatInfoType.Team:
|
| | | ChatCtrl.Inst.RevChatInfo(new H0205_tagTalkDui()
|
| | | {
|
| | | PlayerID = playerId,
|
| | | Name = playerName,
|
| | | Content = message,
|
| | | Extras = SetChatExtra(),
|
| | | });
|
| | | break;
|
| | | case ChatInfoType.Fairy:
|
| | | ChatCtrl.Inst.RevChatInfo(new H0203_tagTalkBang()
|
| | | {
|
| | | PlayerID = playerId,
|
| | | Content = message,
|
| | | Extras = SetChatExtra(),
|
| | | Name = playerName,
|
| | | });
|
| | | break;
|
| | | case ChatInfoType.Friend:
|
| | | ChatCtrl.Inst.RevChatInfo(new H0206_tagTalkMi()
|
| | | {
|
| | | PlayerID = playerId,
|
| | | SrcName = playerName,
|
| | | Content = message,
|
| | | Extras = SetChatExtra(),
|
| | | ToPlayerID = (uint)toPlayer,
|
| | | ToName = string.Empty,
|
| | | TalkType = 1,
|
| | | });
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public bool IsChatBanned
|
| | | {
|
| | | get
|
| | | {
|
| | | var value = PlayerDatas.Instance.extersion.forbidenTalk;
|
| | | var serverBanned = value == 1;
|
| | | return serverBanned;
|
| | | }
|
| | | }
|
| | | #endregion
|
| | |
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | {
|
| | | try
|
| | | {
|
| | | if (chatCenter.IsChatBanned)
|
| | | {
|
| | | return;
|
| | | }
|
| | | var channelName = string.Empty;
|
| | | switch (chatType)
|
| | | {
|
| | |
| | |
|
| | | public void SendChatInfo(ChatInfoType type, string msg, ChatExtraData? info = null)
|
| | | {
|
| | | bool _dirty = false;
|
| | | bool isDirty = false;
|
| | | bool isVoice = ChatCenter.s_VoiceRegex.IsMatch(msg);
|
| | |
|
| | | if (CheckEmptyChat(msg))
|
| | | {
|
| | |
| | |
|
| | | ChatReport(type, msg, PteChatName);
|
| | |
|
| | | if (!ChatCenter.s_VoiceRegex.IsMatch(msg)
|
| | | && !InviteRegex.IsMatch(msg))
|
| | | if (!isVoice && !InviteRegex.IsMatch(msg))
|
| | | {
|
| | | _dirty = DirtyWordConfig.IsDirtWord(msg);
|
| | | isDirty = DirtyWordConfig.IsDirtWord(msg);
|
| | | msg = DirtyWordConfig.IsDirtWord(msg, '*');
|
| | | var length = msg.Length;
|
| | | if (length > CHAT_INFO_CNT)
|
| | |
| | | if (ok)
|
| | | {
|
| | | ChatCenter.RecentlyChat _recentlyChat = null;
|
| | | if (!_dirty)
|
| | | if (!isDirty && !isVoice)
|
| | | {
|
| | | _recentlyChat = chatCenter.SaveRecentlyChat(result);
|
| | | }
|
| | | msg = CheckHasItem(result, _recentlyChat);
|
| | | chatCenter.recentlyChat = null;
|
| | |
|
| | | if (chatCenter.IsChatBanned)
|
| | | {
|
| | | var toPlayer = PteChatID;
|
| | | if (info.HasValue && info.Value.infoint1 == 0)
|
| | | {
|
| | | toPlayer = info.Value.infoint1;
|
| | | }
|
| | | chatCenter.HandleChatBanned(type, msg, toPlayer);
|
| | | return;
|
| | | }
|
| | |
|
| | | switch (type)
|
| | | {
|
| | | case ChatInfoType.World:
|
| | |
| | | _pak.Text = msg;
|
| | | GameNetSystem.Instance.SendInfo(_pak);
|
| | | }
|
| | | }
|
| | | break;
|
| | | case ChatInfoType.Invite:
|
| | | {
|
| | | SendInvite(msg);
|
| | | }
|
| | | break;
|
| | | }
|
| | |
| | | ItemConfig cfg = Config.Instance.Get<ItemConfig>(itemID);
|
| | | if (cfg != null)
|
| | | {
|
| | | string append = string.Format("<a><Word info=item id={1} userdata={5} chatsend=1/>|showitem={1} isbind={2} itemcnt={3} stone={4} userdata={5} suitLv={6} suitCnt={7} place={8} equipwash={9}</a>",
|
| | | cfg.ItemColor, strarray[0], strarray[1], strarray[2], strarray[3], strarray[4], strarray[5], strarray[6], strarray[7], strarray[8]);
|
| | | append = UIHelper.GetTextColorByItemColor(cfg.ItemColor, append);
|
| | | data.richText.Append(append);
|
| | | try
|
| | | {
|
| | | string append = string.Format("<a><Word info=item id={0} userdata={4} chatsend=1/>|showitem={0} isbind={1} itemcnt={2} stone={3} userdata={4} suitLv={5} suitCnt={6} place={7} equipwash={8}</a>",
|
| | | strarray[0], strarray[1], strarray[2], strarray[3], strarray[4], strarray[5], strarray[6], strarray[7], strarray[8]);
|
| | | append = UIHelper.GetTextColorByItemColor(cfg.ItemColor, append);
|
| | | data.richText.Append(append);
|
| | | }
|
| | | catch (Exception e)
|
| | | {
|
| | | data.richText.Append(cfg.ItemName);
|
| | | DebugEx.Log(e.Message);
|
| | | }
|
| | | }
|
| | | }
|
| | | else
|
| | |
| | | SinglePackModel singlePack = _packModel.GetSinglePackModel(PackType.rptItem);
|
| | | if (ChatCtrl.Inst.presentChatType == ChatInfoType.Trumpet)
|
| | | {
|
| | | if (chatCenter.IsChatBanned)
|
| | | {
|
| | | return;
|
| | | }
|
| | | List<ItemModel> _list = null;
|
| | | var _count = singlePack.GetItemCountByID(chatCenter.bugleItem, out _list);
|
| | | if (_count < 1)
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | public bool CheckIsComposeByType(int firstType,int secondType,int thirdType)
|
| | | {
|
| | | ItemCompoundConfig itemCompound = GetThirdTypeModellist(firstType,secondType,thirdType)[0];
|
| | | if (itemCompound.levelNeed <= PlayerDatas.Instance.baseData.LV)
|
| | | {
|
| | | return true;
|
| | | }
|
| | | else
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("TicketComposeUnlock", itemCompound.levelNeed, itemCompound.secondTypeName);
|
| | | return false;
|
| | | }
|
| | | }
|
| | |
|
| | | public int secondType { get; private set; }
|
| | | public int thirdType { get; private set;}
|
| | | public void SetJumpToModel(ComposeFuncType type,int secondType,int thirdType)
|
| | |
| | | public class DogzCell : ScrollerUI
|
| | | {
|
| | | [SerializeField] Image m_DogzIcon;
|
| | | [SerializeField] RectTransform m_DogzIconRect;
|
| | | [SerializeField] Image m_DogzAssist;
|
| | | [SerializeField] Text m_DogzName;
|
| | | [SerializeField] Text m_DogzGrade;
|
| | |
| | | return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DogzModel>());
|
| | | }
|
| | | }
|
| | |
|
| | | public override void Refresh(CellView cell)
|
| | | {
|
| | | var _dogzCfg = Config.Instance.Get<DogzConfig>(cell.index);
|
| | | m_DogzIcon.SetSprite(_dogzCfg.HeadIcon);
|
| | | m_DogzIcon.SetNativeSize();
|
| | | m_DogzIconRect.sizeDelta = new Vector2(m_DogzIconRect.sizeDelta.x/2,m_DogzIconRect.sizeDelta.y/2);
|
| | | var _dogzEquips = model.GetDogzEquips(_dogzCfg.ID);
|
| | | bool isActive = (_dogzEquips == null || _dogzEquips.Count < 5) ? false : true;
|
| | | m_DogzName.text = _dogzCfg.Name;
|
| | |
| | | if (isActive)
|
| | | {
|
| | | m_DogzIcon.material = MaterialUtility.GetUIDefaultGraphicMaterial();
|
| | | m_DogzName.material = MaterialUtility.GetUIDefaultGraphicMaterial();
|
| | | m_DogzGrade.material = MaterialUtility.GetUIDefaultGraphicMaterial();
|
| | | m_DogzName.color = UIHelper.s_NavyBrown;
|
| | | m_DogzGrade.color = UIHelper.s_BrightOrangeColor;
|
| | | }
|
| | | else
|
| | | {
|
| | | m_DogzIcon.material = MaterialUtility.GetDefaultSpriteGrayMaterial();
|
| | | m_DogzName.material = MaterialUtility.GetDefaultSpriteGrayMaterial();
|
| | | m_DogzGrade.material = MaterialUtility.GetDefaultSpriteGrayMaterial();
|
| | | m_DogzName.color = UIHelper.s_BrightWhiteColor;
|
| | | m_DogzGrade.color = UIHelper.s_BrightWhiteColor;
|
| | | }
|
| | | m_DogzBtn.image.color = model.presentSelectDogz == _dogzCfg.ID ? Color.blue : Color.white;
|
| | | m_DogzBtn.image.SetSprite(model.presentSelectDogz == _dogzCfg.ID ? "Title_RightWindow" : "Title_PopupWindow");
|
| | | m_DogzAssist.gameObject.SetActive(model.TryGetAssistDogzState(_dogzCfg.ID));
|
| | | m_DogzBtn.onClick.RemoveAllListeners();
|
| | | m_DogzBtn.onClick.AddListener(() =>
|
| | |
| | | GameNetSystem.Instance.SendInfo(buyCnt);
|
| | | }
|
| | |
|
| | | public void SendDogzEquipStrength(int index,List<int>indexlist,int isDouble)
|
| | | public void SendDogzEquipStrength(int index,List<int>indexlist,List<int> IndexUseCountList, int isDouble)
|
| | | {
|
| | | CA5C4_tagCMDogzEquipPlus dogzStren = new CA5C4_tagCMDogzEquipPlus();
|
| | | dogzStren.EquipIndex = (byte)index;
|
| | | dogzStren.IndexCount = (byte)indexlist.Count;
|
| | | byte[] indexByte = new byte[indexlist.Count];
|
| | | for(int i = 0; i < indexByte.Length; i++)
|
| | | uint[] indexUseCountList = new uint[indexlist.Count];
|
| | | for (int i = 0; i < indexByte.Length; i++)
|
| | | {
|
| | | indexByte[i] = (byte)indexlist[i];
|
| | | }
|
| | | for (int i = 0; i < indexUseCountList.Length; i++)
|
| | | {
|
| | | indexUseCountList[i] = (uint)IndexUseCountList[i];
|
| | | }
|
| | | dogzStren.IndexUseCountList = indexUseCountList;
|
| | | dogzStren.IndexList = indexByte;
|
| | | dogzStren.IsDouble = (byte)isDouble;
|
| | | GameNetSystem.Instance.SendInfo(dogzStren);
|
| | |
| | | public bool IsReachSelectCondi(int itemId)
|
| | | {
|
| | | ItemConfig itemConfig = Config.Instance.Get<ItemConfig>(itemId);
|
| | | if (itemConfig == null) return false;
|
| | | if (itemConfig == null || itemConfig.EquipPlace == 0) return false;
|
| | |
|
| | | if (SelectDogzItemQuality == 0 && SelectDogzItemStart == 0) return true;
|
| | |
|
| | |
| | | private void OnOpenFuncEvent(int order)
|
| | | {
|
| | | funcBtnGroup.TriggerByOrder(order);
|
| | | if(WindowCenter.Instance.CheckOpen<DogzPackWin>())
|
| | | {
|
| | | WindowCenter.Instance.CloseImmediately<DogzPackWin>();
|
| | | }
|
| | | }
|
| | |
|
| | | private void OnDogzStrengthen()
|
| | |
| | |
|
| | | ItemModel model = dogzModel.selectEquipPlacelist[cell.index];
|
| | | nameTex.text = model.chinItemModel.ItemName;
|
| | | nameTex.color = UIHelper.GetUIColor(model.chinItemModel.ItemColor);
|
| | | nameTex.color = UIHelper.GetUIColor(model.chinItemModel.ItemColor,true);
|
| | | itemBaisc.Init(model);
|
| | | int strenLv = 0;
|
| | | if (model.GetUseDataModel((int)ItemUseDataKey.Def_IudetDogzEquipPlus) != null)
|
| | |
| | | page = 0;
|
| | | OnSearchPageList();
|
| | | AddFairyRed = LocalSave.GetBool(StringUtility.Contact(FairyKey, PlayerDatas.Instance.PlayerId));
|
| | | UpdateFairyInfo();
|
| | | }
|
| | | #endregion
|
| | |
|
| | |
| | | [SerializeField] Toggle _Togle_13;//十三阶
|
| | | [SerializeField] Toggle _Togle_14;//十四阶
|
| | | [SerializeField] Toggle _Togle_15;//十五阶
|
| | | [SerializeField] Toggle m_Toggle_Start;
|
| | |
|
| | | [SerializeField] Text _CountText;//获取当前的积分值
|
| | | [SerializeField] GameObject _Dropdown2;//阶数界面
|
| | |
| | | QueryFamilyAction();//家族行为信息查询
|
| | | _Dropdown.SetActive(false);
|
| | | _Dropdown2.SetActive(false);
|
| | | m_Toggle_Start.gameObject.SetActive(false);
|
| | | _ExitBtn.gameObject.SetActive(false);
|
| | | _DeleteBtn.gameObject.SetActive(false);
|
| | | _DonateBtn.gameObject.SetActive(true);
|
| | |
| | | _Togle_13.onValueChanged.AddListener(delegate (bool _bool) { Togle_13(_bool); });
|
| | | _Togle_14.onValueChanged.AddListener(delegate (bool _bool) { Togle_14(_bool); });
|
| | | _Togle_15.onValueChanged.AddListener(delegate (bool _bool) { Togle_15(_bool); });
|
| | | m_Toggle_Start.onValueChanged.AddListener(ToggleStar);
|
| | | }
|
| | |
|
| | | void CloseButton()//关闭按钮
|
| | |
| | | {
|
| | | ScrollViewFirst.SetActive(false);
|
| | | ScrollViewSecond.SetActive(false);
|
| | | m_Toggle_Start.gameObject.SetActive(true);
|
| | | _ExitBtn.gameObject.SetActive(false);
|
| | | _CleanBtn.gameObject.SetActive(false);
|
| | | _Dropdown.SetActive(true);
|
| | |
| | | _WarehouseCountBG.SetActive(true);
|
| | | _Dropdown.SetActive(false);
|
| | | _Dropdown2.SetActive(false);
|
| | | m_Toggle_Start.gameObject.SetActive(false);
|
| | | _ExitBtn.gameObject.SetActive(false);
|
| | | _DeleteBtn.gameObject.SetActive(false);
|
| | | _bool = false;
|
| | |
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | private void ToggleStar(bool isBool)
|
| | | {
|
| | | SelectiveCleaningEquipment();//选择销毁
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | |
| | | Item_lv = type_B;
|
| | | Item_Color = type_A;
|
| | | _EquipmentArray.Clear();
|
| | | foreach (int key in playerFairyAuTreasureData._DicfamilyStoreItem.Keys)
|
| | | if (m_Toggle_Start.isOn)
|
| | | {
|
| | | var itemConfig = Config.Instance.Get<ItemConfig>(playerFairyAuTreasureData._DicfamilyStoreItem[key].ItemID);
|
| | | if ((Item_lv >= itemConfig.LV && Item_Color >= itemConfig.ItemColor && playerFairyAuTreasureData._DicfamilyStoreItem[key].Index != 0))
|
| | | foreach (int key in playerFairyAuTreasureData._DicfamilyStoreItem.Keys)
|
| | | {
|
| | | _EquipmentArray.Add(playerFairyAuTreasureData._DicfamilyStoreItem[key].Index, true);
|
| | | var itemConfig = Config.Instance.Get<ItemConfig>(playerFairyAuTreasureData._DicfamilyStoreItem[key].ItemID);
|
| | | if ((Item_lv >= itemConfig.LV && Item_Color >= itemConfig.ItemColor && playerFairyAuTreasureData._DicfamilyStoreItem[key].Index != 0 && itemConfig.StarLevel <= 1))
|
| | | {
|
| | | _EquipmentArray.Add(playerFairyAuTreasureData._DicfamilyStoreItem[key].Index, true);
|
| | | }
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | foreach (int key in playerFairyAuTreasureData._DicfamilyStoreItem.Keys)
|
| | | {
|
| | | var itemConfig = Config.Instance.Get<ItemConfig>(playerFairyAuTreasureData._DicfamilyStoreItem[key].ItemID);
|
| | | if ((Item_lv >= itemConfig.LV && Item_Color >= itemConfig.ItemColor && playerFairyAuTreasureData._DicfamilyStoreItem[key].Index != 0 && itemConfig.StarLevel<=0))
|
| | | {
|
| | | _EquipmentArray.Add(playerFairyAuTreasureData._DicfamilyStoreItem[key].Index, true);
|
| | | }
|
| | | }
|
| | | }
|
| | | |
| | | _GridlineCtrl.m_Scorller.RefreshActiveCellViews();//刷新当前可见
|
| | | }
|
| | | int Color_T()//返回值1
|
| | |
| | | return;
|
| | | }
|
| | |
|
| | | personalRedpoint.count = own / ticketItem.count;
|
| | | personalRedpoint.count = Mathf.Clamp(own / ticketItem.count, 0, totalTimes - enterTimes);
|
| | | personalRedpoint.state = RedPointState.Quantity;
|
| | |
|
| | | }
|
| | |
|
| | | private void ParseConfig()
|
| | |
| | | [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("寻宝得到物品动画时间")]
|
| | |
| | | {
|
| | | 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)
|
| | |
| | |
|
| | | 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)
|
| | |
| | | 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;
|
| | |
| | | [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("寻宝得到物品动画时间")]
|
| | |
| | | {
|
| | | if (cycle > cycleTimes)
|
| | | {
|
| | | for (int i = 0; i < xbItemlist.Count; i++)
|
| | | {
|
| | | xbItemlist[i].CheckToFlashing(2, curSelectIndex);
|
| | | }
|
| | |
|
| | | if (isXBMany)
|
| | | {
|
| | | if (targetIndex >= targetIndexs.Count - 1)
|
| | |
| | |
|
| | | 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)
|
| | |
| | | using UnityEngine.UI;
|
| | | using TableConfig;
|
| | | using System.Collections.Generic;
|
| | | using System.Collections;
|
| | |
|
| | | namespace Snxxz.UI
|
| | | {
|
| | |
| | | [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)
|
| | |
| | | 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);
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | public event Action showItemRefreshEvent;
|
| | | public OverdueItem currentShowItem { get; private set; }
|
| | | DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
|
| | |
|
| | | bool isdelay = true;
|
| | | public readonly int VipExperirnceID = 985;
|
| | | public readonly int VipCardID = 978;
|
| | | Dictionary<int, Dictionary<int, List<ItemModel>>> allGuardDict = new Dictionary<int, Dictionary<int, List<ItemModel>>>(); //守护类型,守护ID
|
| | |
| | |
|
| | | public void OnBeforePlayerDataInitialize()
|
| | | {
|
| | | isdelay = true;
|
| | | GlobalTimeEvent.Instance.secondEvent -= UpdateSecond;
|
| | | guardOverdueIndex = -1;
|
| | | itemStack.Clear();
|
| | | itemGuids.Clear();
|
| | |
| | | {
|
| | |
|
| | | }
|
| | |
|
| | | void IPlayerLoginOk.OnPlayerLoginOk()
|
| | | |
| | | public void OnPlayerLoginOk()
|
| | | {
|
| | | GetOverdueGuard();
|
| | | GlobalTimeEvent.Instance.secondEvent += UpdateSecond;
|
| | | time = 0;
|
| | | }
|
| | | float time = 0;
|
| | | private void UpdateSecond()
|
| | | {
|
| | | if(isdelay)
|
| | | {
|
| | | time += 1;
|
| | | if(time >= 5)
|
| | | {
|
| | | GetOverdueGuard();
|
| | | isdelay = false;
|
| | | time = 0;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public bool TryGetItem(string _guid, out OverdueItem _itemModel)
|
| | |
| | | case "Guardian_Timeout":
|
| | | if (list.Count > 1)
|
| | | {
|
| | | SetAllGuardIdlist();
|
| | | guardOverdueIndex = int.Parse(list[1].ToString());
|
| | | ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptItem, guardOverdueIndex);
|
| | | if (itemModel != null)
|
| | |
| | | }
|
| | | }
|
| | | }
|
| | | models = pairs[idlist[idlist.Count - 1]];
|
| | | if (isOverdue && models != null && models.Count > 0)
|
| | | if (isOverdue)
|
| | | {
|
| | | ItemModel overdueModel = models[0];
|
| | | guardOverdueIndex = overdueModel.itemInfo.ItemPlace;
|
| | | OnGetOverdueItem(overdueModel.itemInfo.ItemID, overdueModel.itemInfo.ItemGUID, overdueModel.itemInfo.ItemPlace);
|
| | | for (int i = idlist.Count - 1; i > -1; i--)
|
| | | {
|
| | | models = pairs[idlist[i]];
|
| | | if (models != null && models.Count > 0)
|
| | | {
|
| | | ItemModel overdueModel = models[0];
|
| | | guardOverdueIndex = overdueModel.itemInfo.ItemPlace;
|
| | | OnGetOverdueItem(overdueModel.itemInfo.ItemID, overdueModel.itemInfo.ItemGUID, overdueModel.itemInfo.ItemPlace);
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | models = allGuardDict[type][idlist[idlist.Count - 1]];
|
| | | if (isOverdue && models != null && models.Count > 0)
|
| | | if(isOverdue)
|
| | | {
|
| | | ItemModel itemModel = models[0];
|
| | | if (!overdueGuardPushlist.Contains(itemModel))
|
| | | for (int i = idlist.Count - 1; i > -1; i--)
|
| | | {
|
| | | overdueGuardPushlist.Add(itemModel);
|
| | | models = allGuardDict[type][idlist[i]];
|
| | | if(models != null && models.Count > 0)
|
| | | {
|
| | | ItemModel itemModel = models[0];
|
| | | if (!overdueGuardPushlist.Contains(itemModel))
|
| | | {
|
| | | overdueGuardPushlist.Add(itemModel);
|
| | | }
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | } |
| | | protected override void OnActived()
|
| | | {
|
| | | m_ScrollerController.JumpIndex(JumpIndex());
|
| | | m_ScrollerController.JumpIndex(Offset, 0, EnhancedScroller.TweenType.immediate);
|
| | | var offset = 0f;
|
| | | m_ScrollerController.JumpIndex(JumpIndex(), ref offset);
|
| | | m_ScrollerController.JumpIndex(Offset + offset, 0, EnhancedScroller.TweenType.immediate);
|
| | | } |
| | | protected override void OnAfterOpen() |
| | | { |
| | |
| | | FeatureNoticeModel featureNoticeModel { get { return ModelCenter.Instance.GetModel<FeatureNoticeModel>(); } } |
| | | public void GetTheFeatureID(int funcId)
|
| | | {
|
| | | DebugEx.LogError("ID"+ featureNoticeModel.FunctionForecastIndex);
|
| | | var functionForecastConfig = Config.Instance.Get<FunctionForecastConfig>(funcId);
|
| | | if (functionForecastConfig == null)
|
| | | {
|
| | |
| | | case -5:
|
| | | case 0:
|
| | | StateDetermination();
|
| | | ContentText.ExcuteHref();
|
| | | OpenPanel(Task_ID);
|
| | | if (mainModel.TaskId_Skill.Contains(Task_ID))
|
| | | {
|
| | | mainModel.TaskSkillID = Task_ID;
|
| | | WindowCenter.Instance.Open<SkillTaskWin>();
|
| | | }
|
| | | else
|
| | | {
|
| | | ContentText.ExcuteHref();
|
| | | OpenPanel(Task_ID);
|
| | | }
|
| | | |
| | | break;
|
| | | case 1:
|
| | |
|
| | |
| | | public List<int> TaskId_Skill = new List<int>();//任务ID
|
| | | public List<int> SkillIndex = new List<int>();//技能槽索引
|
| | | public List<int> NeedFairyJade = new List<int>();//所需解锁仙玉
|
| | | public int Skill_Index = 0;
|
| | | public int TaskSkillID = 0;
|
| | | //-----关于支线翅膀任务的特殊逻辑
|
| | | public int WingTask = 0;
|
| | |
|
| | |
| | | SideQuestsType17 = 17,//支线17-21新增
|
| | | SideQuestsType18 = 18,
|
| | | SideQuestsType19 = 19,
|
| | | SideQuestsType20 = 20,
|
| | | SideQuestsType20 = 20,//(后端特殊处理,暂定不让使用)
|
| | | SideQuestsType21 = 21,
|
| | | }
|
| | |
|
| | |
| | |
|
| | | [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;
|
| | |
| | | private void Start()
|
| | | {
|
| | | _Btn_Forward.onClick.AddListener(ForwardButton);
|
| | | m_FinishAtOnce.AddListener(OnClickSkillTask);
|
| | | }
|
| | | private void OnEnable()
|
| | | {
|
| | |
| | |
|
| | | }
|
| | |
|
| | | private void OnClickSkillTask()
|
| | | {
|
| | | TaskAllocation.Instance.SkillTask(TaskIdNow);
|
| | |
|
| | | }
|
| | | private void ForwardButton()
|
| | | {
|
| | | if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)
|
| | |
| | | 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"));
|
| | |
| | | }
|
| | | 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);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using TableConfig;
|
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI { |
| | | namespace Snxxz.UI
|
| | | { |
| | | |
| | | public class SkillTaskWin : Window |
| | | { |
| | | |
| | | [SerializeField] RichText m_Text_Condition_1;//条件 |
| | | [SerializeField] RichText m_Text_Reward_1;//奖励 |
| | | [SerializeField] Text m_NeedMoney_Text;//所需仙玉 |
| | | [SerializeField] Button m_GoToSkillBtn;
|
| | | [SerializeField] Button m_OpenNowBtn;
|
| | | [SerializeField] Button m_GoToBtn; |
| | | [SerializeField] Button m_ClaoseBtn; |
| | | PlayerMainDate m_MainModel;
|
| | | PlayerMainDate mainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel<PlayerMainDate>()); } }
|
| | | PlayerTaskDatas m_TaskModel;
|
| | | PlayerTaskDatas taskmodel { get { return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } } |
| | | #region Built-in |
| | | protected override void BindController() |
| | | { |
| | | |
| | | } |
| | | |
| | | protected override void AddListeners() |
| | | { |
| | | m_ClaoseBtn.AddListener(() => { Close(); }); |
| | | m_GoToSkillBtn.AddListener(OnClickGoToSkillBtn); |
| | | m_OpenNowBtn.AddListener(OnClickOpenNowBtn); |
| | | m_GoToBtn.AddListener(OnClickGoToBtn); |
| | | } |
| | | |
| | | protected override void OnPreOpen() |
| | | { |
| | | {
|
| | | if (!taskmodel.allMissionDict.ContainsKey(mainModel.TaskSkillID))
|
| | | {
|
| | | return;
|
| | | }
|
| | | string str = taskmodel.allMissionDict[mainModel.TaskSkillID].InforList;
|
| | | var taskinfo = Config.Instance.Get<TASKINFOConfig>(str);
|
| | | if (taskinfo != null)
|
| | | {
|
| | | m_Text_Condition_1.text = taskinfo.show_writing;
|
| | | }
|
| | | if (mainModel.TaskId_Skill.Contains(mainModel.TaskSkillID))
|
| | | {
|
| | | int Index = mainModel.TaskId_Skill.IndexOf(mainModel.TaskSkillID);
|
| | | m_Text_Reward_1.text = string.Format(Language.Get("PassiveSkillTask1"), (mainModel.SkillIndex[Index] + 1));
|
| | | m_NeedMoney_Text.text = string.Format(Language.Get("PassiveSkillTask2"), mainModel.NeedFairyJade[Index]);
|
| | | }
|
| | | } |
| | | |
| | | protected override void OnAfterOpen() |
| | |
| | | } |
| | | |
| | | protected override void OnAfterClose() |
| | | { |
| | | {
|
| | |
|
| | | } |
| | | |
| | | private void OnClickGoToSkillBtn()
|
| | | {
|
| | | if (mainModel.TaskId_Skill.Contains(mainModel.TaskSkillID))
|
| | | {
|
| | | int Index = mainModel.TaskId_Skill.IndexOf(mainModel.TaskSkillID);
|
| | | mainModel.Skill_Index = mainModel.SkillIndex[Index] + 1;
|
| | | }
|
| | | WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
|
| | | } |
| | | private void OnClickOpenNowBtn()
|
| | | {
|
| | | int Gold = (int)UIHelper.GetMoneyCnt(1);//仙玉
|
| | | if (mainModel.TaskId_Skill.Contains(mainModel.TaskSkillID))
|
| | | {
|
| | | int Index = mainModel.TaskId_Skill.IndexOf(mainModel.TaskSkillID);
|
| | | 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(mainModel.TaskSkillID);
|
| | | WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
|
| | | }
|
| | | else
|
| | | {
|
| | | if (VersionConfig.Get().isBanShu)
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("GoldErr");
|
| | | return;
|
| | | }
|
| | | WindowCenter.Instance.Open<RechargeTipWin>();
|
| | | }
|
| | | }
|
| | | });
|
| | | }
|
| | | } |
| | | private void OnClickGoToBtn()
|
| | | {
|
| | |
|
| | | m_Text_Condition_1.ExcuteHref();
|
| | |
|
| | | // Close();
|
| | | } |
| | | #endregion |
| | | |
| | |
|
| | | } |
| | | |
| | | } |
| | |
| | | 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_]+)}";
|
| | |
| | | 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;
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | public int ForRingNumber()//获取赏金环数
|
| | | public int ForRingNumber()//获取赏金环数
|
| | | {
|
| | | if (taskmodel.ReplaceDic.ContainsKey(1))
|
| | | {
|
| | |
| | | }
|
| | | 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);
|
| | | if (WindowCenter.Instance.CheckOpen<SkillPanel>())
|
| | | {
|
| | | return;
|
| | | }
|
| | | WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
|
| | | }
|
| | | else
|
| | | {
|
| | | if (VersionConfig.Get().isBanShu)
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("GoldErr");
|
| | | return;
|
| | | }
|
| | | WindowCenter.Instance.Open<RechargeTipWin>();
|
| | | }
|
| | | }
|
| | | });
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | PlayerTaskDatas.Event_TaskToDelete += OnTaskToDelete;//任务的删除
|
| | | PlayerTaskDatas.Event_TaskInformation += TaskInformation;//任务字典信息
|
| | | PlayerTaskDatas.MainCardLevelChange += MainCardLevelChange;//卡级任务修改
|
| | | PlayerTaskDatas.CardLevelChange += CardLevelChangeEvent;//卡级任务状态改变
|
| | | model.collectingTreasureChangeEvent += OnCollectingTreasureChangeEvent;
|
| | | FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
|
| | | TreasureNewGotWin.CloseTreasureNewGotWinEvent += CloseTreasureNewGotWinEvent;
|
| | |
| | | FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
|
| | | TreasureNewGotWin.CloseTreasureNewGotWinEvent -= CloseTreasureNewGotWinEvent;
|
| | | PlayerTaskDatas.MainCardLevelChange -= MainCardLevelChange;//卡级任务修改
|
| | | PlayerTaskDatas.CardLevelChange -= CardLevelChangeEvent;//卡级任务状态改变
|
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;//数据的刷新(h0418)
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | private void CardLevelChangeEvent(int taskID)
|
| | | {
|
| | | if (taskmodel.allMissionDict.ContainsKey(taskID) && taskmodel.allMissionDict[taskID].Type == 3)
|
| | | {
|
| | | TaskScheduling();
|
| | | TheTaskToGenerate();
|
| | | TaskJump(taskID);
|
| | | }
|
| | | }
|
| | | private void MainCardLevelChange(int _id)
|
| | | {
|
| | | TaskScheduling();
|
| | |
| | | foreach (var key in taskmodel.MainTaskDic.Keys)
|
| | | {
|
| | | var State = taskmodel.GetTaskStatus(key);
|
| | | if (State == PlayerTaskDatas.TaskStatus.CardLevel)
|
| | | if (State == PlayerTaskDatas.TaskStatus.TreasureCardLevel)
|
| | | {
|
| | | IsDefault = false;
|
| | | }
|
| | |
| | | {
|
| | | return _index0.CompareTo(_index1);
|
| | | }
|
| | | if (xPack.LV.CompareTo(yPack.LV) != 0)
|
| | | {
|
| | | return -xPack.LV.CompareTo(yPack.LV);
|
| | | }
|
| | | return 1;
|
| | | }
|
| | |
|
| | |
| | | {
|
| | | return _index0.CompareTo(_index1);
|
| | | }
|
| | | if (xPack.LV.CompareTo(yPack.LV) != 0)
|
| | | {
|
| | | return -xPack.LV.CompareTo(yPack.LV);
|
| | | }
|
| | | |
| | | return 1;
|
| | | }
|
| | |
|
| | |
| | | {
|
| | | OperationFlashSale operation = operationBase as OperationFlashSale;
|
| | | m_OpreationTime.text = StringUtility.Contact(Language.Get("ExpActivity_Text1"), operation.ToDisplayTime());
|
| | | m_RefreshGiftTime.gameObject.SetActive(operation.allDay);
|
| | | m_RefreshGiftTime.gameObject.SetActive(operation.allDay && operation.dayReset);
|
| | | OperationFlashSale.FlashSale flashSale;
|
| | | if (operation.TryGetFlashSale(TimeUtility.ServerNow, out flashSale))
|
| | | {
|
| | |
| | | public bool jumpToPass { get; set; }
|
| | | public int minTaskHole { get; private set; }
|
| | | public int maxTaskHole { get; private set; }
|
| | | public int immediatelyUnlockTask { get; private set; }
|
| | | void ParseConfig()
|
| | | {
|
| | | for (int i = 1; i <= 3; i++)
|
| | |
| | | passEquipCnt = int.Parse(funcCfg.Numerical2);
|
| | | taskHoleDict = ConfigParse.GetDic<int, int>(funcCfg.Numerical4);
|
| | | }
|
| | | funcCfg = Config.Instance.Get<FuncConfigConfig>("PassiveSkillTask");
|
| | | immediatelyUnlockTask = 0;//int.Parse(funcCfg.Numerical2);
|
| | | funcCfg = Config.Instance.Get<FuncConfigConfig>("PassSkillEquipGetWay");
|
| | | if (funcCfg != null)
|
| | | {
|
| | |
| | | }
|
| | |
|
| | | PlayerTaskDatas task { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } }
|
| | |
|
| | | PlayerMainDate mainData { get { return ModelCenter.Instance.GetModel<PlayerMainDate>(); } }
|
| | | public void SendEquipPassSkill(int _page, int _index, int _skillId)
|
| | | {
|
| | | var pak = new CB407_tagCMPassiveSet();
|
| | |
| | | foreach (var hole in taskHoleDict.Keys)
|
| | | {
|
| | | var taskId = taskHoleDict[hole];
|
| | | if (taskId == immediatelyUnlockTask)
|
| | | if (IsImmediatelyUnlock(hole))
|
| | | {
|
| | | var config = Config.Instance.Get<PyTaskConfig>(taskId);
|
| | | if (PlayerDatas.Instance.baseData.LV >= config.lv
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | public bool IsImmediatelyUnlock(int hole)
|
| | | {
|
| | | if (taskHoleDict.ContainsKey(hole))
|
| | | {
|
| | | var taskId = taskHoleDict[hole];
|
| | | return mainData.TaskId_Skill.Contains(taskId);
|
| | | }
|
| | | return false;
|
| | | }
|
| | |
|
| | | public void SetTaskHoleRemind()
|
| | | {
|
| | | DayRemind.Instance.SetDayRemind(DayRemind.TASK_SKILL_HOLE, true);
|
| | |
| | | [SerializeField, Header("特效时长")] float m_EffectDuration = 1f;
|
| | | private List<SkillConfig> skillListPass = new List<SkillConfig>();
|
| | | private int presentSltEquipIndex = -1;
|
| | |
|
| | | Coroutine cacheCoroutine = null;
|
| | | SkillModel m_Model;
|
| | | SkillModel model
|
| | |
| | | base.OnActived();
|
| | | UpdatePageBtn();
|
| | |
|
| | | if (model.taskHoleRedpoint.state == RedPointState.Simple)
|
| | | if (taskMain.Skill_Index != 0)
|
| | | {
|
| | | var hole = taskMain.Skill_Index - 1;
|
| | | if (!model.IsPassSkillHoleOpen(hole))
|
| | | {
|
| | | OnClickEquipHole(hole, false);
|
| | | }
|
| | | }
|
| | | else if (model.taskHoleRedpoint.state == RedPointState.Simple)
|
| | | {
|
| | | model.SetTaskHoleRemind();
|
| | | for (int i = 0; i < equipPassSkills.Count; i++)
|
| | |
| | | PassSkillLimit limit;
|
| | | if (model.TryGetPassSkillLimit(i, out limit))
|
| | | {
|
| | | if (limit.OpenSkillSlots > 0
|
| | | && model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask)
|
| | | if (limit.OpenSkillSlots > 0 && model.IsImmediatelyUnlock(i))
|
| | | {
|
| | | OnClickEquipHole(i, false);
|
| | | return;
|
| | |
| | | model.taskUnlockUpdate -= TaskUnlockUpdate;
|
| | | model.SetDayRemind();
|
| | | model.UnlockPassHole = 0;
|
| | | taskMain.Skill_Index = 0;
|
| | | }
|
| | |
|
| | | protected override void OnAfterClose()
|
| | |
| | | var taskId = model.taskHoleDict[_limit.OpenSkillSlots];
|
| | | var config = Config.Instance.Get<PyTaskConfig>(taskId);
|
| | | if (PlayerDatas.Instance.baseData.LV >= config.lv
|
| | | && taskId == model.immediatelyUnlockTask)
|
| | | && model.IsImmediatelyUnlock(_index))
|
| | | {
|
| | | return 2;
|
| | | }
|
| | |
| | | UIHelper.ReplaceNewLine(Language.Get(StringUtility.Contact("PassSkillHoleLimitTask_", limit.OpenSkillSlots)));
|
| | | continue;
|
| | | }
|
| | | else if (model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask
|
| | | else if (model.IsImmediatelyUnlock(i)
|
| | | && model.IsTaskHoleUnlock(limit.OpenSkillSlots))
|
| | | {
|
| | | if (m_ImmediatelyUnlock.gameObject.activeSelf)
|
| | |
| | | m_GetWayBtn.gameObject.SetActive(false);
|
| | | return;
|
| | | }
|
| | | if (taskId == model.immediatelyUnlockTask)
|
| | | if (model.IsImmediatelyUnlock(index))
|
| | | {
|
| | | m_ImmediatelyUnlock.gameObject.SetActive(true);
|
| | | }
|
| | |
| | |
|
| | | void ImmediatelyUnlock()
|
| | | {
|
| | | //var count = pack.GetItemCountByID(PackType.rptItem, taskMain.ItemID);
|
| | | //if (count >= taskMain.ItemNumber)
|
| | | //{
|
| | | // task.CompletionOfTask(model.immediatelyUnlockTask);
|
| | | //}
|
| | | //else
|
| | | //{
|
| | | // var requireJade = (ulong)((taskMain.ItemNumber - count) * taskMain.UnitPrice);
|
| | | // ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("PassiveSkillTask3", requireJade), |
| | | // (bool isOk) =>
|
| | | // {
|
| | | // if (isOk)
|
| | | // {
|
| | | // if (UIHelper.GetMoneyCnt(1) >= requireJade)
|
| | | // {
|
| | | // task.CompletionOfTask(model.immediatelyUnlockTask);
|
| | | // }
|
| | | // else
|
| | | // {
|
| | | // if (VersionConfig.Get().isBanShu)
|
| | | // {
|
| | | // SysNotifyMgr.Instance.ShowTip("GoldErr");
|
| | | // return;
|
| | | // }
|
| | | // WindowCenter.Instance.Open<RechargeTipWin>();
|
| | | // }
|
| | | // }
|
| | | // });
|
| | | //}
|
| | | if (model.taskHoleDict.ContainsKey(presentSltEquipIndex))
|
| | | {
|
| | | var taskId = model.taskHoleDict[presentSltEquipIndex];
|
| | | TaskAllocation.Instance.SkillTask(taskId);
|
| | | }
|
| | | }
|
| | |
|
| | | private void OnClickFunc(CellView cell)
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true);
|
| | | if (equipPassSkills[_index].skillData.skillId != 0)
|
| | | {
|
| | | equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true);
|
| | | model.presentSltSkillID = equipPassSkills[_index].skillData.skillId;
|
| | | flipScroll.RefreshActive();
|
| | | OnUpdateSltSkillInfo();
|
| | | }
|
| | | else
|
| | | {
|
| | | equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false);
|
| | | }
|
| | | //else
|
| | | //{
|
| | | // equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false);
|
| | | //}
|
| | | }
|
| | |
|
| | | private int GetEquipHoleIndex(int _skillId)
|
| | |
| | | private void OnClickStrengthBtn()
|
| | | {
|
| | | Dictionary<int, int> DicAb = godBeastModel.Absorption_Dic;
|
| | | List<int> List = new List<int>();
|
| | | List<int> ListIndex = new List<int>();
|
| | | List<int> ListCount = new List<int>();
|
| | | foreach (var key in DicAb.Keys)
|
| | | {
|
| | | List.Add(key);
|
| | | ListIndex.Add(key);
|
| | | ListCount.Add(DicAb[key]);
|
| | | }
|
| | | if (m_DoubleToggle.isOn)
|
| | | {
|
| | | dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, List,1);
|
| | | dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, ListIndex, ListCount, 1);
|
| | | }
|
| | | else
|
| | | {
|
| | | dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, List, 0);
|
| | | dogz_model.SendDogzEquipStrength(m_DogZItemModel.itemInfo.ItemPlace, ListIndex, ListCount, 0);
|
| | | }
|
| | | }
|
| | | private void ChooseToModify(int locationMarker)
|
| | |
| | | m_Item_Text.color = UIHelper.GetUIColor(itemConfig.ItemColor);
|
| | | if (IudetDogzEquipPlus != null && IudetDogzEquipPlus[0] > 0)
|
| | | {
|
| | | m_Item_Text.text = itemConfig.ItemName+" +"+ IudetDogzEquipPlus[0];
|
| | | string str= itemConfig.ItemName + " +" + IudetDogzEquipPlus[0];
|
| | | m_Item_Text.text = UIHelper.GetTextColorByItemColor(itemConfig.ItemColor, str, true);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_Item_Text.text = itemConfig.ItemName;
|
| | | string str = itemConfig.ItemName;
|
| | | m_Item_Text.text = UIHelper.GetTextColorByItemColor(itemConfig.ItemColor, str, true);
|
| | | }
|
| | | if (locationMarker == currentlySelected)
|
| | | {
|
| | |
| | | bool serverInited = false;
|
| | | FriendsModel friendsModel { get { return ModelCenter.Instance.GetModel<FriendsModel>(); } }
|
| | | DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
|
| | | FairyModel fairyModel { get { return ModelCenter.Instance.GetModel<FairyModel>(); } }
|
| | |
|
| | | public bool autoAcceptApplication {
|
| | | get { return (PlayerDatas.Instance.baseData.ExAttr2 / 10) % 10 == 0; }
|
| | |
| | | levelMaxBuf = GeneralConfig.Instance.playerMaxLevel;
|
| | | ParseTeamMission();
|
| | | DTCB309_tagGCAnswerPlayerShortInfo.OnPlayerShortInfoEvent += OnGetPlayerShortInfo;
|
| | | PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += OnUpdateFairyInfo;
|
| | | }
|
| | |
|
| | | public override void UnInit()
|
| | | {
|
| | | PlayerDatas.Instance.fairyData.OnRefreshFairyInfo -= OnUpdateFairyInfo;
|
| | | DTCB309_tagGCAnswerPlayerShortInfo.OnPlayerShortInfoEvent -= OnGetPlayerShortInfo;
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | break;
|
| | | case TeamInviteType.Fairy:
|
| | | GetFairyMemebers();
|
| | | if (teamInvitesUpdateEvent != null)
|
| | | {
|
| | | teamInvitesUpdateEvent(_inviteType);
|
| | | }
|
| | | fairyModel.UpdateFairyInfo();
|
| | | break;
|
| | | case TeamInviteType.NearBy:
|
| | | RequestQueryNearbyPlayers();
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | private void OnUpdateFairyInfo()
|
| | | {
|
| | | if (currentInviteType == TeamInviteType.Fairy)
|
| | | {
|
| | | GetFairyMemebers();
|
| | | if (teamInvitesUpdateEvent != null)
|
| | | {
|
| | | teamInvitesUpdateEvent(TeamInviteType.Fairy);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public void OnGetPlayerShortInfo(HB309_tagGCAnswerPlayerShortInfo _inTeamInfo)
|
| | | {
|
| | | if (playerInTeamAnswerEvent != null)
|
| | |
| | |
|
| | | if (!isMax)
|
| | | {
|
| | | AutoSelectPotentialBook();
|
| | | DisplayUpgradeCost();
|
| | | DisplayGetSkill();
|
| | | DisplaySuccessRatio();
|
| | |
| | | var isMax = level >= config.SkillMaxLV;
|
| | | if (!isMax)
|
| | | {
|
| | | DisplayPotentialBook(0);
|
| | | AutoSelectPotentialBook();
|
| | | DisplayPotentialBook(model.selectedPotentialBook);
|
| | | }
|
| | |
|
| | | model.onPotentialLevelUpResultEvent -= OnPotentialLevelUp;
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | void AutoSelectPotentialBook()
|
| | | {
|
| | | var potential = m_Treasure.GetPotential(model.selectedPotential);
|
| | | if (potential == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | var levelUpType = model.GetSkillLevelUpType(potential.id);
|
| | | var levelupId = TreasureModel.GetSkillLevelUpId(levelUpType, potential.level + 1);
|
| | | var config = Config.Instance.Get<TreasureSkillConfig>(levelupId);
|
| | | if (config == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | var itemId = config.Meterial2ID.Length > 0 ? config.Meterial2ID[0] : 0;
|
| | | if (itemId != 0)
|
| | | {
|
| | | var own = playerPack.GetItemCountByID(PackType.rptItem, itemId);
|
| | | var need = config.MeterialNum2[0];
|
| | | var rate = config.Rate[0];
|
| | | if (rate >= 60 && own >= need)
|
| | | {
|
| | | model.selectedPotentialBook = itemId;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | private void DisplayUpgradeCost()
|
| | | {
|
| | | var potential = m_Treasure.GetPotential(selectedPotential);
|
| | |
| | |
|
| | | int Compare(int x, int y)
|
| | | {
|
| | | TreasureSpecialData special_x;
|
| | | TreasureSpecialData special_y;
|
| | | if (model.TryGetTreasureSoul(x, out special_x) && model.TryGetTreasureSoul(y, out special_y))
|
| | | var leftConfig = Config.Instance.Get<TreasurePrivilegeConfig>(x);
|
| | | var rightConfig = Config.Instance.Get<TreasurePrivilegeConfig>(y);
|
| | | if (leftConfig != null && rightConfig != null)
|
| | | {
|
| | | return special_x.treasureId.CompareTo(special_y.treasureId);
|
| | | return leftConfig.sort.CompareTo(rightConfig.sort);
|
| | | }
|
| | | return x.CompareTo(y);
|
| | | }
|
| | |
| | | {
|
| | | if (OperationTimeHepler.Instance.SatisfyAdvanceCondition(Operation.GiftPackage))
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("LimitGilt1");
|
| | | var seconds = 0;
|
| | | if (operationBase != null)
|
| | | {
|
| | | if (operationBase.InAdvanceTime(TimeUtility.ServerNow))
|
| | | {
|
| | | seconds = operationBase.GetSecondsBeforeStart(TimeUtility.ServerNow);
|
| | | }
|
| | | }
|
| | | SysNotifyMgr.Instance.ShowTip("LimitGilt1", TimeUtility.SecondsToDHMSCHS(seconds));
|
| | | return;
|
| | | }
|
| | | else
|
| | |
| | | private void VipInvestRedPoint()//Vip 投资红点
|
| | | {
|
| | | JumpIndex = 0;
|
| | | redPointStre1.state = RedPointState.None;
|
| | | InvestInfo = GetInvestInfoByType((int)InvestType.Vip);
|
| | | cycle = GetInvestCycle(InvestInfo.curDay);
|
| | | if (InvestInfo.investGold <= 0)
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | m_RemainingDays.text = string.Format(Language.Get("TheRemainingNumberDays_Z"), UIHelper.GetTextColorByItemColor(TextColType.Green, (7 - InvestInfo.curDay).ToString(), true));
|
| | | int Day = 0;
|
| | | if (7 - InvestInfo.curDay > 0)
|
| | | {
|
| | | Day = 7 - InvestInfo.curDay;
|
| | | }
|
| | | m_RemainingDays.text = string.Format(Language.Get("TheRemainingNumberDays_Z"), UIHelper.GetTextColorByItemColor(TextColType.Green, Day.ToString(), true));
|
| | | }
|
| | |
|
| | | if (InvestInfo.investGold <= 0)
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | m_RemainingDays.text = string.Format(Language.Get("TheRemainingNumberDays_Z"), UIHelper.GetTextColorByItemColor(TextColType.Green, (7 - InvestInfo.curDay).ToString(), true));
|
| | | int Day = 0;
|
| | | if (7 - InvestInfo.curDay > 0)
|
| | | {
|
| | | Day = 7 - InvestInfo.curDay;
|
| | | }
|
| | | m_RemainingDays.text = string.Format(Language.Get("TheRemainingNumberDays_Z"), UIHelper.GetTextColorByItemColor(TextColType.Green, Day.ToString(), true));
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
|
| | | TrialDungeonModel trialDungeonModel { get { return ModelCenter.Instance.GetModel<TrialDungeonModel>(); } }
|
| | | ImpactRankModel rankModel { get { return ModelCenter.Instance.GetModel<ImpactRankModel>(); } }
|
| | | ComposeWinModel composeModel { get { return ModelCenter.Instance.GetModel<ComposeWinModel>(); } }
|
| | |
|
| | | public bool IsJumpState { get; private set; }
|
| | | private int jumpPhase = 0;
|
| | |
| | | break;
|
| | | case JumpUIType.OpenServerGift:
|
| | | return;
|
| | | case JumpUIType.EquipCompose1:
|
| | | case JumpUIType.EquipCompose2:
|
| | | case JumpUIType.EquipCompose3:
|
| | | case JumpUIType.EquipCompose4:
|
| | | case JumpUIType.ComposeTicketFairy:
|
| | | case JumpUIType.ComposeTicketGod:
|
| | | case JumpUIType.ComposeTicketIce:
|
| | | int[] types = ConfigParse.GetMultipleStr<int>(_tagWinSearchModel.SelectActive);
|
| | | if (types.Length > 0)
|
| | | {
|
| | | if (!composeModel.CheckIsComposeByType(_tagWinSearchModel.TABID+1,types[0],types[1]))
|
| | | {
|
| | | return;
|
| | | }
|
| | | }
|
| | | break;
|
| | | }
|
| | |
|
| | | DebugEx.Log("WindowJumpTo" + jumpType);
|
| | |
| | | case JumpUIType.StrengthFunc3:
|
| | | case JumpUIType.StrengthFunc4:
|
| | | case JumpUIType.StrengthFunc5:
|
| | | case JumpUIType.EquipWashType2:
|
| | | case JumpUIType.StrengthFunc1Type2:
|
| | | case JumpUIType.EquipSuitType2:
|
| | | SetJumpLogic<EquipReinforceWin>(_tagWinSearchModel.TABID);
|
| | | break;
|
| | | case JumpUIType.ComposeFunc1:
|
| | |
| | | case JumpUIType.TicketCompose1:
|
| | | case JumpUIType.TicketCompose2:
|
| | | SetJumpLogic<ComposeWin>(_tagWinSearchModel.TABID);
|
| | | break;
|
| | | case JumpUIType.EquipCompose1:
|
| | | case JumpUIType.EquipCompose2:
|
| | | case JumpUIType.EquipCompose3:
|
| | | case JumpUIType.EquipCompose4:
|
| | | int[] types = ConfigParse.GetMultipleStr<int>(_tagWinSearchModel.SelectActive);
|
| | | if(types.Length > 0)
|
| | | {
|
| | | composeModel.SetJumpToModel((ComposeFuncType)_tagWinSearchModel.TABID + 1,types[0],types[1]);
|
| | | SetJumpLogic<ComposeWin>(_tagWinSearchModel.TABID);
|
| | | }
|
| | | break;
|
| | | case JumpUIType.RuneFunc1:
|
| | | case JumpUIType.RuneFunc2:
|
| | |
| | | break;
|
| | | case JumpUIType.PetFunc1:
|
| | | case JumpUIType.PetFunc2:
|
| | | case JumpUIType.MountType2:
|
| | | case JumpUIType.FairyGrabBoss:
|
| | | SetJumpLogic<PetWin>(_tagWinSearchModel.TABID);
|
| | | break;
|
| | |
| | | case JumpUIType.ComposeTicketFairy:
|
| | | case JumpUIType.ComposeTicketGod:
|
| | | case JumpUIType.ComposeTicketIce:
|
| | | var composeModel = ModelCenter.Instance.GetModel<ComposeWinModel>();
|
| | | int[] composeTypelist = ConfigParse.GetMultipleStr<int>(_tagWinSearchModel.SelectActive);
|
| | | composeModel.SetJumpToModel((ComposeFuncType)_tagWinSearchModel.TABID + 1, composeTypelist[0], composeTypelist[1]);
|
| | | SetJumpLogic<ComposeWin>(_tagWinSearchModel.TABID);
|
| | |
| | | StrengthFunc2 = 13,
|
| | | StrengthFunc3 = 14,
|
| | | StrengthFunc4 = 15,
|
| | | EquipSuitType2 = 241, //套装界面
|
| | | StrengthFunc5 = 16,
|
| | | EquipWashType2 = 239, //装备洗练界面
|
| | | ComposeFunc1 = 17,
|
| | | ComposeFunc2 = 18,
|
| | | ComposeFunc3 = 19,
|
| | |
| | | UnionFunc5 = 31,
|
| | | PetFunc1 = 32,
|
| | | PetFunc2 = 33,
|
| | | MountType2 = 240,//坐骑界面
|
| | | PetStone = 34,
|
| | | Treasure = 35,
|
| | | WorldChat = 38,
|
| | |
| | | Kylin5= 232,//麒麟之府的5层
|
| | | Kylin6 = 233,//麒麟之府的6层
|
| | | PrayforDrug = 234, //炼丹祈福(太上老君的馈赠)
|
| | | EquipCompose1 = 235, //装备合成-龙魂红二
|
| | | EquipCompose2 = 236, //装备合成-龙魂红三
|
| | | EquipCompose3 = 237, //装备合成-灵瑶红二
|
| | | EquipCompose4 = 238, //装备合成-灵瑶红三
|
| | | DhszTs = 1001,//定海神针功法提升界面
|
| | | HyqTs = 1002,//皓月枪功法提升界面
|
| | | GyzTs = 1003,//鬼牙刃功法提升界面
|
| | |
| | | BasicsScoreAHit = 181,//基础命中
|
| | | BasicsDodge = 182,//基础闪避
|
| | | OnlyFinalHurt = 183,// 额外伤害附加
|
| | | CDBPlayerRefresh_ForbidenTalk = 184,//禁言
|
| | | CDBPlayerRefresh_FuncDef = 185, // 功能层防御 185
|
| | | CDBPlayerRefresh_TreasureScore = 186, //寻宝商店积分
|
| | | CDBPlayerRefresh_Danjing = 187, // 丹精 187
|
| | |
| | | { |
| | | static Font m_Preferred; |
| | | public static Font preferred {
|
| | | get { return m_Preferred ?? (m_Preferred = Resources.Load<Font>("Font/方正准圆简体")); }
|
| | | get { return m_Preferred ?? (m_Preferred = UILoader.LoadFont("方正准圆简体")); }
|
| | | } |
| | | |
| | | static Font m_Secondary; |
| | |
| | | public void VerifyChat(string content, ChatInfoType channelType, Action<bool, string> callback)
|
| | | {
|
| | | int channel = 0;
|
| | | var chatCenter = ModelCenter.Instance.GetModel<ChatCenter>();
|
| | | if (!requireVerify || !GetChannel(channelType, out channel) || PlayerDatas.Instance.baseData.VIPLv >= 4
|
| | | || IsFairyFeast(channelType))
|
| | | || IsFairyFeast(channelType) || chatCenter.IsChatBanned)
|
| | | {
|
| | | if (callback != null)
|
| | | {
|
| | |
| | | public static readonly Color32 s_BrightRedColor = new Color32(255, 3, 3, 255);
|
| | | public static readonly Color32 s_BrightPurpleColor = new Color32(218, 72, 213, 255);
|
| | | public static readonly Color32 s_BrightBlueColor = new Color32(0, 107, 227, 255);
|
| | | public static readonly Color32 s_BrightOrangeColor = new Color32(255, 103, 1, 255);
|
| | | public static readonly Color32 s_BrightWhiteColor = new Color32(104, 104, 104, 255);
|
| | | public static readonly Color32 s_BrightOrangeColor = new Color32(255, 103, 1, 255); //FF6701FF
|
| | | public static readonly Color32 s_BrightWhiteColor = new Color32(104, 104, 104, 255); //686868
|
| | | public static readonly Color32 s_BrightGreenColor = new Color32(16, 157, 6, 255);
|
| | |
|
| | | public static readonly Color32 s_DarkPinkColor = new Color32(255, 124, 124, 255);
|