| Core/ResModule/InstanceResourcesLoader.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Chat/ChatCenter.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/CrystalSelectionWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/CrystalSelectionWin.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/GodBeastAttributes.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/GodBeastChildNodes.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/GodBeastModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/GodBeastModel.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Strengthening/GodBeastSlidingList.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/WindowBase/ModelCenter.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Utility/EnumHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | 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