少年修仙传客户端代码仓库
Client_PangDeRong
2018-11-20 1cdbca413a9288eb6e699122c70cfbeeef0cfe8c
4742 【1.3】【前端】神秘限购开发
4个文件已修改
4个文件已添加
257 ■■■■■ 已修改文件
System/HappyXB/BestXBWin.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HappyXB/RuneXBWin.cs 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseSaleItem.cs 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseSaleItem.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseWin.cs 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/WishingPoolModel.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/PlayerDead/RebornWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HappyXB/BestXBWin.cs
@@ -62,6 +62,8 @@
        [SerializeField] float stopTime = 2f;
        [Header("寻宝得到物品动画时间")]
        [SerializeField] float scaleTime = 0.2f;
        [Header("音效播放最短时间")]
        [SerializeField] float minPlayeAudioTime = 0.1f;
        List<XBItemCell> xbItemlist = new List<XBItemCell>();
        List<XBGetItem> targetIndexs;
@@ -76,6 +78,8 @@
        PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
        XBFuncSet funcSet;
        float coolTime = 3;
        private bool IsStartPlayAudio = false;
        private float playeAudioTime = 0;
        protected override void BindController()
        {
            xbItemlist.Clear();
@@ -141,6 +145,24 @@
           
        }
        protected override void LateUpdate()
        {
            base.LateUpdate();
            if(IsStartPlayAudio)
            {
                if(playeAudioTime <= 0)
                {
                    SoundPlayer.Instance.PlayUIAudio(66);
                }
                playeAudioTime += Time.deltaTime;
                if(playeAudioTime > minPlayeAudioTime)
                {
                    playeAudioTime = 0;
                    IsStartPlayAudio = false;
                }
            }
        }
        protected override void OnPreClose()
        {
            XBModel.RefreshBestXBTimeAct -= RefreshFreeTime;
@@ -189,6 +211,9 @@
                }
              
            }
            playeAudioTime = 0;
            IsStartPlayAudio = false;
            maskObj.SetActive(false);
            luckDesObj.SetActive(true);
            getXBItemParent.gameObject.SetActive(false);
@@ -337,7 +362,6 @@
            }
            else
            {
                SoundPlayer.Instance.PlayUIAudio(66);
                CreateGetItem();
                targetIndexs = XBModel.rangelist;
                StartCoroutine(PlayXBAni(0, 0));
@@ -413,6 +437,7 @@
            float xbA3 = a3;
            while (true)
            {
                IsStartPlayAudio = true;
                curSelectIndex += 1;
                curSelectIndex %= xbItemlist.Count;
                if(curSelectIndex <= 0)
System/HappyXB/RuneXBWin.cs
@@ -64,6 +64,10 @@
        [SerializeField] float stopTime = 0.5f;
        [Header("寻宝得到物品动画时间")]
        [SerializeField] float scaleTime = 0.2f;
        [Header("音效播放最短时间")]
        [SerializeField] float minPlayeAudioTime = 0.1f;
        List<XBItemCell> xbItemlist = new List<XBItemCell>();
        List<XBGetItem> targetIndexs;
@@ -78,6 +82,9 @@
        PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
        XBFuncSet funcSet;
        float coolTime = 3;
        private bool IsStartPlayAudio = false;
        private float playeAudioTime = 0;
        protected override void BindController()
        {
            xbItemlist.Clear();
@@ -150,7 +157,23 @@
        {
           
        }
        protected override void LateUpdate()
        {
            base.LateUpdate();
            if (IsStartPlayAudio)
            {
                if (playeAudioTime <= 0)
                {
                    SoundPlayer.Instance.PlayUIAudio(66);
                }
                playeAudioTime += Time.deltaTime;
                if (playeAudioTime > minPlayeAudioTime)
                {
                    playeAudioTime = 0;
                    IsStartPlayAudio = false;
                }
            }
        }
        protected override void OnPreClose()
        {
            XBModel.RefreshAgainXBAct -= RefreshAgainXB;
@@ -201,6 +224,8 @@
                }
              
            }
            playeAudioTime = 0;
            IsStartPlayAudio = false;
            maskObj.SetActive(false);
            luckDesObj.SetActive(true);
            getXBItemParent.gameObject.SetActive(false);
@@ -354,7 +379,6 @@
            }
            else
            {
                SoundPlayer.Instance.PlayUIAudio(66);
                CreateGetItem();
                targetIndexs = XBModel.rangelist;
                StartCoroutine(PlayXBAni(0, 0));
@@ -429,6 +453,7 @@
            float xbA3 = a3;
            while (true)
            {
                IsStartPlayAudio = true;
                curSelectIndex += 1;
                curSelectIndex %= xbItemlist.Count;
                if (curSelectIndex <= 0)
System/OpenServerActivity/MysticalPurchaseSaleItem.cs
New file
@@ -0,0 +1,30 @@
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
namespace Snxxz.UI
{
    public class MysticalPurchaseSaleItem : MonoBehaviour
    {
        [SerializeField] Text originalPrice;
        [SerializeField] Image originalMoneyIcon;
        [SerializeField] Text presentPrice;
        [SerializeField] Image presentMoneyIcon;
        [SerializeField] Button buybtn;
        [SerializeField] GameObject stateImg;
        [SerializeField] Text saleTime;
        [SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>();
        MysticalPurchaseModel purchaseModel { get { return ModelCenter.Instance.GetModel<MysticalPurchaseModel>(); } }
        public void SetDisplay(int index)
        {
            if (purchaseModel.presentFlashShop == null) return;
            var  saleItem = purchaseModel.presentFlashShop.items[index];
            originalMoneyIcon.SetIconWithMoneyType(saleItem.moneyType);
            presentMoneyIcon.SetIconWithMoneyType(saleItem.moneyType);
            originalPrice.text = saleItem.moneyOriginal.ToString();
            presentPrice.text = saleItem.moneyNumber.ToString();
        }
    }
}
System/OpenServerActivity/MysticalPurchaseSaleItem.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 399a3873b7b9fab4ea2ea77609a46d40
timeCreated: 1542683986
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/OpenServerActivity/MysticalPurchaseWin.cs
New file
@@ -0,0 +1,130 @@
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
using System;
namespace Snxxz.UI
{
    [XLua.Hotfix]
    public class MysticalPurchaseWin : Window
    {
        [SerializeField] Text opreationTimeText;
        [SerializeField] Image moneyIcon;
        [SerializeField] Text moneyNumText;
        [SerializeField] GameObject activityOpenObj;
        [SerializeField] GameObject activityCloseObj;
        [SerializeField] RectTransform saleItemsContent;
        [SerializeField] List<MysticalPurchaseSaleItem> saleItems = new List<MysticalPurchaseSaleItem>();
        Vector3 startPos = Vector3.zero;
        StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
        MysticalPurchaseModel purchaseModel { get { return ModelCenter.Instance.GetModel<MysticalPurchaseModel>(); } }
        OperationMysticalPurchase operation = null;
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
        }
        protected override void OnPreOpen()
        {
            OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
            OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += UpdateMoney;
        }
        protected override void OnAfterOpen()
        {
            startPos = saleItemsContent.anchoredPosition3D;
        }
        protected override void OnPreClose()
        {
            OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
            OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= UpdateMoney;
            saleItemsContent.anchoredPosition3D = startPos;
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void SetDisplay()
        {
            operation = null;
            OperationBase operationBase;
            if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.MysticalPurchase, out operationBase))
            {
                operation = operationBase as OperationMysticalPurchase;
            }
            if(operation != null)
            {
                opreationTimeText.text = StringUtility.Contact(Language.Get("ExpActivity_Text1"), UIHelper.AppendStringColor(TextColType.Green, operation.ToDisplayTime()));
                UpdateMoneyInfo();
                activityOpenObj.SetActive(true);
                activityCloseObj.SetActive(false);
                UpdateSaleItems();
            }
        }
        private void UpdateSaleItems()
        {
            if (operation == null) return;
            List<OperationMysticalPurchase.FlashSaleItem> flashSaleItems = null;
            for(int i = 0; i < saleItems.Count; i++)
            {
                var saleItem = saleItems[i];
                if (i < flashSaleItems.Count)
                {
                    saleItem.SetDisplay(i);
                    saleItem.gameObject.SetActive(true);
                }
                else
                {
                    saleItem.gameObject.SetActive(false);
                }
            }
        }
        private void UpdateMoneyInfo()
        {
            if (operation == null) return;
            var moneyType = 1;
            moneyIcon.SetIconWithMoneyType(moneyType);
            moneyNumText.text = UIHelper.GetMoneyCnt(moneyType).ToString();
        }
        private void UpdateMoney(PlayerDataRefresh type)
        {
            if (type != PlayerDataRefresh.Gold) return;
            UpdateMoneyInfo();
        }
        private void OperationTimeUpdateEvent(Operation type)
        {
            if (type == Operation.MysticalPurchase)
            {
                SetDisplay();
            }
        }
        private void OperationStartEvent(Operation type, int state)
        {
            if (type == Operation.MysticalPurchase && state == 0)
            {
                SetDisplay();
            }
        }
    }
}
System/OpenServerActivity/MysticalPurchaseWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 362fd377219483a45a79fcc6c107167a
timeCreated: 1542681376
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/OpenServerActivity/WishingPoolModel.cs
@@ -27,6 +27,7 @@
        public void OnBeforePlayerDataInitialize()
        {
            GlobalTimeEvent.Instance.secondEvent -= UpdateSecond;
            isOpenPrompting = true;
            ResetDragData();
            ResetPoolData();
@@ -34,6 +35,7 @@
        public void OnPlayerLoginOk()
        {
            GlobalTimeEvent.Instance.secondEvent += UpdateSecond;
            UpdateFreeWishRedpoint();
            UpdateRedpoint();
        }
@@ -164,6 +166,19 @@
            }
        }
        private void UpdateSecond()
        {
            if (!IsOpen || freeWishRedpoint.state != RedPointState.None) return;
            int second = 0;
            bool isCool = TryGetFreeWishCoolTime(out second);
            if(!isCool)
            {
                UpdateFreeWishRedpoint();
                UpdateRedpoint();
            }
        }
        #region 本地数据
        public bool isDraging { get; set; }
        public int dragIndex { get; set; }
System/PlayerDead/RebornWin.cs
@@ -106,7 +106,7 @@
        protected override void OnPreClose()
        {
            StopAllCoroutines();
        }
        protected override void OnAfterClose()