少年修仙传客户端代码仓库
Client_PangDeRong
2018-10-16 901559d075a34afc5e90eac65378951e8d554c01
4074 【前端】限时抢购开发
2个文件已修改
39 ■■■■■ 已修改文件
System/OpenServerActivity/FlashRushToBuyWin.cs 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/FlashSaleItemCell.cs 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/FlashRushToBuyWin.cs
@@ -1,4 +1,5 @@
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
@@ -6,17 +7,19 @@
{
    public class FlashRushToBuyWin : Window
    {
        [SerializeField] ScrollerController saleItemCtrl;
        [SerializeField] ScrollerController saleTimeCtrl;
        [SerializeField] Text opreationTimeText;
        [SerializeField] Image moneyIcon;
        [SerializeField] Text moneyNumText;
        [SerializeField] GameObject activityOpenObj;
        [SerializeField] GameObject activityCloseObj;
        [SerializeField] List<FlashSaleItemCell> flashSaleItems = new List<FlashSaleItemCell>();
        [SerializeField] RectTransform saleItemsContent;
        StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
        FlashRushToBuyModel rushToBuyModel { get { return ModelCenter.Instance.GetModel<FlashRushToBuyModel>(); } }
        OperationFlashRushToBuy operation = null;
        Vector3 startPos = Vector3.zero;
        #region Built-in
        protected override void BindController()
        {
@@ -39,7 +42,9 @@
        protected override void OnAfterOpen()
        {
            startPos = saleItemsContent.anchoredPosition3D;
            rushToBuyModel.SetDayRemind();
            CreateSaleItem();
        }
        protected override void OnPreClose()
@@ -80,7 +85,6 @@
            activityOpenObj.SetActive(true);
            activityCloseObj.SetActive(false);
            CreateOperationTimes();
            CreateSaleItem();
        }
@@ -129,13 +133,20 @@
        public void CreateSaleItem()
        {
            saleItemCtrl.Refresh();
            saleItemsContent.anchoredPosition3D = startPos;
            var flashItems = rushToBuyModel.presentFlashShop.items;
            for (int i = 0; i < flashItems.Length; i++)
            for(int i = 0; i < flashSaleItems.Count; i++)
            {
                saleItemCtrl.AddCell(ScrollerDataType.Header, i);
                if(i < flashItems.Length)
                {
                    flashSaleItems[i].gameObject.SetActive(true);
                    flashSaleItems[i].SetDisplayModel(i);
                }
                else
                {
                    flashSaleItems[i].gameObject.SetActive(false);
                }
            }
            saleItemCtrl.Restart();
            int seconds = 0;
            int buyState = operation.GetBuyTimeState(TimeUtility.ServerNow,rushToBuyModel.presentFlashShop.dayIndex, 
@@ -146,7 +157,12 @@
                {
                    if (flashItems[i].isAppointment == 1)
                    {
                        saleItemCtrl.JumpIndex(i);
                        if (i > 2)
                        {
                            float offsetX = 224 * (i - 2) + 10 * (i - 3);
                            float posX = saleItemsContent.anchoredPosition3D.x - offsetX;
                            saleItemsContent.anchoredPosition3D = new Vector3(posX,saleItemsContent.anchoredPosition3D.y,0);
                        }
                        break;
                    }
                }
System/OpenServerActivity/FlashSaleItemCell.cs
@@ -1,12 +1,11 @@
using UnityEngine;
using UnityEngine.UI;
using EnhancedUI.EnhancedScroller;
using TableConfig;
using System;
namespace Snxxz.UI
{
    public class FlashSaleItemCell : ScrollerUI
    public class FlashSaleItemCell : MonoBehaviour
    {
        [SerializeField] CommonItemBaisc itemBaisc;
        [SerializeField] Text originalPrice;
@@ -49,12 +48,12 @@
            KnapsackTimeCDMgr.Instance.RefreshNormalCDAct -= RefreshCD;
        }
        public override void Refresh(CellView cell)
        public  void SetDisplayModel(int index)
        {
            if (rushToBuyModel.presentFlashShop == null) return;
            saleItem = rushToBuyModel.presentFlashShop.items[cell.index];
            code = rushToBuyModel.presentFlashShop.dayIndex * 1000 + rushToBuyModel.presentFlashShop.timeIndex * 100 + cell.index;
            saleItem = rushToBuyModel.presentFlashShop.items[index];
            code = rushToBuyModel.presentFlashShop.dayIndex * 1000 + rushToBuyModel.presentFlashShop.timeIndex * 100 + index;
            ItemCellModel cellModel = new ItemCellModel(saleItem.itemId,true,(ulong)saleItem.itemCount,saleItem.isBind);
            itemBaisc.Init(cellModel);
            itemBaisc.cellBtn.RemoveAllListeners();