From 330a4605b97e5ef23142c4cbb7ae2859900a74c5 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期一, 13 八月 2018 17:28:03 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/Dungeon/DungeonSuppliesLackWin.cs |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/System/Dungeon/DungeonSuppliesLackWin.cs b/System/Dungeon/DungeonSuppliesLackWin.cs
index df054dc..e5000ca 100644
--- a/System/Dungeon/DungeonSuppliesLackWin.cs
+++ b/System/Dungeon/DungeonSuppliesLackWin.cs
@@ -23,11 +23,14 @@
         [SerializeField] TextEx m_TicketNeed;
         [SerializeField] Text m_LackContentTip;
         [SerializeField] Text m_LackMoneyTip;
+        [SerializeField] Text m_ConfirmLabel;
         [SerializeField] Button m_Confirm;
         [SerializeField] Button m_Close;
+        [SerializeField] Button m_TicketCompose;
 
         DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
         PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
+        ComposeWinModel composeModel { get { return ModelCenter.Instance.GetModel<ComposeWinModel>(); } }
 
         #region Built-in
         protected override void BindController()
@@ -38,6 +41,7 @@
         {
             m_Confirm.AddListener(Confirm);
             m_Close.AddListener(CloseClick);
+            m_TicketCompose.AddListener(TicketCompose);
         }
 
         protected override void OnPreOpen()
@@ -50,9 +54,11 @@
             m_TicketOwn.text = own.ToString();
             m_TicketNeed.text = StringUtility.Contact("/", lackItem.count);
             m_TicketOwn.colorType = own >= lackItem.count ? TextColType.White : TextColType.Red;
+            m_TicketCompose.gameObject.SetActive(own < lackItem.count && CanComposeTicket(lackType));
 
             m_LackContentTip.text = GetLackContentTip(lackType);
             m_LackMoneyTip.gameObject.SetActive(own < lackItem.count);
+            m_ConfirmLabel.text = GetConfirmLabel(lackType);
 
             if (own < lackItem.count)
             {
@@ -117,6 +123,22 @@
             else
             {
                 ConfirmTodo(lackType);
+            }
+        }
+
+        private void TicketCompose()
+        {
+            switch (lackType)
+            {
+                case LackType.ElderGodArea:
+                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.ComposeTicketIce);
+                    break;
+                case LackType.FairyLand:
+                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.ComposeTicketFairy);
+                    break;
+                case LackType.SingleIceCrystal:
+                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.ComposeTicketGod);
+                    break;
             }
         }
 
@@ -271,6 +293,34 @@
             }
         }
 
+        private string GetConfirmLabel(LackType _lackType)
+        {
+            switch (_lackType)
+            {
+                case LackType.PersonalBoss:
+                case LackType.Kylin:
+                case LackType.IceCrystal:
+                    return Language.Get("ConfirmTarget");
+                case LackType.ElderGodArea:
+                case LackType.FairyLand:
+                case LackType.SingleIceCrystal:
+                    return Language.Get("W_CertainInto");
+                default:
+                    return Language.Get("ConfirmTarget");
+            }
+        }
+
+        private bool CanComposeTicket(LackType _lackType)
+        {
+            var lackItem = GetLackItem(lackType);
+            List<ItemCompoundConfig> list;
+            if (ItemCompoundConfig.TryGetTicketCompose(lackItem.id, out list))
+            {
+                return composeModel.IsComposeTicketByType(list[0].secondType);
+            }
+            return false;
+        }
+
         public enum LackType
         {
             PersonalBoss,

--
Gitblit v1.8.0