少年修仙传客户端代码仓库
client_Zxw
2019-01-09 c93e2ca727e8c0a5b4c2b6d38701585371a4c3c2
5767 【前端】【1.5】新增8-14天活动功能(制作成7日运营活动的模板)
3个文件已修改
2个文件已添加
166 ■■■■■ 已修改文件
System/OpenServerActivity/OpenServiceAchievementCell.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/OpenServiceAchievementModel.cs 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/OpenServiceAchievementWin.cs 60 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/OpenServiceItem.cs 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/OpenServiceItem.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/OpenServiceAchievementCell.cs
@@ -48,7 +48,7 @@
                m_TextA.text = Language.Get("OSA_1", WeekPartyAction.SingleTimes);
            }
            m_TextB.text = string.Format(config.Description,1);
            m_TextC.text = Language.Get("OSA_1", WeekPartyAction.Point);
            m_TextC.text = Language.Get("OSA_2", WeekPartyAction.Point);
            for (int i = 0; i < m_ItemList.childCount; i++)
            {
                GameObject Obj = m_ItemList.GetChild(i).gameObject;
System/OpenServerActivity/OpenServiceAchievementModel.cs
@@ -105,6 +105,7 @@
            WeekPartyDayInfoClass WeekPartyDayInfo = new WeekPartyDayInfoClass();
            WeekPartyDayInfo.DayIndex = (int)DayInfo.DayIndex;
            WeekPartyDayInfo.Point = (int)DayInfo.Point;
            WeekPartyDayInfo.AwardRecord = (int)DayInfo.AwardRecord;
            WeekPartyDayInfo.ActionType = new ActionTypeClass[DayInfo.ACount];
            for (int k = 0; k < DayInfo.ACount; k++)
            {
@@ -273,19 +274,19 @@
    {
        int Day = 0;
        var time = TimeDayBeginAndOver[0];
        if (TimeDayBeginAndOver.Length <= 0 || time==null)
        if (TimeDayBeginAndOver.Length <= 0 || time == null)
        {
            return;
        }
        }
        DateTime time1 = new DateTime(time.Year, time.Month, time.Day);
        DateTime time2 = new DateTime(TimeUtility.ServerNow.Year, TimeUtility.ServerNow.Month, TimeUtility.ServerNow.Day);
        TimeSpan ts = time2.Subtract(time1);
        Day = (int)ts.TotalDays;
        DebugEx.LogError("输出当前的天数"+ Day);
        DebugEx.LogError("输出当前的天数" + Day);
        DayNow = Day;
    }
    public void SendGetWeekParty(int day,int temdayplateID)//领取周狂欢活动奖励
    public void SendGetWeekParty(int day, int temdayplateID)//领取周狂欢活动奖励
    {
        CA504_tagCMPlayerGetReward getReward = new CA504_tagCMPlayerGetReward();
        getReward.RewardType = (byte)GotServerRewardType.Def_RewardType_WeekPartyAct;
@@ -306,6 +307,20 @@
        GameNetSystem.Instance.SendInfo(getReward);
    }
    public bool IsDayReward(int day, int index)//是否领取奖励
    {
        bool _bool = false;
        int AwardRecord = 0;
        foreach (var key in WeekPartyDayInfoDic.Keys)
        {
            if (key == day)
            {
                AwardRecord = WeekPartyDayInfoDic[key].AwardRecord;
            }
        }
        _bool = MathUtility.GetBitValue((uint)AwardRecord, (ushort)index);
        return _bool;
    }
}
System/OpenServerActivity/OpenServiceAchievementWin.cs
@@ -11,7 +11,8 @@
using TableConfig;
using EnhancedUI.EnhancedScroller;
namespace Snxxz.UI {
namespace Snxxz.UI
{
    //开服成就
    [XLua.Hotfix]
    public class OpenServiceAchievementWin : Window
@@ -20,19 +21,27 @@
        [SerializeField] ScrollerController m_ScrollerController2;//列表
        [SerializeField] Button m_CloseBtn;
        [SerializeField] Text m_TextIntegral;//当前积分
        [SerializeField] GameObject m_One;
        [SerializeField] GameObject m_Two;
        [SerializeField] OpenServiceItem m_OpenServiceItemA;
        [SerializeField] OpenServiceItem m_OpenServiceItemA1;
        [SerializeField] OpenServiceItem m_OpenServiceItemB1;
        #region Built-in
        OpenServiceAchievementModel model { get { return ModelCenter.Instance.GetModel<OpenServiceAchievementModel>(); } }
        List<int> SortList = new List<int>();
        List<WeekPartyItemClass> ItemDayList = new List<WeekPartyItemClass>();
        protected override void BindController()
        {
            m_ScrollerController1.OnRefreshCell += OnRefreshGridCell_1;
            m_ScrollerController2.OnRefreshCell += OnRefreshGridCell_2;
        }
        protected override void AddListeners()
        {
            m_CloseBtn.AddListener(()=> { Close(); });
            m_CloseBtn.AddListener(() => { Close(); });
        }
        protected override void OnPreOpen()
@@ -53,7 +62,7 @@
            model.WeekPartyDayInfoUpdate -= WeekPartyDayInfoUpdate;
        }
        protected override void OnAfterClose()
        {
@@ -90,7 +99,7 @@
                Unselected.SetActive(true);
            }
            DayText.text = InDayStr(Index);
            Btn.SetListener(()=>
            Btn.SetListener(() =>
            {
                if (Index != model.SelectedNow)
                {
@@ -105,13 +114,14 @@
        private string InDayStr(int Day)
        {
            string DaySte = string.Empty;
            DaySte = Language.Get("SignIn_4",Day);
            DaySte = Language.Get("SignIn_4", Day);
            return DaySte;
        }
        //-------------------------------
        void OnCreateGridLineCell2(ScrollerController gridCtrl)
        {
            ToAddSorting();//排序
            GetPointRewardObj();//获取积分领奖信息
            gridCtrl.Refresh();
            for (int i = 0; i < SortList.Count; i++)
            {
@@ -121,7 +131,7 @@
        }
        private void OnRefreshGridCell_2(ScrollerDataType type, CellView cell)
        {
        }
        private void ToAddSorting()
@@ -181,11 +191,11 @@
                {
                    TaypeNumber = (carryOutNum - rewardNum) / WeekPartyAction.SingleTimes;
                }
                if (TaypeNumber>0)
                if (TaypeNumber > 0)
                {
                    Bool = true;
                }
            }
            }
            return Bool;
        }
        private bool Undone(int ID)//未完成
@@ -202,7 +212,7 @@
                {
                    TaypeNumber = (carryOutNum - rewardNum) / WeekPartyAction.SingleTimes;
                }
                if (TaypeNumber<=0)
                if (TaypeNumber <= 0)
                {
                    Bool = true;
                }
@@ -218,7 +228,7 @@
                int number = WeekPartyAction.TotalTimes / WeekPartyAction.SingleTimes;
                int rewardNum = model.GetRewardNumber(model.SelectedNow, ID);//已领奖次数
                int carryOutNum = model.GetCarryOutNum(model.SelectedNow, ID);//已完成次数
                if (rewardNum> number)
                if (rewardNum > number)
                {
                    Bool = true;
                }
@@ -241,6 +251,34 @@
            int Point = model.GetPoint(model.SelectedNow);
            m_TextIntegral.text = Point.ToString();
        }
        private void GetPointRewardObj()
        {
            ItemDayList.Clear();
            foreach (var key in model.WeekPartyDayDic.Keys)
            {
                if (key == model.SelectedNow)
                {
                    for (int i = 0; i < model.WeekPartyDayDic[key].WeekPartyItem.Length; i++)
                    {
                        ItemDayList.Add(model.WeekPartyDayDic[key].WeekPartyItem[i]);
                    }
                }
            }
            if (ItemDayList.Count > 1)
            {
                m_One.SetActive(false);
                m_Two.SetActive(true);
                m_OpenServiceItemA1.SetReward(model.SelectedNow, ItemDayList[0],0);
                m_OpenServiceItemB1.SetReward(model.SelectedNow, ItemDayList[1],1);
            }
            else
            {
                m_One.SetActive(true);
                m_Two.SetActive(false);
                m_OpenServiceItemA.SetReward(model.SelectedNow, ItemDayList[0], 0);
            }
        }
    }
}
System/OpenServerActivity/OpenServiceItem.cs
New file
@@ -0,0 +1,69 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Wednesday, January 09, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TableConfig;
namespace Snxxz.UI
{
    [XLua.Hotfix]
    public class OpenServiceItem : MonoBehaviour
    {
        [SerializeField] Text m_Text_A;
        [SerializeField] Image m_BGM;
        [SerializeField] Image m_ImageShow;
        [SerializeField] Text m_TextPoint;
        [SerializeField] Button m_ReceiveBtn;
        [SerializeField] GameObject m_IsReachImage;
        [SerializeField] GameObject m_IsDrawImage;
        OpenServiceAchievementModel model { get { return ModelCenter.Instance.GetModel<OpenServiceAchievementModel>(); } }
        public void SetReward(int day, WeekPartyItemClass item, int index)
        {
            int Point = model.GetPoint(day);
            m_TextPoint.text = item.NeedPoint.ToString();
            bool IsBool = model.IsDayReward(model.SelectedNow, index);
            if (model.SelectedNow > model.DayNow)
            {
                m_ReceiveBtn.gameObject.SetActive(false);
                m_IsReachImage.SetActive(false);
                m_IsDrawImage.SetActive(false);
            }
            else
            {
                if (Point >= item.NeedPoint && !IsBool)//可领
                {
                    m_ReceiveBtn.gameObject.SetActive(true);
                    m_ReceiveBtn.SetListener(() =>
                    {
                        model.SendGetWeekPartyPoint(model.SelectedNow, item.NeedPoint);
                    });
                    m_IsReachImage.SetActive(false);
                    m_IsDrawImage.SetActive(false);
                }
                else if (Point >= item.NeedPoint && IsBool)//已领
                {
                    m_ReceiveBtn.gameObject.SetActive(false);
                    m_IsReachImage.SetActive(false);
                    m_IsDrawImage.SetActive(true);
                }
                else if (item.NeedPoint > Point)
                {
                    m_ReceiveBtn.gameObject.SetActive(false);
                    m_IsReachImage.SetActive(true);
                    m_IsDrawImage.SetActive(false);
                }
            }
        }
    }
}
System/OpenServerActivity/OpenServiceItem.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 0b9e5e0dad0ffd24c91131cd43d537a2
timeCreated: 1547014454
licenseType: Free
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant: