少年修仙传客户端代码仓库
client_Wu Xijin
2018-09-07 ff5a952767a0c98fff6cf53733df93db5aa80b2f
Merge branch 'master' into 3243Activity
7个文件已修改
4个文件已添加
348 ■■■■ 已修改文件
Core/ResModule/InstanceResourcesLoader.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCenter.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/CrystalSelectionWin.cs 131 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/CrystalSelectionWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GodBeastAttributes.cs 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GodBeastChildNodes.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GodBeastModel.cs 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GodBeastModel.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GodBeastSlidingList.cs 114 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowBase/ModelCenter.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/EnumHelper.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/ResModule/InstanceResourcesLoader.cs
@@ -11,6 +11,7 @@
    public static readonly string horseSuffix = "Prefab_Horse_";
    public static readonly string weaponSuffix = "Prefab_Weapon_";
    public static readonly string secondarySuffix = "Prefab_Secondary_";
    public static readonly string handSuffix = "Prefab_Hand_";
    public static readonly string wingSuffix = "Prefab_Wing_";
    public static GameObject LoadNpc(int id)
System/Chat/ChatCenter.cs
@@ -766,8 +766,8 @@
        #endregion
        #region 境界渡劫私聊感谢
        private string[] realmThankChats = new string[7] {"ThankMessage1", "ThankMessage2", "ThankMessage3", "ThankMessage4",
                          "ThankMessage5","ThankMessage6","ThankMessage7"};
        const string RealmThank = "ThankMessage";
        const int RealmThankCount = 11;
        public void CheckSendRealmThanks()
        {
            try
@@ -804,7 +804,7 @@
                            ChatCtrl.Inst.PteChatID = (int)teammate.id;
                            ChatCtrl.Inst.PteChatName = teammate.mateName;
                            LanguageVerify.toPlayerLevel = teammate.level;
                            var content = realmThankChats[UnityEngine.Random.Range(0, 7)];
                            var content = StringUtility.Contact(RealmThank, UnityEngine.Random.Range(1, RealmThankCount + 1));
                            ChatCtrl.Inst.SendChatInfo(ChatInfoType.Friend, Language.Get(content));
                        }
                    }
System/Strengthening/CrystalSelectionWin.cs
New file
@@ -0,0 +1,131 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Friday, September 07, 2018
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
//神兽水晶强化选择面板
namespace Snxxz.UI
{
    public class CrystalSelectionWin : Window
    {
        [SerializeField] Text m_TextDisplay;
        [SerializeField] Text m_NumberText;
        [SerializeField] Slider m_Slider;
        [SerializeField] Button m_AddBtn;
        [SerializeField] Button m_ReduceBtn;
        [SerializeField] Button m_DetermineBtn;
        [SerializeField] Button m_CancelBtn;
        [SerializeField] Button m_CloseBtn;
        #region Built-in
        PlayerPackModel _playerPack;
        PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); } }
        GodBeastModel godBeastModel { get { return ModelCenter.Instance.GetModel<GodBeastModel>(); } }
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_Slider.onValueChanged.AddListener(OnClickSlider);
            m_AddBtn.AddListener(OnClickAddBtn);
            m_ReduceBtn.AddListener(OnClickReduceBtn);
            m_DetermineBtn.AddListener(OnClickDetermineBtn);
            m_CancelBtn.AddListener(OnClickCancelBtn);
            m_CloseBtn.AddListener(OnClickCloseBtn);
        }
        protected override void OnPreOpen()
        {
            m_TextDisplay.text = "你拥有" + godBeastModel.Crystal_ItemModel.itemInfo.ItemCount + "个强化水晶";
            m_Slider.minValue = 0;
            m_Slider.maxValue = godBeastModel.Crystal_ItemModel.itemInfo.ItemCount;
            if (godBeastModel.Absorption_Dic.ContainsKey(godBeastModel.ItemInde))
            {
                m_Slider.value = godBeastModel.Absorption_Dic[godBeastModel.ItemInde];
            }
            else
            {
                m_Slider.value = 0;
            }
            m_NumberText.text = m_Slider.value.ToString();
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            godBeastModel.Crystal_ItemModel = null;
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void OnClickAddBtn()
        {
            if (m_Slider.value < godBeastModel.Crystal_ItemModel.itemInfo.ItemCount)
            {
                m_Slider.value += 1;
                m_NumberText.text = m_Slider.value.ToString();
            }
        }
        private void OnClickReduceBtn()
        {
            if (m_Slider.value > 0)
            {
                m_Slider.value -= 1;
                m_NumberText.text = m_Slider.value.ToString();
            }
        }
        private void OnClickDetermineBtn()
        {
            if (godBeastModel.Absorption_Dic.ContainsKey(godBeastModel.ItemInde))
            {
                if ((int)m_Slider.value <= 0)
                {
                    godBeastModel.Absorption_Dic.Remove(godBeastModel.ItemInde);
                }
                else
                {
                    godBeastModel.Absorption_Dic[godBeastModel.ItemInde] = (int)m_Slider.value;
                }
            }
            else
            {
                if ((int)m_Slider.value > 0)
                {
                    godBeastModel.Absorption_Dic.Add(godBeastModel.ItemInde, (int)m_Slider.value);
                }
            }
            godBeastModel.AbsorbEventUpdate();
            Close();
        }
        private void OnClickCancelBtn()
        {
            Close();
        }
        private void OnClickCloseBtn()
        {
            Close();
        }
        private void OnClickSlider(float value)
        {
            m_NumberText.text = m_Slider.value.ToString();
        }
    }
}
System/Strengthening/CrystalSelectionWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: b5c8f493c264549439f9e6ac3c02c720
timeCreated: 1536287163
licenseType: Free
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Strengthening/GodBeastAttributes.cs
@@ -42,6 +42,7 @@
        PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); } }
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>()); } }
        GodBeastModel godBeastModel { get { return ModelCenter.Instance.GetModel<GodBeastModel>(); } }
        private int GodBeastNumber = 0;//神兽编号
        private int GodBeastPart = 0;//神兽装备ID
@@ -64,12 +65,12 @@
                m_DoubleToggle.isOn = false;
            }
            GodBeastReinforcementWin.ChooseToModify += ChooseToModify;
            GodBeastSlidingList.AbsorbEvent += AbsorbEvent;
            godBeastModel.AbsorbEvent += AbsorbEvent;
        }
        private void OnDisable()
        {
            GodBeastReinforcementWin.ChooseToModify -= ChooseToModify;
            GodBeastSlidingList.AbsorbEvent -= AbsorbEvent;
            godBeastModel.AbsorbEvent -= AbsorbEvent;
        }
        public void Init()
@@ -92,7 +93,7 @@
        }
        private void OnClickStrengthBtn()
        {
            Dictionary<int, int> DicAb = m_GodBeastSlidingList.Absorption_Dic;
            Dictionary<int, int> DicAb = godBeastModel.Absorption_Dic;
            List<int> List = new List<int>();
            foreach (var key in DicAb.Keys)
            {
@@ -111,7 +112,7 @@
        {
            GetGodBeastLocationMarker(locationMarker);
        }
        private void AbsorbEvent(Dictionary<int, int> absorb)
        private void AbsorbEvent()//选中取消的数据刷新
        {
            GetDogZLevelAndExp();
            AttributeAssignment();
@@ -212,7 +213,7 @@
            SingleProficiency = 0;
            DoubleProficiency = 0;
            NeedFairyJade = 0;
            Dictionary<int, int> DicAb = m_GodBeastSlidingList.Absorption_Dic;
            Dictionary<int, int> DicAb = godBeastModel.Absorption_Dic;
            foreach (var key in DicAb.Keys)
            {
                ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptDogzItem, key);
System/Strengthening/GodBeastChildNodes.cs
@@ -13,6 +13,8 @@
        [SerializeField] GameObject m_ChoosenImg;
        [SerializeField] Text m_TextNumber;
        [SerializeField] Button m_Button;
        [SerializeField] Text m_NumberAll;//总水晶量
        [SerializeField] Text m_NumberNow;//选中水晶量
        PlayerPackModel _playerPack;
        PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); } }
        public Button ButtonDown
@@ -34,8 +36,12 @@
        {
            get { return m_TextNumber; }
            set { m_TextNumber = value; }
        }
        public Text NumberNow
        {
            get { return m_NumberNow; }
            set { m_NumberNow = value; }
        }
        public void  GetGodBeastIndex(int Index)
        {
            ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptDogzItem, Index);
System/Strengthening/GodBeastModel.cs
New file
@@ -0,0 +1,51 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Friday, September 07, 2018
//--------------------------------------------------------
using Snxxz.UI;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using TableConfig;
using UnityEngine;
// 关于神兽强化
public class GodBeastModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk
{
    public Dictionary<int, int> Absorption_Dic=new Dictionary<int, int>();//获取选择的物品
    public event Action AbsorbEvent;
    public int ItemInde=0;//物品下标
    public ItemModel Crystal_ItemModel;
    public override void Init()
    {
    }
    public void OnBeforePlayerDataInitialize()
    {
    }
    public void OnPlayerLoginOk()
    {
    }
    public override void UnInit()
    {
    }
    public void AbsorbEventUpdate()
    {
        if (AbsorbEvent != null)
        {
            AbsorbEvent();
        }
    }
}
System/Strengthening/GodBeastModel.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 8a6eecf082a263543b6ee588030145fc
timeCreated: 1536303201
licenseType: Free
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Strengthening/GodBeastSlidingList.cs
@@ -38,18 +38,13 @@
        [SerializeField] Toggle m_ToggleAll;
        public int LINE = 10;
        public Dictionary<int, int> Absorption_Dic
        {
            get { return AbsorptionDic; }
            set { AbsorptionDic = value; }
        }
        public static event Action<Dictionary<int, int>> AbsorbEvent;
        private List<GodBeastBagClass> GodBeastBagList = new List<GodBeastBagClass>();
        private List<int> DeleteIndexList = new List<int>();
        private Dictionary<int, int> AbsorptionDic = new Dictionary<int, int>();
        private int Quality = 10;
        PlayerPackModel _playerPack;
        PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); } }
        GodBeastModel godBeastModel { get { return ModelCenter.Instance.GetModel<GodBeastModel>(); } }
        private void Start()
        {
            m_Arrow.AddListener(OnClickArrow);
@@ -62,11 +57,8 @@
                }
                GetGodBeastBag();
                FilterQuality();
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
            });
            m_ButtonCrystal.AddListener(() =>
            {
@@ -77,11 +69,8 @@
                }
                GetGodBeastBag();
                FilterQuality();
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
            });
            m_ButtonBlue.AddListener(() =>
            {
@@ -92,11 +81,8 @@
                }
                GetGodBeastBag();
                FilterQuality();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
            });
            m_ButtonPurple.AddListener(() =>
            {
@@ -107,11 +93,8 @@
                }
                GetGodBeastBag();
                FilterQuality();
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
            });
            m_ButtonOrange.AddListener(() =>
            {
@@ -122,11 +105,8 @@
                }
                GetGodBeastBag();
                FilterQuality();
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
            });
            m_ToggleAll.onValueChanged.AddListener(OnClickToggle);
        }
@@ -134,13 +114,20 @@
        {
            playerPack.RefreshItemCountAct += RefreshItemCountAct;
            playerPack.ItemCntReduceAct += ItemCntReduceAct;
            godBeastModel.AbsorbEvent += AbsorbEvent;
        }
        private void OnDisable()
        {
            playerPack.RefreshItemCountAct -= RefreshItemCountAct;
            playerPack.ItemCntReduceAct -= ItemCntReduceAct;
        }
            godBeastModel.AbsorbEvent -= AbsorbEvent;
        }
        public void Init()
        {
            Quality = 10;
@@ -155,6 +142,7 @@
            }
            GetGodBeastBag();//获取神兽背包数据排序
            FilterQuality();//分类筛选
            godBeastModel.AbsorbEventUpdate();
            m_ScrollerController.OnRefreshCell += OnRefreshGridCell;
            OnCreateGridLineCell(m_ScrollerController);
@@ -174,11 +162,8 @@
                }
                GetGodBeastBag();
                FilterQuality();
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
            }
        }
@@ -192,12 +177,13 @@
                }
                GetGodBeastBag();
                FilterQuality();
                godBeastModel.AbsorbEventUpdate();
                m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                if (AbsorbEvent != null)
                {
                    AbsorbEvent(AbsorptionDic);
                }
            }
        }
        private void AbsorbEvent()
        {
            m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
        }
        private void GetGodBeastBag()//获取神兽背包数据排序
        {
@@ -274,7 +260,7 @@
        private void FilterQuality()//分类筛选
        {
            DeleteIndexList.Clear();
            AbsorptionDic.Clear();
            godBeastModel.Absorption_Dic.Clear();
            for (int i = 0; i < GodBeastBagList.Count; i++)
            {
                if (Quality <= 0)//只有水晶
@@ -306,7 +292,7 @@
            {
                for (int k = 0; k < GodBeastBagList.Count; k++)
                {
                    AbsorptionDic.Add(GodBeastBagList[k].Index, 1);
                    godBeastModel.Absorption_Dic.Add(GodBeastBagList[k].Index, 1);
                }
            }
        }
@@ -324,18 +310,15 @@
            }
            else
            {
                if (AbsorptionDic.Count != 0)
                if (godBeastModel.Absorption_Dic.Count != 0)
                {
                    AbsorptionDic.Clear();
                    godBeastModel.Absorption_Dic.Clear();
                }
            }
            GetGodBeastBag();
            FilterQuality();
            godBeastModel.AbsorbEventUpdate();
            m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
            if (AbsorbEvent != null)
            {
                AbsorbEvent(AbsorptionDic);
            }
        }
        private void OnClickSwith(int Type)
        {
@@ -390,6 +373,7 @@
                GodBeastChildNodes.ItemCell.gameObject.SetActive(false);
                GodBeastChildNodes.ChoosenImg.SetActive(false);
                GodBeastChildNodes.TextNumber.gameObject.SetActive(false);
                GodBeastChildNodes.NumberNow.gameObject.SetActive(false);
                int cellCount = (cell.transform.childCount) * gridlineIndex + (childCode + 1);
                GodBeastChildNodes.ButtonDown.RemoveAllListeners();
                if (cellCount - 1 < GodBeastBagList.Count)
@@ -397,26 +381,42 @@
                    int index = cellCount - 1;
                    GodBeastChildNodes.ItemCell.gameObject.SetActive(true);
                    GodBeastBagClass godBeastBagClass = GodBeastBagList[index];
                    if (AbsorptionDic.ContainsKey(godBeastBagClass.Index))
                    ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptDogzItem, godBeastBagClass.Index);
                    if (itemModel == null)
                    {
                        return;
                    }
                    if (godBeastModel.Absorption_Dic.ContainsKey(godBeastBagClass.Index))
                    {
                        GodBeastChildNodes.ChoosenImg.SetActive(true);
                        if (itemModel.EquipPlace <= 0)
                        {
                            GodBeastChildNodes.NumberNow.gameObject.SetActive(true);
                            GodBeastChildNodes.NumberNow.text = godBeastModel.Absorption_Dic[godBeastBagClass.Index].ToString();
                        }
                    }
                    GodBeastChildNodes.GetGodBeastIndex(godBeastBagClass.Index);
                    GodBeastChildNodes.ButtonDown.AddListener(() =>
                    {
                        if (AbsorptionDic.ContainsKey(godBeastBagClass.Index))
                    {
                        if (itemModel.EquipPlace > 0)//选中的物品为装备
                        {
                            AbsorptionDic.Remove(godBeastBagClass.Index);
                            if (godBeastModel.Absorption_Dic.ContainsKey(godBeastBagClass.Index))
                            {
                                godBeastModel.Absorption_Dic.Remove(godBeastBagClass.Index);
                            }
                            else
                            {
                                godBeastModel.Absorption_Dic.Add(godBeastBagClass.Index, 1);
                            }
                            m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                        }
                        else
                        else//选中的物品为水晶
                        {
                            AbsorptionDic.Add(godBeastBagClass.Index, 1);
                            godBeastModel.Crystal_ItemModel = itemModel;
                            godBeastModel.ItemInde = godBeastBagClass.Index;
                            WindowCenter.Instance.Open<CrystalSelectionWin>();
                        }
                        m_ScrollerController.m_Scorller.RefreshActiveCellViews();//刷新可见
                        if (AbsorbEvent != null)
                        {
                            AbsorbEvent(AbsorptionDic);
                        }
                        godBeastModel.AbsorbEventUpdate();
                    });
                }
            }
System/WindowBase/ModelCenter.cs
@@ -191,6 +191,7 @@
            RegisterModel<DogzModel>();
            RegisterModel<TreasureSoulModel>();
            RegisterModel<FairyGrabBossModel>();
            RegisterModel<GodBeastModel>();
            inited = true;
        }
Utility/EnumHelper.cs
@@ -1002,6 +1002,7 @@
    Suit, //套装 4
    Pet,// 宠物5
    Secondary,// 副手 6
    Hand,// 手臂
}
public enum TreasureCategory