From ff5a952767a0c98fff6cf53733df93db5aa80b2f Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期五, 07 九月 2018 19:27:33 +0800
Subject: [PATCH] Merge branch 'master' into 3243Activity
---
System/Strengthening/CrystalSelectionWin.cs | 131 +++++++++++++++++++++
System/Strengthening/GodBeastChildNodes.cs | 8 +
Utility/EnumHelper.cs | 1
System/Strengthening/GodBeastSlidingList.cs | 114 +++++++++---------
System/Strengthening/GodBeastModel.cs | 51 ++++++++
Core/ResModule/InstanceResourcesLoader.cs | 1
System/Chat/ChatCenter.cs | 6
System/Strengthening/GodBeastAttributes.cs | 11 +
System/Strengthening/GodBeastModel.cs.meta | 12 ++
System/WindowBase/ModelCenter.cs | 1
System/Strengthening/CrystalSelectionWin.cs.meta | 12 ++
11 files changed, 282 insertions(+), 66 deletions(-)
diff --git a/Core/ResModule/InstanceResourcesLoader.cs b/Core/ResModule/InstanceResourcesLoader.cs
index 371b385..bb7c623 100644
--- a/Core/ResModule/InstanceResourcesLoader.cs
+++ b/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)
diff --git a/System/Chat/ChatCenter.cs b/System/Chat/ChatCenter.cs
index ef94110..ac1ecd0 100644
--- a/System/Chat/ChatCenter.cs
+++ b/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));
}
}
diff --git a/System/Strengthening/CrystalSelectionWin.cs b/System/Strengthening/CrystalSelectionWin.cs
new file mode 100644
index 0000000..1429cb0
--- /dev/null
+++ b/System/Strengthening/CrystalSelectionWin.cs
@@ -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();
+ }
+ }
+
+}
+
+
+
+
diff --git a/System/Strengthening/CrystalSelectionWin.cs.meta b/System/Strengthening/CrystalSelectionWin.cs.meta
new file mode 100644
index 0000000..f0a82d7
--- /dev/null
+++ b/System/Strengthening/CrystalSelectionWin.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: b5c8f493c264549439f9e6ac3c02c720
+timeCreated: 1536287163
+licenseType: Free
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/Strengthening/GodBeastAttributes.cs b/System/Strengthening/GodBeastAttributes.cs
index 3069ff8..b575370 100644
--- a/System/Strengthening/GodBeastAttributes.cs
+++ b/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);
diff --git a/System/Strengthening/GodBeastChildNodes.cs b/System/Strengthening/GodBeastChildNodes.cs
index 037e6a8..a85169b 100644
--- a/System/Strengthening/GodBeastChildNodes.cs
+++ b/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);
diff --git a/System/Strengthening/GodBeastModel.cs b/System/Strengthening/GodBeastModel.cs
new file mode 100644
index 0000000..f3656b0
--- /dev/null
+++ b/System/Strengthening/GodBeastModel.cs
@@ -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();
+ }
+ }
+}
+
+
+
+
diff --git a/System/Strengthening/GodBeastModel.cs.meta b/System/Strengthening/GodBeastModel.cs.meta
new file mode 100644
index 0000000..cef08ca
--- /dev/null
+++ b/System/Strengthening/GodBeastModel.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 8a6eecf082a263543b6ee588030145fc
+timeCreated: 1536303201
+licenseType: Free
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/Strengthening/GodBeastSlidingList.cs b/System/Strengthening/GodBeastSlidingList.cs
index cd63258..8c66559 100644
--- a/System/Strengthening/GodBeastSlidingList.cs
+++ b/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();
});
}
}
diff --git a/System/WindowBase/ModelCenter.cs b/System/WindowBase/ModelCenter.cs
index c59e5b4..f9268e0 100644
--- a/System/WindowBase/ModelCenter.cs
+++ b/System/WindowBase/ModelCenter.cs
@@ -191,6 +191,7 @@
RegisterModel<DogzModel>();
RegisterModel<TreasureSoulModel>();
RegisterModel<FairyGrabBossModel>();
+ RegisterModel<GodBeastModel>();
inited = true;
}
diff --git a/Utility/EnumHelper.cs b/Utility/EnumHelper.cs
index cea4844..058bdae 100644
--- a/Utility/EnumHelper.cs
+++ b/Utility/EnumHelper.cs
@@ -1002,6 +1002,7 @@
Suit, //濂楄 4
Pet,// 瀹犵墿5
Secondary,// 鍓墜 6
+ Hand,// 鎵嬭噦
}
public enum TreasureCategory
--
Gitblit v1.8.0