Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
| | |
| | | Register(typeof(HA806_tagMCMysticalShopTimeInfo), typeof(DTCA806_tagMCMysticalShopTimeInfo));
|
| | | Register(typeof(HAA0A_tagMCWeekPartyInfo), typeof(DTCAA0A_tagMCWeekPartyInfo));
|
| | | Register(typeof(HAA0B_tagMCWeekPartyPlayerInfo), typeof(DTCAA0B_tagMCWeekPartyPlayerInfo));
|
| | | Register(typeof(HAA0C_tagMCActLoginAwardInfo), typeof(DTCAA0C_tagMCActLoginAwardInfo));
|
| | | Register(typeof(HAA0D_tagMCActLoginAwardPlayerInfo), typeof(DTCAA0D_tagMCActLoginAwardPlayerInfo));
|
| | | Register(typeof(HAA20_tagMCFeastWeekPartyInfo), typeof(DTCAA20_tagMCFeastWeekPartyInfo));
|
| | | Register(typeof(HAA21_tagMCFeastWeekPartyPlayerInfo), typeof(DTCAA21_tagMCFeastWeekPartyPlayerInfo));
|
| | | }
|
| | |
|
| | | private static void Register(Type _pack, Type _business)
|
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Tuesday, January 08, 2019 |
| | | // [ Date ]: Monday, January 28, 2019 |
| | | //-------------------------------------------------------- |
| | | |
| | | using UnityEngine; |
| | |
| | | public int CoatID { get ; private set ; }
|
| | | public string name { get ; private set; }
|
| | | public int type { get ; private set ; }
|
| | | public int FashionSuitType { get ; private set ; }
|
| | | public int quality { get ; private set ; }
|
| | | public string getWay { get ; private set; }
|
| | | public int[] EquipItemID;
|
| | |
| | |
|
| | | type=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0;
|
| | |
|
| | | quality=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0; |
| | | FashionSuitType=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0; |
| | |
|
| | | getWay = rawContents[4].Trim();
|
| | | quality=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0; |
| | |
|
| | | string[] EquipItemIDStringArray = rawContents[5].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); |
| | | getWay = rawContents[5].Trim();
|
| | | |
| | | string[] EquipItemIDStringArray = rawContents[6].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); |
| | | EquipItemID = new int[EquipItemIDStringArray.Length]; |
| | | for (int i=0;i<EquipItemIDStringArray.Length;i++) |
| | | { |
| | | int.TryParse(EquipItemIDStringArray[i],out EquipItemID[i]); |
| | | }
|
| | |
|
| | | UnlockItemID=IsNumeric(rawContents[6]) ? int.Parse(rawContents[6]):0; |
| | | UnlockItemID=IsNumeric(rawContents[7]) ? int.Parse(rawContents[7]):0; |
| | |
|
| | | MaxLV=IsNumeric(rawContents[7]) ? int.Parse(rawContents[7]):0; |
| | | MaxLV=IsNumeric(rawContents[8]) ? int.Parse(rawContents[8]):0; |
| | |
|
| | | string[] CostItemCntStringArray = rawContents[8].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); |
| | | string[] CostItemCntStringArray = rawContents[9].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); |
| | | CostItemCnt = new int[CostItemCntStringArray.Length]; |
| | | for (int i=0;i<CostItemCntStringArray.Length;i++) |
| | | { |
| | | int.TryParse(CostItemCntStringArray[i],out CostItemCnt[i]); |
| | | }
|
| | |
|
| | | StarAttr = rawContents[9].Trim(); |
| | | StarAttr = rawContents[10].Trim(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 5ac2a701b6eaba844b1082c87758125e |
| | | timeCreated: 1546945768 |
| | | timeCreated: 1548676001 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, January 28, 2019 |
| | | //-------------------------------------------------------- |
| | | |
| | | using UnityEngine; |
| | | using System; |
| | | |
| | | namespace TableConfig { |
| | | |
| | | |
| | | public partial class HolidayHomingConfig : ConfigBase { |
| | | |
| | | public int Id { get ; private set ; }
|
| | | public int ActionType { get ; private set ; }
|
| | | public string Description { get ; private set; } |
| | | public int jump { get ; private set ; }
|
| | | public int order { get ; private set ; }
|
| | | public int DailyQusetId { get ; private set ; }
|
| | | public int SpecialDisplayType { get ; private set ; } |
| | | |
| | | public override string getKey() |
| | | { |
| | | return Id.ToString(); |
| | | } |
| | | |
| | | public override void Parse() { |
| | | try |
| | | { |
| | | Id=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; |
| | | |
| | | ActionType=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0; |
| | | |
| | | Description = rawContents[2].Trim();
|
| | | |
| | | jump=IsNumeric(rawContents[3]) ? int.Parse(rawContents[3]):0; |
| | | |
| | | order=IsNumeric(rawContents[4]) ? int.Parse(rawContents[4]):0; |
| | | |
| | | DailyQusetId=IsNumeric(rawContents[5]) ? int.Parse(rawContents[5]):0; |
| | | |
| | | SpecialDisplayType=IsNumeric(rawContents[6]) ? int.Parse(rawContents[6]):0; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | DebugEx.Log(ex); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 8d3d7608c7608d344837efce0985daa5 |
| | | timeCreated: 1548642619 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, January 28, 2019 |
| | | //-------------------------------------------------------- |
| | | |
| | | using UnityEngine; |
| | | using System; |
| | | |
| | | namespace TableConfig { |
| | | |
| | | |
| | | public partial class HolidayHomingPointConfig : ConfigBase { |
| | | |
| | | public int Id { get ; private set ; }
|
| | | public string ImageType1 { get ; private set; } |
| | | public string ImageType2 { get ; private set; } |
| | | public string name { get ; private set; } |
| | | |
| | | public override string getKey() |
| | | { |
| | | return Id.ToString(); |
| | | } |
| | | |
| | | public override void Parse() { |
| | | try |
| | | { |
| | | Id=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0; |
| | | |
| | | ImageType1 = rawContents[1].Trim();
|
| | | |
| | | ImageType2 = rawContents[2].Trim();
|
| | | |
| | | name = rawContents[3].Trim(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | DebugEx.Log(ex); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 72b35cd6566b7d34389dd31103502961 |
| | | timeCreated: 1548642631 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | | AddAsyncTask<JadeDynastyBossConfig>();
|
| | | AddAsyncTask<JadeDynastySuitAttrConfig>();
|
| | | AddAsyncTask<SkillFrameAnimationConfig>();
|
| | |
|
| | | AddAsyncTask<HolidayHomingConfig>();
|
| | | AddAsyncTask<HolidayHomingPointConfig>();
|
| | | while (!AllCompleted())
|
| | | {
|
| | | var completedCount = 0;
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | OperationTimeHepler.Instance.OpenServiceAchievement(vNetData);
|
| | | model.WeekPartyInfo(vNetData);
|
| | | }
|
| | | }
|
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | | using Snxxz.UI;
|
| | |
|
| | | // AA 0C 登录奖励活动信息 #tagMCActLoginAwardInfo
|
| | |
|
| | |
|
| | |
|
| | | public class DTCAA0C_tagMCActLoginAwardInfo : DtcBasic {
|
| | |
|
| | | LoginRewardModel m_LoginRewardModel;
|
| | | LoginRewardModel loginRewardModel { get { return m_LoginRewardModel ?? (m_LoginRewardModel = ModelCenter.Instance.GetModel<LoginRewardModel>()); } }
|
| | | public override void Done(GameNetPackBasic vNetPack) {
|
| | | base.Done(vNetPack);
|
| | | HAA0C_tagMCActLoginAwardInfo vNetData = vNetPack as HAA0C_tagMCActLoginAwardInfo;
if (vNetData == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | OperationTimeHepler.Instance.RefreshLoginReward(vNetData);
loginRewardModel.LoginAwardInfo(vNetData);
|
| | | }
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 7a1f6e4974acd9e4fa893257d4a0a5a3 |
| | | timeCreated: 1547783303 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | | using Snxxz.UI;
|
| | |
|
| | | // AA 0D 登录奖励玩家活动信息 #tagMCActLoginAwardPlayerInfo
|
| | |
|
| | |
|
| | |
|
| | | public class DTCAA0D_tagMCActLoginAwardPlayerInfo : DtcBasic {
|
| | | LoginRewardModel m_LoginRewardModel;
|
| | | LoginRewardModel loginRewardModel { get { return m_LoginRewardModel ?? (m_LoginRewardModel = ModelCenter.Instance.GetModel<LoginRewardModel>()); } }
|
| | | public override void Done(GameNetPackBasic vNetPack) {
|
| | | base.Done(vNetPack);
|
| | | HAA0D_tagMCActLoginAwardPlayerInfo vNetData = vNetPack as HAA0D_tagMCActLoginAwardPlayerInfo;
if (vNetData == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | loginRewardModel.LoginAwardPlayerInfo(vNetData);
|
| | | }
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 34ae4e7c0f7c0184391054f28930408a |
| | | timeCreated: 1547783303 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | | using Snxxz.UI;
|
| | |
|
| | | // AA 20 节日巡礼活动信息 #tagMCFeastWeekPartyInfo
|
| | |
|
| | |
|
| | |
|
| | | public class DTCAA20_tagMCFeastWeekPartyInfo : DtcBasic
|
| | | {
|
| | | SpringFestivalModel model { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } }
|
| | | public override void Done(GameNetPackBasic vNetPack)
|
| | | {
|
| | | base.Done(vNetPack);
|
| | | HAA20_tagMCFeastWeekPartyInfo vNetData = vNetPack as HAA20_tagMCFeastWeekPartyInfo;
if (vNetData == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | OperationTimeHepler.Instance.SpringFestival(vNetData);
|
| | | model.SpringFestivalTemplate(vNetData);
|
| | | }
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: aaf06cbce14a41245bd9fba2fdfbbc87 |
| | | timeCreated: 1548641524 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | | using Snxxz.UI;
|
| | |
|
| | | // AA 21 节日巡礼玩家活动信息 #tagMCFeastWeekPartyPlayerInfo
|
| | |
|
| | |
|
| | |
|
| | | public class DTCAA21_tagMCFeastWeekPartyPlayerInfo : DtcBasic
|
| | | {
|
| | | SpringFestivalModel model { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } }
|
| | | public override void Done(GameNetPackBasic vNetPack)
|
| | | {
|
| | | base.Done(vNetPack);
|
| | | HAA21_tagMCFeastWeekPartyPlayerInfo vNetData = vNetPack as HAA21_tagMCFeastWeekPartyPlayerInfo;
|
| | | if (vNetData == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | model.SpringFestivalInfo(vNetData);
|
| | | }
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 545412b628f8a19419a48aee51cea0dc |
| | | timeCreated: 1548641521 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | |
|
| | | // AA 0C 登录奖励活动信息 #tagMCActLoginAwardInfo
|
| | |
|
| | | public class HAA0C_tagMCActLoginAwardInfo : GameNetPackBasic {
|
| | | public string StartDate; // 开始日期 y-m-d
|
| | | public string EndtDate; // 结束日期 y-m-d
|
| | | public ushort AdvanceMinutes; // 提前显示分钟
|
| | | public byte IsDayReset; //是否每天重置
|
| | | public byte ResetType; // 重置类型,0-0点重置;1-5点重置
|
| | | public ushort LimitLV; // 限制等级
|
| | | public byte DayCnt; // 天数
|
| | | public tagMCActLoginAwardDayInfo[] DayInfoList; // 每天模板
|
| | | public byte TCount; // 模板数
|
| | | public tagMCActLoginAwardAction[] ActionInfo; // 活动模板信息
|
| | |
|
| | | public HAA0C_tagMCActLoginAwardInfo () {
|
| | | _cmd = (ushort)0xAA0C;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
|
| | | TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
|
| | | TransBytes (out AdvanceMinutes, vBytes, NetDataType.WORD);
|
| | | TransBytes (out IsDayReset, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out ResetType, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out LimitLV, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayCnt, vBytes, NetDataType.BYTE);
|
| | | DayInfoList = new tagMCActLoginAwardDayInfo[DayCnt];
|
| | | for (int i = 0; i < DayCnt; i ++) {
|
| | | DayInfoList[i] = new tagMCActLoginAwardDayInfo();
|
| | | TransBytes (out DayInfoList[i].ActCnt, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out DayInfoList[i].TemplateList, vBytes, NetDataType.WORD, DayInfoList[i].ActCnt);
|
| | | }
|
| | | TransBytes (out TCount, vBytes, NetDataType.BYTE);
|
| | | ActionInfo = new tagMCActLoginAwardAction[TCount];
|
| | | for (int i = 0; i < TCount; i ++) {
|
| | | ActionInfo[i] = new tagMCActLoginAwardAction();
|
| | | TransBytes (out ActionInfo[i].TemplateID, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].ActionType, vBytes, NetDataType.WORD);
|
| | | TransBytes (out ActionInfo[i].TotalTimes, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].SingleTimes, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].Count, vBytes, NetDataType.BYTE);
|
| | | ActionInfo[i].ItemInfo = new tagMCActLoginAwardItem[ActionInfo[i].Count];
|
| | | for (int j = 0; j < ActionInfo[i].Count; j ++) {
|
| | | ActionInfo[i].ItemInfo[j] = new tagMCActLoginAwardItem();
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].ItemID, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].ItemCnt, vBytes, NetDataType.WORD);
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].IsBind, vBytes, NetDataType.BYTE);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCActLoginAwardItem {
|
| | | public uint ItemID; // 物品ID
|
| | | public ushort ItemCnt; // 物品数量
|
| | | public byte IsBind; // 是否绑定
|
| | | }
|
| | |
|
| | | public struct tagMCActLoginAwardAction {
|
| | | public uint TemplateID; // 模板ID
|
| | | public ushort ActionType; // 活动类别
|
| | | public uint TotalTimes; // 可完成的总次数,0表示不限次数
|
| | | public uint SingleTimes; // 单次领奖需要的次数
|
| | | public byte Count; // 物品数
|
| | | public tagMCActLoginAwardItem[] ItemInfo; // 物品信息
|
| | | }
|
| | |
|
| | | public struct tagMCActLoginAwardDayInfo {
|
| | | public byte ActCnt; // 数量
|
| | | public ushort[] TemplateList; // 模板列表
|
| | | }
|
| | |
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: b1fcb37796d75a545a76f01f1ec085bf |
| | | timeCreated: 1547783303 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | |
|
| | | // AA 0D 登录奖励玩家活动信息 #tagMCActLoginAwardPlayerInfo
|
| | |
|
| | | public class HAA0D_tagMCActLoginAwardPlayerInfo : GameNetPackBasic {
|
| | | public byte Count;
|
| | | public tagMCActLoginAwardDayPlayerInfo[] DayInfoList; //活动完成次数信息
|
| | |
|
| | | public HAA0D_tagMCActLoginAwardPlayerInfo () {
|
| | | _cmd = (ushort)0xAA0D;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out Count, vBytes, NetDataType.BYTE);
|
| | | DayInfoList = new tagMCActLoginAwardDayPlayerInfo[Count];
|
| | | for (int i = 0; i < Count; i ++) {
|
| | | DayInfoList[i] = new tagMCActLoginAwardDayPlayerInfo();
|
| | | TransBytes (out DayInfoList[i].DayIndex, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out DayInfoList[i].ACount, vBytes, NetDataType.DWORD);
|
| | | DayInfoList[i].TaskList = new tagMCActLoginAwardTaskInfo[DayInfoList[i].ACount];
|
| | | for (int j = 0; j < DayInfoList[i].ACount; j ++) {
|
| | | DayInfoList[i].TaskList[j] = new tagMCActLoginAwardTaskInfo();
|
| | | TransBytes (out DayInfoList[i].TaskList[j].TemplateID, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayInfoList[i].TaskList[j].CurTimes, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayInfoList[i].TaskList[j].GotTimes, vBytes, NetDataType.WORD);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCActLoginAwardDayPlayerInfo {
|
| | | public uint DayIndex; //第X天
|
| | | public uint ACount; //任务条目数
|
| | | public tagMCActLoginAwardTaskInfo[] TaskList; //活动完成次数信息
|
| | | }
|
| | |
|
| | | public struct tagMCActLoginAwardTaskInfo {
|
| | | public ushort TemplateID; // 模板ID
|
| | | public ushort CurTimes; //已完成次数
|
| | | public ushort GotTimes; //已领取次数
|
| | | }
|
| | |
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 0ba7797ba0b9ed64daf82d4441538adf |
| | | timeCreated: 1547783303 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | |
|
| | | // AA 20 节日巡礼活动信息 #tagMCFeastWeekPartyInfo
|
| | |
|
| | | public class HAA20_tagMCFeastWeekPartyInfo : GameNetPackBasic {
|
| | | public string StartDate; // 开始日期 y-m-d
|
| | | public string EndtDate; // 结束日期 y-m-d
|
| | | public ushort AdvanceMinutes; // 提前显示分钟
|
| | | public byte IsDayReset; //是否每天重置
|
| | | public byte ResetType; // 重置类型,0-0点重置;1-5点重置
|
| | | public ushort LimitLV; // 限制等级
|
| | | public byte DayCnt; // 天数
|
| | | public tagMCFeastWeekPartyDayInfo[] DayInfoList; // 每天模板
|
| | | public byte TCount; // 模板数
|
| | | public tagMCFeastWeekPartyAction[] ActionInfo; // 活动模板信息
|
| | |
|
| | | public HAA20_tagMCFeastWeekPartyInfo () {
|
| | | _cmd = (ushort)0xAA20;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
|
| | | TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
|
| | | TransBytes (out AdvanceMinutes, vBytes, NetDataType.WORD);
|
| | | TransBytes (out IsDayReset, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out ResetType, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out LimitLV, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayCnt, vBytes, NetDataType.BYTE);
|
| | | DayInfoList = new tagMCFeastWeekPartyDayInfo[DayCnt];
|
| | | for (int i = 0; i < DayCnt; i ++) {
|
| | | DayInfoList[i] = new tagMCFeastWeekPartyDayInfo();
|
| | | TransBytes (out DayInfoList[i].ActCnt, vBytes, NetDataType.BYTE);
|
| | | TransBytes (out DayInfoList[i].TemplateList, vBytes, NetDataType.WORD, DayInfoList[i].ActCnt);
|
| | | TransBytes (out DayInfoList[i].PCount, vBytes, NetDataType.BYTE);
|
| | | DayInfoList[i].PItemInfo = new tagMCFeastWeekPartyItem[DayInfoList[i].PCount];
|
| | | for (int j = 0; j < DayInfoList[i].PCount; j ++) {
|
| | | DayInfoList[i].PItemInfo[j] = new tagMCFeastWeekPartyItem();
|
| | | TransBytes (out DayInfoList[i].PItemInfo[j].NeedPoint, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayInfoList[i].PItemInfo[j].ItemID, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out DayInfoList[i].PItemInfo[j].ItemCnt, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayInfoList[i].PItemInfo[j].IsBind, vBytes, NetDataType.BYTE);
|
| | | }
|
| | | }
|
| | | TransBytes (out TCount, vBytes, NetDataType.BYTE);
|
| | | ActionInfo = new tagMCFeastWeekPartyAction[TCount];
|
| | | for (int i = 0; i < TCount; i ++) {
|
| | | ActionInfo[i] = new tagMCFeastWeekPartyAction();
|
| | | TransBytes (out ActionInfo[i].TemplateID, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].ActionType, vBytes, NetDataType.WORD);
|
| | | TransBytes (out ActionInfo[i].TotalTimes, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].SingleTimes, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].Point, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].Count, vBytes, NetDataType.BYTE);
|
| | | ActionInfo[i].ItemInfo = new tagMCFeastWeekPartyItem[ActionInfo[i].Count];
|
| | | for (int j = 0; j < ActionInfo[i].Count; j ++) {
|
| | | ActionInfo[i].ItemInfo[j] = new tagMCFeastWeekPartyItem();
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].NeedPoint, vBytes, NetDataType.WORD);
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].ItemID, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].ItemCnt, vBytes, NetDataType.WORD);
|
| | | TransBytes (out ActionInfo[i].ItemInfo[j].IsBind, vBytes, NetDataType.BYTE);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCFeastWeekPartyAction {
|
| | | public uint TemplateID; // 模板ID
|
| | | public ushort ActionType; // 活动类别
|
| | | public uint TotalTimes; // 可完成的总次数,0表示不限次数
|
| | | public uint SingleTimes; // 单次领奖需要的次数
|
| | | public uint Point; // 单次领奖积分
|
| | | public byte Count; // 物品数
|
| | | public tagMCFeastWeekPartyItem[] ItemInfo; // 物品信息
|
| | | }
|
| | |
|
| | | public struct tagMCFeastWeekPartyItem {
|
| | | public ushort NeedPoint; // 领奖需要积分
|
| | | public uint ItemID; // 物品ID
|
| | | public ushort ItemCnt; // 物品数量
|
| | | public byte IsBind; // 是否绑定
|
| | | }
|
| | |
|
| | | public struct tagMCFeastWeekPartyDayInfo {
|
| | | public byte ActCnt; // 数量
|
| | | public ushort[] TemplateList; // 模板列表
|
| | | public byte PCount; // 物品数
|
| | | public tagMCFeastWeekPartyItem[] PItemInfo; // 物品信息
|
| | | }
|
| | |
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: eeaeb20e0eb5d8c47a368fa5b96cfc98 |
| | | timeCreated: 1548641524 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine;
|
| | | using System.Collections;
|
| | |
|
| | | // AA 21 节日巡礼玩家活动信息 #tagMCFeastWeekPartyPlayerInfo
|
| | |
|
| | | public class HAA21_tagMCFeastWeekPartyPlayerInfo : GameNetPackBasic {
|
| | | public byte Count;
|
| | | public tagMCFeastWeekPartyDayPlayerInfo[] DayInfoList; //活动完成次数信息
|
| | |
|
| | | public HAA21_tagMCFeastWeekPartyPlayerInfo () {
|
| | | _cmd = (ushort)0xAA21;
|
| | | }
|
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out Count, vBytes, NetDataType.BYTE);
|
| | | DayInfoList = new tagMCFeastWeekPartyDayPlayerInfo[Count];
|
| | | for (int i = 0; i < Count; i ++) {
|
| | | DayInfoList[i] = new tagMCFeastWeekPartyDayPlayerInfo();
|
| | | TransBytes (out DayInfoList[i].DayIndex, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out DayInfoList[i].Point, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out DayInfoList[i].AwardRecord, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out DayInfoList[i].ACount, vBytes, NetDataType.DWORD);
|
| | | DayInfoList[i].TaskList = new tagMCFeastWeekPartyTaskInfo[DayInfoList[i].ACount];
|
| | | for (int j = 0; j < DayInfoList[i].ACount; j ++) {
|
| | | DayInfoList[i].TaskList[j] = new tagMCFeastWeekPartyTaskInfo();
|
| | | TransBytes (out DayInfoList[i].TaskList[j].TemplateID, vBytes, NetDataType.WORD);
|
| | | TransBytes (out DayInfoList[i].TaskList[j].CurTimes, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out DayInfoList[i].TaskList[j].GotTimes, vBytes, NetDataType.DWORD);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public struct tagMCFeastWeekPartyDayPlayerInfo {
|
| | | public uint DayIndex; //第X天
|
| | | public uint Point; //积分
|
| | | public uint AwardRecord; //积分领奖记录
|
| | | public uint ACount; //任务条目数
|
| | | public tagMCFeastWeekPartyTaskInfo[] TaskList; //活动完成次数信息
|
| | | }
|
| | |
|
| | | public struct tagMCFeastWeekPartyTaskInfo {
|
| | | public ushort TemplateID; // 模板ID
|
| | | public uint CurTimes; //已完成次数
|
| | | public uint GotTimes; //已领取次数
|
| | | }
|
| | |
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 726d8302a026f8941aa12b1844e92b1c |
| | | timeCreated: 1548641524 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | |
|
| | | public class HB213_tagMCZhuXianTowerInfo : GameNetPackBasic {
|
| | | public uint Floor; // 已通关层
|
| | | public uint LastFloor; // 上次挑战层
|
| | |
|
| | | public HB213_tagMCZhuXianTowerInfo () {
|
| | | _cmd = (ushort)0xB213;
|
| | |
| | |
|
| | | public override void ReadFromBytes (byte[] vBytes) {
|
| | | TransBytes (out Floor, vBytes, NetDataType.DWORD);
|
| | | TransBytes (out LastFloor, vBytes, NetDataType.DWORD);
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | else if (m_Hero.SelectTarget != null)
|
| | | {
|
| | | GActorNpcFight _npcFight = m_Hero.SelectTarget as GActorNpcFight;
|
| | | if (_npcFight != null && _fight.CanAtked())
|
| | | if (_npcFight != null && _npcFight.CanAtked())
|
| | | {
|
| | | _radius = _npcFight.NpcConfig.ModelRadius;
|
| | | }
|
| | |
| | | }
|
| | |
|
| | | _aAtkSkillPer = _aAtkSkillPer * Constants.F_DELTA;
|
| | | Dictionary<int, int> _attrValues;
|
| | | if (Snxxz.UI.CalculateSkillGetAttrHurtUtility.Instance.TryGetAttrDictBySkill(skill.id, out _attrValues))
|
| | | {
|
| | | foreach (var _per in _attrValues.Values)
|
| | | {
|
| | | _aAtkSkillPer += (_per * Constants.F_DELTA);
|
| | | }
|
| | | }
|
| | |
|
| | | // -------------- 公式计算 --------------
|
| | | float _value1;
|
| | |
| | | |
| | | var isBottom = model.IsBottomFloor(model.currentFloor); |
| | | |
| | | if (!isBottom && model.currentFloor > model.highestPassFloor) |
| | | if (!isBottom && model.currentFloor > model.lastChallengeFloor) |
| | | { |
| | | PerformChallengeNextLevel(); |
| | | } |
| | | else |
| | | { |
| | | WindowCenter.Instance.Open<JadeDynastyTowerHintWin>(); |
| | | model.RequestRefreshMonster(); |
| | | } |
| | | } |
| | |
| | |
|
| | | mission.lineID = PlayerDatas.Instance.baseData.dungeonLineId;
|
| | | mission.hurtInfo = hurts;
|
| | | mission.remainHPPer = (int)(surplusTime / totalTime * 100f);
|
| | | mission.remainHPPer = (int)(surplusTime / totalTime * 1000000f);
|
| | | mission.hpReduceSpeed = (int)(10000 / totalTime);
|
| | |
|
| | | dungeonModel.UpdateFakeDungeonMission(DemonJarModel.DEMONJAR_MAPID, mission);
|
| | |
| | | {
|
| | | if (inited)
|
| | | {
|
| | | var deltaHp = (long)(Time.deltaTime * model.mission.hpReduceSpeed * 0.0001f * BOSSHP_TOTAL);
|
| | | var deltaHp = (long)(Time.deltaTime * model.mission.hpReduceSpeed * 0.0001d * BOSSHP_TOTAL);
|
| | | currentHp = currentHp - deltaHp;
|
| | | if (currentHp <= 0)
|
| | | {
|
| | |
| | | {
|
| | | m_BossLifeBar.gameObject.SetActive(true);
|
| | | var npcConfig = Config.Instance.Get<NPCConfig>(TargetBriefInfo.selectedNpcId);
|
| | | currentHp = (long)(model.mission.remainHPPer * 0.01f * BOSSHP_TOTAL);
|
| | | m_BossLifeBar.SetBaseInfo(TargetBriefInfo.selectedNpcId, (ulong)currentHp, BOSSHP_TOTAL, npcConfig.NPCLV);
|
| | | currentHp = (long)(model.mission.remainHPPer * 0.000001d * BOSSHP_TOTAL);
|
| | |
|
| | | m_BossLifeBar.SetBaseInfo(TargetBriefInfo.selectedNpcId, (ulong)currentHp, BOSSHP_TOTAL, npcConfig.NPCLV);
|
| | | inited = true;
|
| | | }
|
| | |
|
| | |
|
| | | private void UpdateServerRemainHP()
|
| | | {
|
| | | currentHp = (long)(model.mission.remainHPPer * 0.01f * BOSSHP_TOTAL);
|
| | | currentHp = (long)(model.mission.remainHPPer * 0.000001d * BOSSHP_TOTAL);
|
| | | }
|
| | |
|
| | | public void RefreshBossLifeBar()
|
| | |
| | | |
| | | public static int crossServerOneVsOneOpenDay { get; private set; } |
| | | public static int UISpringDecorate { get; private set; } |
| | | public static Dictionary<int, List<int>> skillAttrIDDict { get; private set; }
|
| | | |
| | | public static void Init() |
| | | { |
| | |
| | | trailBossHeadIcons.Add(_npcId, _trailBossJson[_key].ToString()); |
| | | } |
| | | } |
| | |
|
| | | var skillPlusAttrIDJson = LitJson.JsonMapper.ToObject(GetInputString("SkillPlusAttrID", 2));
|
| | | skillAttrIDDict = new Dictionary<int, List<int>>();
|
| | | foreach(var key in skillPlusAttrIDJson.Keys)
|
| | | {
|
| | | int attrId = int.Parse(key);
|
| | | var skillIds = skillPlusAttrIDJson[key];
|
| | | foreach (var skillId in skillIds)
|
| | | {
|
| | | int id = int.Parse(skillId.ToString());
|
| | | if(!skillAttrIDDict.ContainsKey(id))
|
| | | {
|
| | | List<int> list = new List<int>();
|
| | | list.Add(attrId);
|
| | | skillAttrIDDict.Add(id,list);
|
| | | }
|
| | | else
|
| | | {
|
| | | skillAttrIDDict[id].Add(attrId);
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | var _godWeaponJson = LitJson.JsonMapper.ToObject(GetInputString("GodModel", 1)); |
| | | godWeaponMobs = new Dictionary<int, string>(); |
| | | foreach (var _key in _godWeaponJson.Keys) |
| | |
| | | } |
| | | } |
| | | |
| | | public static List<int> GetAttrIdsBySkill(int _skillId)
|
| | | {
|
| | | if(skillAttrIDDict.ContainsKey(_skillId))
|
| | | {
|
| | | return skillAttrIDDict[_skillId];
|
| | | }
|
| | | return null;
|
| | | }
|
| | |
|
| | | public static string GetOtherJobHeadPortrait(int _job, int _ReincarnationLv) |
| | | { |
| | | if (otherjobHeadPortrait.ContainsKey(_job) && otherjobHeadPortrait[_job].ContainsKey(_ReincarnationLv)) |
| | |
| | | const int REDPOINTID_03 = 21503; |
| | | const int FUNCTIONID = 164; |
| | | |
| | | public int lastChallengeFloor { get; private set; } |
| | | public int highestPassFloor { get; private set; } |
| | | public int currentFloor { |
| | | get { |
| | |
| | | |
| | | public void UpdateHighestPassFloor(HB213_tagMCZhuXianTowerInfo info) |
| | | { |
| | | lastChallengeFloor = (int)info.LastFloor; |
| | | var oldRecorder = highestPassFloor; |
| | | highestPassFloor = (int)info.Floor; |
| | | if (serverInited && highestPassFloor > oldRecorder) |
| | |
| | | |
| | | public void OnMapInitOk() |
| | | { |
| | | switch (PlayerDatas.Instance.baseData.MapID) |
| | | { |
| | | case DATA_MAPID: |
| | | RequestRefreshMonster(); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | private void UpateRedpoint() |
| | |
| | | ItemConfig itemConfig = Config.Instance.Get<ItemConfig>(id);
|
| | | this.ItemId = id;
|
| | | nameText.text = itemConfig.ItemName;
|
| | | ItemCellModel cellModel = new ItemCellModel(id, false, (ulong)BoxModel.selectDict[id],0,"",PackType.rptDeleted,true);
|
| | | ItemCellModel cellModel = new ItemCellModel(id, true, (ulong)BoxModel.selectDict[id],0,"",PackType.rptDeleted,true);
|
| | | itemBaisc.Init(cellModel);
|
| | | if (itemConfig.Effect1 == 220)
|
| | | {
|
| | | id = itemConfig.EffectValueA1;
|
| | | }
|
| | | int haveCnt = playerPack.GetItemCountByID(PackType.rptItem,id);
|
| | | if(haveCnt <= 0)
|
| | | var packType = GeneralDefine.GetPackTypeByItemType(itemConfig.Type);
|
| | | int haveCnt = 0;
|
| | | switch(packType)
|
| | | {
|
| | | case PackType.rptRunePack:
|
| | | haveCnt = ModelCenter.Instance.GetModel<RuneModel>().GetRuneCountById(id);
|
| | | break;
|
| | | case PackType.rptGatherSoul:
|
| | | haveCnt = ModelCenter.Instance.GetModel<VirtualPackModel>().GetItemCountById(packType,id);
|
| | | break;
|
| | | default:
|
| | | haveCnt = playerPack.GetItemCountByID(packType, id);
|
| | | break;
|
| | | }
|
| | | haveCntText.text = haveCnt.ToString();
|
| | | SetIsChoose(false);
|
| | |
| | | CrossServerOneVsOneRewardModel m_CrossServerRewardModel;
|
| | | CrossServerOneVsOneRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerOneVsOneRewardModel>()); } }
|
| | | OpenServiceAchievementModel OpenServerModel { get { return ModelCenter.Instance.GetModel<OpenServiceAchievementModel>(); } }
|
| | | SpringFestivalModel springFestival { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } }
|
| | | public void Init()
|
| | | {
|
| | | if (LatencyTimeList.Count <= 0)
|
| | |
| | | impactRankModel.inImpactRankUpdate += InImpactRankUpdate;
|
| | | OpenServerModel.IsOpenEvent += IsOpenEvent;
|
| | | OpenServerModel.IsPreviewTimeUpdate += IsOpenEvent;
|
| | | OperationTimeHepler.Instance.operationAdvanceEvent += OperationAdvanceEvent;
|
| | | }
|
| | |
|
| | | public void Unit()
|
| | |
| | | impactRankModel.inImpactRankUpdate -= InImpactRankUpdate;
|
| | | OpenServerModel.IsOpenEvent -= IsOpenEvent;
|
| | | OpenServerModel.IsPreviewTimeUpdate -= IsOpenEvent;
|
| | | OperationTimeHepler.Instance.operationAdvanceEvent -= OperationAdvanceEvent;
|
| | | }
|
| | |
|
| | | private void OperationAdvanceEvent(Operation obj)
|
| | | {
|
| | | Classify();
|
| | | }
|
| | |
|
| | | private void IsOpenEvent()
|
| | |
| | |
|
| | | private void operationEndEvent(Operation arg1, int arg2)
|
| | | {
|
| | | if (arg1 == Operation.FairyCeremony || arg1== Operation.NewYearFairyCeremony)
|
| | | {
|
| | | Classify();
|
| | | }
|
| | | }
|
| | |
|
| | | private void operationStartEvent(Operation arg1, int arg2)
|
| | | {
|
| | | if (arg1 == Operation.FairyCeremony || arg1 == Operation.NewYearFairyCeremony)
|
| | | {
|
| | | Classify();
|
| | | }
|
| | | |
| | | }
|
| | |
|
| | | private void UpdateRedpoint(int redPointID)
|
| | |
| | | }
|
| | | else if (IndexOf == 4)
|
| | | {
|
| | | bool Isopen = OpenServerModel.IsOpen;
|
| | | if (!AnimationFadeOutDicLow.ContainsKey(highBtnRecord.Index) && Isopen)//7天寻礼
|
| | | bool Isopen = OpenServerModel.IsOpenFeatures();
|
| | | bool _isOpen = springFestival.IsOpenFeatures();
|
| | | if (!AnimationFadeOutDicLow.ContainsKey(highBtnRecord.Index) && (Isopen || _isOpen))//7天寻礼
|
| | | {
|
| | | if (AnimationFadeOutDicLow.Count < 6)//------第二层
|
| | | {
|
| | |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI { |
| | | namespace Snxxz.UI
|
| | | { |
| | | //成就活动面板 |
| | | public class AchievementActivityWin : Window |
| | | { |
| | |
| | | [SerializeField] Button _LeftBtn;
|
| | | [SerializeField] Button _RightBtn; |
| | | [SerializeField] FunctionButton m_OpenServiceAchievementBtn;//周狂欢 |
| | | [SerializeField] FunctionButton m_SpringFestival;//春节活动
|
| | | OpenServiceAchievementModel openServiceAchievementModel { get { return ModelCenter.Instance.GetModel<OpenServiceAchievementModel>(); } }
|
| | | SpringFestivalModel springFestivalModel { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } } |
| | | protected override void BindController() |
| | | { |
| | | } |
| | |
| | | _LeftBtn.AddListener(OnClickLeftBtn);
|
| | | _RightBtn.AddListener(OnClickRight); |
| | | m_OpenServiceAchievementBtn.AddListener(OpenServiceAchievementButton); |
| | | m_SpringFestival.AddListener(SpringFestivalButton); |
| | | } |
| | | |
| | | protected override void OnPreOpen() |
| | | {
|
| | | OperationTimeHepler.Instance.operationStartEvent += operationStartEvent;
|
| | | IsButtonNumber();
|
| | | if (WindowCenter.Instance.IsOpen<MainInterfaceWin>())
|
| | | {
|
| | | WindowCenter.Instance.Close<MainInterfaceWin>();
|
| | | } |
| | | if (openServiceAchievementModel.IsOpenFeatures())
|
| | | {
|
| | | functionOrder = 0;
|
| | | |
| | | }
|
| | | else if (springFestivalModel.IsOpenFeatures())
|
| | | {
|
| | | functionOrder = 1;
|
| | | }
|
| | | } |
| | | |
| | | protected override void OnActived()
|
| | |
| | | } |
| | | protected override void OnAfterOpen() |
| | | { |
| | | OperationTimeHepler.Instance.operationStartEvent -= operationStartEvent;
|
| | | }
|
| | | |
| | | private void operationStartEvent(Operation arg1, int arg2)
|
| | | {
|
| | | if (arg1 == Operation.SpringFestival || arg1== Operation.OpenServiceAchievement)
|
| | | {
|
| | | IsButtonNumber();
|
| | | }
|
| | | } |
| | | |
| | | protected override void OnPreClose() |
| | |
| | | {
|
| | | WindowCenter.Instance.CloseImmediately<OpenServiceAchievementWin>();
|
| | | }
|
| | | if (WindowCenter.Instance.IsOpen<SpringFestivalWin>())
|
| | | {
|
| | | WindowCenter.Instance.CloseImmediately<SpringFestivalWin>();
|
| | | }
|
| | | } |
| | | |
| | | private void OpenServiceAchievementButton()
|
| | |
| | | }
|
| | | functionOrder = 0;
|
| | | } |
| | | private void SpringFestivalButton()
|
| | | {
|
| | | CloseChild();
|
| | | if (windowState == WindowState.Opened)
|
| | | {
|
| | | WindowCenter.Instance.OpenWithoutAnimation<SpringFestivalWin>();
|
| | | }
|
| | | else
|
| | | {
|
| | | WindowCenter.Instance.Open<SpringFestivalWin>(true);
|
| | | }
|
| | | functionOrder = 1;
|
| | | } |
| | | #endregion |
| | |
|
| | | private void IsButtonNumber()
|
| | | {
|
| | | if (openServiceAchievementModel.IsOpenFeatures())
|
| | | {
|
| | | m_OpenServiceAchievementBtn.gameObject.SetActive(true);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_OpenServiceAchievementBtn.gameObject.SetActive(false);
|
| | | }
|
| | | if (springFestivalModel.IsOpenFeatures())
|
| | | {
|
| | | m_SpringFestival.gameObject.SetActive(true);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_SpringFestival.gameObject.SetActive(false);
|
| | | }
|
| | | }
|
| | | } |
| | | |
| | | } |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, December 10, 2018 |
| | | //-------------------------------------------------------- |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI { |
| | | [XLua.Hotfix] |
| | | public class EntryInformationCell:MonoBehaviour { |
| | | [SerializeField] ItemCell m_ItemCell; |
| | | [SerializeField] Text m_Text1; |
| | | [SerializeField] Text m_Text2; |
| | | [SerializeField] Button m_Button; |
| | | [SerializeField] Text m_ButtonText;
|
| | | LoginRewardModel m_LoginRewardModel; |
| | | LoginRewardModel loginRewardModel { get { return m_LoginRewardModel ?? (m_LoginRewardModel = ModelCenter.Instance.GetModel<LoginRewardModel>()); } } |
| | | public Button mButton
|
| | | {
|
| | | get { return m_Button; }
|
| | | set { m_Button = value; }
|
| | | } |
| | | |
| | | public void GetDisplayInformation(int id)
|
| | | {
|
| | |
|
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 2df4f76a8cbf84e4d820e06234d5a875 |
| | | timeCreated: 1544409750 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, January 21, 2019 |
| | | //-------------------------------------------------------- |
| | | using System;
|
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | |
| | | namespace Snxxz.UI { |
| | | |
| | | public class EventDaysTime: OperationBase
|
| | | { |
| | | public int GetInDayNow()
|
| | | {
|
| | | return base.IndexOfDays(TimeUtility.ServerNow);
|
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: c1691eb2a2ee9604b86be65cb98bfca3 |
| | | timeCreated: 1548038322 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, January 28, 2019 |
| | | //-------------------------------------------------------- |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | using UnityEngine.UI; |
| | | using System;
|
| | | using TableConfig;
|
| | |
|
| | | namespace Snxxz.UI
|
| | | { |
| | | |
| | | public class HolidayHomingIcon : MonoBehaviour
|
| | | { |
| | | [SerializeField] Image m_Icon; |
| | | private string Iconkey1 = string.Empty;
|
| | | private string Iconkey2 = string.Empty;
|
| | | OpenServiceAchievementModel openServiceAchievementModel { get { return ModelCenter.Instance.GetModel<OpenServiceAchievementModel>(); } }
|
| | | SpringFestivalModel springFestivalModel { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } } |
| | | private void Awake()
|
| | | {
|
| | | OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
|
| | | OperationTimeHepler.Instance.dayResetEvent -= DayResetEvent;
|
| | | OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
|
| | | OperationTimeHepler.Instance.dayResetEvent += DayResetEvent;
|
| | | var funconfig = Config.Instance.Get<FuncConfigConfig>("HolidayHomingIcon");
|
| | | Iconkey1 = funconfig.Numerical1;
|
| | | Iconkey2 = funconfig.Numerical2;
|
| | | }
|
| | |
|
| | |
|
| | |
|
| | | private void OnEnable()
|
| | | {
|
| | | SetIcon();
|
| | | } |
| | | private void SetIcon()
|
| | | {
|
| | | if (openServiceAchievementModel.IsOpenFeatures())
|
| | | {
|
| | | m_Icon.SetSprite(Iconkey1);
|
| | | }
|
| | | else if (springFestivalModel.IsOpenFeatures())
|
| | | {
|
| | | m_Icon.SetSprite(Iconkey2);
|
| | | }
|
| | | } |
| | | private void DayResetEvent(int obj)
|
| | | {
|
| | | if (obj == (int)Operation.OpenServiceAchievement || obj == (int)Operation.SpringFestival)
|
| | | {
|
| | | SetIcon();
|
| | | }
|
| | | }
|
| | |
|
| | | private void OperationStartEvent(Operation arg1, int arg2)
|
| | | {
|
| | | if (arg1 == Operation.OpenServiceAchievement || arg1 == Operation.SpringFestival)
|
| | | {
|
| | | SetIcon();
|
| | | }
|
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 7f574cca031dd7e4e93d6ace04260f95 |
| | | timeCreated: 1548658770 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Friday, December 07, 2018 |
| | | //-------------------------------------------------------- |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI { |
| | | //登录奖励天数标签 |
| | | [XLua.Hotfix] |
| | | public class LogInDayNumber:MonoBehaviour {
|
| | | [SerializeField] Button m_DayNumberBtn; |
| | | [SerializeField] ImageEx m_DayNumberImage; |
| | | [SerializeField] ImageEx m_SelectedImage; |
| | | [SerializeField] GameObject m_Obj1; |
| | | [SerializeField] Text m_DayText1; |
| | | [SerializeField] GameObject m_Obj2;
|
| | | [SerializeField] Text m_DayText2;
|
| | | LoginRewardModel m_LoginRewardModel; |
| | | LoginRewardModel loginRewardModel { get { return m_LoginRewardModel ?? (m_LoginRewardModel = ModelCenter.Instance.GetModel<LoginRewardModel>()); } } |
| | | public Button DayNumberBtn
|
| | | {
|
| | | get { return m_DayNumberBtn; }
|
| | | set { m_DayNumberBtn = value; }
|
| | | } |
| | | |
| | | public void SetInDayNumber(int day,int clockDayNow)
|
| | | {
|
| | | if (day == clockDayNow)
|
| | | {
|
| | | m_SelectedImage.gameObject.SetActive(true);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_SelectedImage.gameObject.SetActive(false);
|
| | | }
|
| | | if (day > loginRewardModel.DayNow)
|
| | | {
|
| | | m_SelectedImage.gray = true;
|
| | | m_DayNumberImage.gray = true;
|
| | | m_Obj1.SetActive(false);
|
| | | m_Obj2.SetActive(true);
|
| | | m_DayText2.text = (day + 1).ToString();
|
| | | }
|
| | | else
|
| | | {
|
| | | m_SelectedImage.gray = false;
|
| | | m_DayNumberImage.gray = false;
|
| | | m_Obj1.SetActive(true);
|
| | | m_Obj2.SetActive(false);
|
| | | m_DayText1.text= (day + 1).ToString();
|
| | | }
|
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 8df633ca001b5e24298dcad5c878087d |
| | | timeCreated: 1544167978 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, December 10, 2018 |
| | | //-------------------------------------------------------- |
| | | using System;
|
| | | using System.Collections.Generic;
|
| | | using TableConfig;
|
| | | using Snxxz.UI; |
| | | //登录奖励 |
| | | [XLua.LuaCallCSharp]
|
| | | public class LoginRewardModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk
|
| | | {
|
| | | public event Action LoginAwardInfoUpdate;//领奖记录变更 |
| | | public Dictionary<int, WeekPartyDayInfoClass> LoginAwardInfoDic = new Dictionary<int, WeekPartyDayInfoClass>();//领奖信息
|
| | | public Dictionary<int, WeekPartyDayClass> LoginAwardDayDic = new Dictionary<int, WeekPartyDayClass>();//每天的奖励信息
|
| | | public Dictionary<int, WeekPartyActionClass> LoginAwardDic = new Dictionary<int, WeekPartyActionClass>();//活动模板信息
|
| | | public Dictionary<int, Redpoint> RedPointDic = new Dictionary<int, Redpoint>();//红点
|
| | | public int DayNow = 0;//当前天
|
| | | public int SelectedNow = 0;//获取选择天
|
| | | public int LimitLV = 0;//限制等级
|
| | | private const int Redpoint_key = 6666;//登录奖励红点
|
| | | public Redpoint redPointStre = new Redpoint(666, Redpoint_key);
|
| | | public override void Init()
|
| | | {
|
| | | |
| | | }
|
| | |
|
| | | public void OnBeforePlayerDataInitialize()
|
| | | {
|
| | | LoginAwardInfoDic.Clear();
|
| | | }
|
| | |
|
| | | public void OnPlayerLoginOk()
|
| | | {
|
| | | GetDay();
|
| | | SetRedPoint();
|
| | | }
|
| | |
|
| | | public override void UnInit()
|
| | | {
|
| | | |
| | | }
|
| | |
|
| | | public void LoginAwardInfo(HAA0C_tagMCActLoginAwardInfo info)//登录奖励活动信息
|
| | | {
|
| | | LimitLV = info.LimitLV;
|
| | | LoginAwardDayDic.Clear();
|
| | | LoginAwardDic.Clear();
|
| | | for (int i = 0; i < info.DayCnt; i++)//每天的奖励信息
|
| | | {
|
| | | int Index = i;
|
| | | var dayInfo = info.DayInfoList[i];
|
| | | WeekPartyDayClass loginAwardDay = new WeekPartyDayClass();
|
| | | loginAwardDay.TemplateList = new int[dayInfo.ActCnt];
|
| | | for (int k = 0; k < dayInfo.ActCnt; k++)
|
| | | {
|
| | | loginAwardDay.TemplateList[k] = dayInfo.TemplateList[k];
|
| | | }
|
| | | if (LoginAwardDayDic.ContainsKey(Index))
|
| | | {
|
| | | LoginAwardDayDic[Index] = loginAwardDay;
|
| | | }
|
| | | else
|
| | | {
|
| | | LoginAwardDayDic.Add(Index, loginAwardDay);
|
| | | }
|
| | | }
|
| | |
|
| | | for (int i = 0; i < info.TCount; i++)// 活动模板信息
|
| | | {
|
| | | var ActionInfo = info.ActionInfo[i];
|
| | | var templateID = (int)ActionInfo.TemplateID;
|
| | | WeekPartyActionClass loginAward = new WeekPartyActionClass();
|
| | | loginAward.TemplateID = (int)ActionInfo.TemplateID;
|
| | | loginAward.ActionType = (int)ActionInfo.ActionType;
|
| | | loginAward.TotalTimes = (int)ActionInfo.TotalTimes;
|
| | | loginAward.SingleTimes = (int)ActionInfo.SingleTimes;
|
| | | loginAward.WeekPartyItem = new WeekPartyItemClass[ActionInfo.Count];
|
| | | for (int z = 0; z < ActionInfo.Count; z++)
|
| | | {
|
| | | var item = ActionInfo.ItemInfo[z];
|
| | | WeekPartyItemClass loginAwardItem = new WeekPartyItemClass();
|
| | | loginAwardItem.ItemID = (int)item.ItemID;
|
| | | loginAwardItem.ItemCnt = (int)item.ItemCnt;
|
| | | loginAwardItem.IsBind = item.IsBind;
|
| | | loginAward.WeekPartyItem[z] = loginAwardItem;
|
| | | }
|
| | | if (LoginAwardDic.ContainsKey(templateID))
|
| | | {
|
| | | LoginAwardDic[templateID] = loginAward;
|
| | | }
|
| | | else
|
| | | {
|
| | | LoginAwardDic.Add(templateID, loginAward);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public void LoginAwardPlayerInfo(HAA0D_tagMCActLoginAwardPlayerInfo info)//登录奖励玩家活动信息
|
| | | {
|
| | | for (int i = 0; i < info.Count; i++)
|
| | | {
|
| | | var Dayinfo = info.DayInfoList[i];
|
| | | WeekPartyDayInfoClass loginAwardPlayerClass = new WeekPartyDayInfoClass();
|
| | | var dayindex = (int)Dayinfo.DayIndex;
|
| | | loginAwardPlayerClass.DayIndex = dayindex;
|
| | | if (LoginAwardInfoDic.ContainsKey(dayindex))
|
| | | {
|
| | | var dit = LoginAwardInfoDic[dayindex];
|
| | | dit.DayIndex = dayindex;
|
| | | for (int j = 0; j < Dayinfo.ACount; j++)
|
| | | {
|
| | | var taskList = Dayinfo.TaskList[j];
|
| | | int Index = dit.ActionType.FindIndex(s => s.TemplateID == taskList.TemplateID);
|
| | | if (Index != -1)
|
| | | {
|
| | | dit.ActionType[Index].CurTimes = taskList.CurTimes;
|
| | | dit.ActionType[Index].GotTimes = taskList.GotTimes;
|
| | | }
|
| | | else
|
| | | {
|
| | | ActionTypeClass ActionType = new ActionTypeClass();
|
| | | ActionType.TemplateID = taskList.TemplateID;
|
| | | ActionType.CurTimes = taskList.CurTimes;
|
| | | ActionType.GotTimes = taskList.GotTimes;
|
| | | dit.ActionType.Add(ActionType);
|
| | | }
|
| | | }
|
| | | LoginAwardInfoDic[dayindex] = dit;
|
| | | }
|
| | | else
|
| | | {
|
| | | loginAwardPlayerClass.ActionType = new List<ActionTypeClass>();
|
| | | for (int k = 0; k < Dayinfo.ACount; k++)
|
| | | {
|
| | | var Task = Dayinfo.TaskList[k];
|
| | | ActionTypeClass ActionType = new ActionTypeClass();
|
| | | ActionType.TemplateID = Task.TemplateID;
|
| | | ActionType.CurTimes = Task.CurTimes;
|
| | | ActionType.GotTimes = Task.GotTimes;
|
| | | loginAwardPlayerClass.ActionType.Add(ActionType);
|
| | | }
|
| | | LoginAwardInfoDic.Add(dayindex, loginAwardPlayerClass);
|
| | | }
|
| | | }
|
| | | SetRedPoint();
|
| | | if (LoginAwardInfoUpdate != null)
|
| | | {
|
| | | LoginAwardInfoUpdate();
|
| | | }
|
| | | }
|
| | |
|
| | | public int GetRewardNumber(int Day, int ID)//获取领奖次数
|
| | | {
|
| | | int Num = 0;
|
| | | if (LoginAwardInfoDic.ContainsKey(Day))
|
| | | {
|
| | | var loginAward = LoginAwardInfoDic[Day];
|
| | | for (int i = 0; i < loginAward.ActionType.Count; i++)
|
| | | {
|
| | | var ActionType = loginAward.ActionType[i];
|
| | | if (ID == ActionType.TemplateID)
|
| | | {
|
| | | Num = ActionType.GotTimes;
|
| | | }
|
| | | }
|
| | | }
|
| | | return Num;
|
| | | }
|
| | |
|
| | | public int GetCarryOutNum(int Day,int ID)//获取已完成次数
|
| | | {
|
| | | int Num = 0;
|
| | | if (LoginAwardInfoDic.ContainsKey(Day))
|
| | | {
|
| | | var loginAward = LoginAwardInfoDic[Day];
|
| | | for (int i = 0; i < loginAward.ActionType.Count; i++)
|
| | | {
|
| | | var ActionType = loginAward.ActionType[i];
|
| | | if (ID == ActionType.TemplateID)
|
| | | {
|
| | | Num = ActionType.CurTimes;
|
| | | }
|
| | | }
|
| | | }
|
| | | return Num;
|
| | | }
|
| | |
|
| | | public void SendLoginAwardInfo(int day, int temdayplateID)//领取奖励
|
| | | {
|
| | | CA504_tagCMPlayerGetReward getReward = new CA504_tagCMPlayerGetReward();
|
| | | getReward.RewardType = (byte)GotServerRewardType.Def_RewardType_ActLoginAwardAct;
|
| | | getReward.DataEx = (uint)day;
|
| | | string StrID = temdayplateID.ToString();
|
| | | getReward.DataExStrLen = (byte)StrID.Length;
|
| | | getReward.DataExStr = StrID;
|
| | | GameNetSystem.Instance.SendInfo(getReward);
|
| | | }
|
| | |
|
| | | private void SetRedPoint()//红点设置
|
| | | {
|
| | | SetRedPointID();
|
| | | foreach (var key in RedPointDic.Keys)
|
| | | {
|
| | | RedPointDic[key].state = RedPointState.None;
|
| | | }
|
| | | foreach (var key in RedPointDic.Keys)
|
| | | {
|
| | | RedPointDic[key].state = SetRedPointState(key);
|
| | | }
|
| | | }
|
| | | private void SetRedPointID()//设置红点ID
|
| | | {
|
| | | if (RedPointDic.Count > 0)
|
| | | {
|
| | | return;
|
| | | }
|
| | | foreach (var key in LoginAwardInfoDic.Keys)
|
| | | {
|
| | | int RedPoint = Redpoint_key * 10 + key;
|
| | | if (!RedPointDic.ContainsKey(key))
|
| | | {
|
| | | Redpoint redPointMountStare = new Redpoint(Redpoint_key, RedPoint);
|
| | | RedPointDic.Add(key, redPointMountStare);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | private RedPointState SetRedPointState(int day)//红点状态设置
|
| | | {
|
| | | if (!LoginAwardDayDic.ContainsKey(day) || !LoginAwardInfoDic.ContainsKey(day))
|
| | | {
|
| | | return RedPointState.None;
|
| | | }
|
| | | WeekPartyDayClass loginAward = new WeekPartyDayClass();
|
| | | foreach (var key in LoginAwardDayDic.Keys)
|
| | | {
|
| | | if (key == day)
|
| | | {
|
| | | loginAward = LoginAwardDayDic[key];
|
| | | }
|
| | | }
|
| | | for (int i = 0; i < loginAward.TemplateList.Length; i++)
|
| | | {
|
| | | var TemplateID = loginAward.TemplateList[i];
|
| | | if (LoginAwardDic.ContainsKey(TemplateID))
|
| | | {
|
| | | var LoginAward = LoginAwardDic[TemplateID];
|
| | | int number = LoginAward.TotalTimes / LoginAward.SingleTimes;
|
| | | int rewardNum = GetRewardNumber(day, TemplateID);//已领奖次数
|
| | | int carryOutNum = GetCarryOutNum(day, TemplateID);//已完成次数
|
| | | int TaypeNumber = 0;
|
| | | if (carryOutNum - rewardNum > 0)
|
| | | {
|
| | | TaypeNumber = (carryOutNum - rewardNum) / LoginAward.SingleTimes;
|
| | | }
|
| | | if (TaypeNumber > 0 && rewardNum < number)
|
| | | {
|
| | | return RedPointState.GetReward;
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | | return RedPointState.None;
|
| | | }
|
| | |
|
| | | private void GetDay()
|
| | | {
|
| | | OperationBase operationBase;
|
| | | if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.LoginReward, out operationBase))
|
| | | {
|
| | | DayNow = (operationBase as EventDaysTime).GetInDayNow();
|
| | | }
|
| | | }
|
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 57fcce9a94d2fc743bc2d1f6ef954fa3 |
| | | timeCreated: 1544410332 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Friday, December 07, 2018 |
| | | //-------------------------------------------------------- |
| | | |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI { |
| | | [XLua.Hotfix] |
| | | public class LoginRewardWin : Window |
| | | { |
| | | //登录奖励 |
| | | #region Built-in |
| | | [SerializeField] ScrollerController m_ScrollerController_1;
|
| | | [SerializeField] ScrollerController m_ScrollerController_2;
|
| | | LoginRewardModel m_LoginRewardModel; |
| | | LoginRewardModel loginRewardModel { get { return m_LoginRewardModel ?? (m_LoginRewardModel = ModelCenter.Instance.GetModel<LoginRewardModel>()); } }
|
| | | List<int> SortList = new List<int>();
|
| | | protected override void BindController() |
| | | {
|
| | | m_ScrollerController_1.OnRefreshCell += OnRefreshGridCell_1;
|
| | | m_ScrollerController_2.OnRefreshCell += OnRefreshGridCell_2; |
| | | } |
| | | |
| | | protected override void AddListeners() |
| | | { |
| | | } |
| | | |
| | | protected override void OnPreOpen() |
| | | { |
| | | ChooseDay(); |
| | | OnCreateGridLineCell_1(m_ScrollerController_1);
|
| | | OnCreateGridLineCell_2(m_ScrollerController_2); |
| | | if (loginRewardModel.SelectedNow >= 3)
|
| | | {
|
| | | m_ScrollerController_1.JumpIndex(loginRewardModel.SelectedNow);
|
| | | } |
| | | } |
| | | |
| | | protected override void OnAfterOpen() |
| | | { |
| | | loginRewardModel.LoginAwardInfoUpdate += LoginAwardInfoUpdate; |
| | | } |
| | | |
| | | protected override void OnPreClose() |
| | | { |
| | | } |
| | | |
| | | protected override void OnAfterClose() |
| | | {
|
| | | loginRewardModel.LoginAwardInfoUpdate -= LoginAwardInfoUpdate; |
| | | }
|
| | |
|
| | | private void LoginAwardInfoUpdate()
|
| | | {
|
| | | m_ScrollerController_1.m_Scorller.RefreshActiveCellViews();
|
| | | m_ScrollerController_2.m_Scorller.RefreshActiveCellViews();
|
| | | }
|
| | | #endregion |
| | | void OnCreateGridLineCell_1(ScrollerController gridCtrl)
|
| | | {
|
| | | gridCtrl.Refresh();
|
| | | foreach (var key in loginRewardModel.LoginAwardDayDic.Keys)
|
| | | {
|
| | | gridCtrl.AddCell(ScrollerDataType.Header, key);
|
| | | }
|
| | | gridCtrl.Restart();
|
| | | } |
| | | private void OnRefreshGridCell_1(ScrollerDataType type, CellView cell)
|
| | | {
|
| | | int Index = cell.index;
|
| | | LogInDayNumber logInDayNumber = cell.GetComponent<LogInDayNumber>();
|
| | | logInDayNumber.SetInDayNumber(Index, loginRewardModel.SelectedNow);
|
| | | logInDayNumber.DayNumberBtn.SetListener(()=> |
| | | {
|
| | | if (loginRewardModel.SelectedNow != Index)
|
| | | {
|
| | | loginRewardModel.SelectedNow = Index;
|
| | | m_ScrollerController_1.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | OnCreateGridLineCell_2(m_ScrollerController_2);
|
| | | }
|
| | | });
|
| | | }
|
| | | void OnCreateGridLineCell_2(ScrollerController gridCtrl)
|
| | | {
|
| | | gridCtrl.Refresh();
|
| | | for (int i = 0; i < 10; i++)
|
| | | {
|
| | | gridCtrl.AddCell(ScrollerDataType.Header, i);
|
| | | }
|
| | | gridCtrl.Restart();
|
| | | }
|
| | | private void OnRefreshGridCell_2(ScrollerDataType type, CellView cell)
|
| | | {
|
| | | int Index = cell.index;
|
| | | EntryInformationCell entryInformationCell = cell.GetComponent<EntryInformationCell>();
|
| | | entryInformationCell.GetDisplayInformation(1);
|
| | | entryInformationCell.mButton.SetListener(()=> |
| | | {
|
| | | // m_ScrollerController_2.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | });
|
| | | } |
| | | public void ChooseDay()//选择天
|
| | | {
|
| | | foreach (var key in loginRewardModel.RedPointDic.Keys)//红点选择可领取的天
|
| | | {
|
| | | if (loginRewardModel.RedPointDic[key].state == RedPointState.GetReward)
|
| | | {
|
| | | loginRewardModel.SelectedNow = key;
|
| | | return;
|
| | | }
|
| | | }
|
| | | loginRewardModel.SelectedNow = loginRewardModel.DayNow;
|
| | | } |
| | | |
| | | private void ToAddSorting()
|
| | | {
|
| | | SortList.Clear();
|
| | | foreach (var key in loginRewardModel.LoginAwardDayDic.Keys)
|
| | | {
|
| | | if (key == loginRewardModel.SelectedNow)
|
| | | {
|
| | | var loginReward = loginRewardModel.LoginAwardDayDic[key];
|
| | | for (int i = 0; i < loginReward.TemplateList.Length; i++)
|
| | | {
|
| | | var TemplateId = loginReward.TemplateList[i];
|
| | | SortList.Add(TemplateId);
|
| | | }
|
| | |
|
| | | }
|
| | | }
|
| | | SortList.Sort(Compare);
|
| | | }
|
| | | int Compare(int x, int y)//数组排列
|
| | | {
|
| | | return 1;
|
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: aba0dd26d09942440ae9339e4ef4120f |
| | | timeCreated: 1544166304 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | | }
|
| | | return _bool;
|
| | | }
|
| | | public bool IsOpenFeatures()
|
| | | {
|
| | | bool Isbool = false;
|
| | | Isbool = (OperationTimeHepler.Instance.SatisfyOpenCondition(Operation.OpenServiceAchievement)
|
| | | || OperationTimeHepler.Instance.SatisfyAdvanceCondition(Operation.OpenServiceAchievement));
|
| | | return Isbool;
|
| | | }
|
| | | } |
| | | |
| | | |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Tuesday, January 22, 2019 |
| | | //-------------------------------------------------------- |
| | | using EnhancedUI.EnhancedScroller;
|
| | | using System.Collections;
|
| | | using System.Collections.Generic;
|
| | | using TableConfig;
|
| | | using UnityEngine;
|
| | | using UnityEngine.UI; |
| | | using System; |
| | | |
| | | namespace Snxxz.UI
|
| | | {
|
| | | [XLua.Hotfix] |
| | | public class SpringFestivalCell : ScrollerUI
|
| | | { |
| | | [SerializeField] Text m_TextA;
|
| | | [SerializeField] Text m_TextB;
|
| | | [SerializeField] Text m_TextC;
|
| | | [SerializeField] Transform m_ItemList;
|
| | | [SerializeField] Button m_Btn;
|
| | | [SerializeField] Text m_BtnText;
|
| | | [SerializeField] GameObject m_Miss;//错过
|
| | | [SerializeField] GameObject m_Reach;//未达成
|
| | | [SerializeField] GameObject m_Draw;//已领取
|
| | | [SerializeField] Text m_TextNumber;//已领取次数
|
| | | SpringFestivalModel model { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } }
|
| | | ItemTipsModel _itemTipsModel;
|
| | | ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>()); } }
|
| | | public override void Refresh(CellView cell)
|
| | | {
|
| | | int ID = cell.index;
|
| | | var config = Config.Instance.Get<WeekPartyConfig>(ID);
|
| | | if (config == null || !model.SpringFestivalDic.ContainsKey(ID))
|
| | | {
|
| | | return;
|
| | | }
|
| | | var SpringFestival = model.SpringFestivalDic[ID];
|
| | | int rewardNum = model.GetRewardNumber(model.SelectedNow, ID);//已领奖次数
|
| | | int carryOutNum = model.GetCarryOutNum(model.SelectedNow, ID);//已完成次数
|
| | | int number = SpringFestival.TotalTimes / SpringFestival.SingleTimes;
|
| | | var RemainingNum = 0;
|
| | | if (SpringFestival.TotalTimes - rewardNum > 0)
|
| | | {
|
| | | RemainingNum = (SpringFestival.TotalTimes - rewardNum) / SpringFestival.SingleTimes;
|
| | | }
|
| | | if (SpringFestival.TotalTimes - carryOutNum > 0 && RemainingNum > 0)
|
| | | {
|
| | | m_TextA.text = Language.Get("OSA_1", RemainingNum);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_TextA.text = Language.Get("OSA_4");
|
| | | }
|
| | |
|
| | | if (config.ActionType == 20)
|
| | | {
|
| | | m_TextB.text = string.Format(config.Description, (model.SelectedNow + 1));
|
| | | }
|
| | | else
|
| | | {
|
| | | m_TextB.text = string.Format(config.Description, SpringFestival.SingleTimes);
|
| | | }
|
| | | m_TextC.text = Language.Get("OSA_2", SpringFestival.Point);
|
| | | for (int i = 0; i < m_ItemList.childCount; i++)
|
| | | {
|
| | | GameObject Obj = m_ItemList.GetChild(i).gameObject;
|
| | | ItemCell itemCell = Obj.GetComponent<ItemCell>();
|
| | | if (i < SpringFestival.WeekPartyItem.Length)
|
| | | {
|
| | | Obj.SetActive(true);
|
| | | var Item = SpringFestival.WeekPartyItem[i];
|
| | | ItemCellModel cellModel = new ItemCellModel(Item.ItemID, true, (ulong)Item.ItemCnt, Item.IsBind);
|
| | | itemCell.Init(cellModel);
|
| | | itemCell.cellBtn.SetListener(() =>
|
| | | {
|
| | | ItemAttrData attrData = new ItemAttrData(Item.ItemID, false, (ulong)Item.ItemCnt, -1, Item.IsBind);
|
| | | itemTipsModel.SetItemTipsModel(attrData);
|
| | | });
|
| | | }
|
| | | else
|
| | | {
|
| | | Obj.SetActive(false);
|
| | | }
|
| | | }
|
| | | bool IsOpenPreviewTime = OperationTimeHepler.Instance.SatisfyAdvanceCondition(Operation.SpringFestival);
|
| | | if (model.SelectedNow != model.DayNow || IsOpenPreviewTime)
|
| | | {
|
| | | if (model.SelectedNow > model.DayNow || IsOpenPreviewTime)//还未到达的天数
|
| | | {
|
| | | m_Btn.gameObject.SetActive(false);
|
| | | m_TextNumber.gameObject.SetActive(false);
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(false);
|
| | | m_Draw.SetActive(false);
|
| | | }
|
| | | else//已过的天数
|
| | | {
|
| | |
|
| | | int TaypeNumber = 0;
|
| | | if (carryOutNum - rewardNum > 0)
|
| | | {
|
| | | TaypeNumber = (carryOutNum - rewardNum) / SpringFestival.SingleTimes;
|
| | | }
|
| | | if (TaypeNumber > 0)//可领
|
| | | {
|
| | |
|
| | | m_TextNumber.gameObject.SetActive(true);
|
| | | m_TextNumber.text = SetText(ID);
|
| | | m_Btn.gameObject.SetActive(true);
|
| | | UIEffect uieffect = m_Btn.GetComponent<UIEffect>();
|
| | | uieffect.Play();
|
| | | m_BtnText.text = Language.Get("RealmPractice109");//领取
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(false);
|
| | | m_Draw.SetActive(false);
|
| | | m_Btn.SetListener(() =>
|
| | | {
|
| | | bool _bool = model.IsOpenFeatures();
|
| | | if (_bool)
|
| | | {
|
| | | model.SendGetSpringFestival(model.SelectedNow, ID);
|
| | | }
|
| | | else
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("SevenDayOver2");
|
| | | }
|
| | | });
|
| | | }
|
| | | else
|
| | | {
|
| | | if (rewardNum >= number)//已经领完
|
| | | {
|
| | | m_TextNumber.gameObject.SetActive(false);
|
| | | m_Btn.gameObject.SetActive(false);
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(false);
|
| | | m_Draw.SetActive(true);
|
| | | }
|
| | | else//未到达
|
| | | {
|
| | | m_TextNumber.gameObject.SetActive(false);
|
| | | m_Btn.gameObject.SetActive(false);
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(true);
|
| | | m_Draw.SetActive(false);
|
| | |
|
| | | }
|
| | |
|
| | | }
|
| | | }
|
| | | }
|
| | | else//当前天
|
| | | {
|
| | | int TaypeNumber = 0;
|
| | | if (carryOutNum - rewardNum > 0)
|
| | | {
|
| | | TaypeNumber = (carryOutNum - rewardNum) / SpringFestival.SingleTimes;
|
| | | }
|
| | | if (TaypeNumber > 0)//可领
|
| | | {
|
| | | m_TextNumber.gameObject.SetActive(true);
|
| | | m_TextNumber.text = SetText(ID);
|
| | | m_Btn.gameObject.SetActive(true);
|
| | | UIEffect uieffect = m_Btn.GetComponent<UIEffect>();
|
| | | uieffect.Play();
|
| | | m_BtnText.text = Language.Get("RealmPractice109");//领取
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(false);
|
| | | m_Draw.SetActive(false);
|
| | | m_Btn.SetListener(() =>
|
| | | {
|
| | | bool _bool = model.IsOpenFeatures();
|
| | | if (_bool)
|
| | | {
|
| | | model.SendGetSpringFestival(model.SelectedNow, ID);
|
| | | }
|
| | | else
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("SevenDayOver2");
|
| | | }
|
| | | });
|
| | | }
|
| | | else
|
| | | {
|
| | | if (rewardNum >= SpringFestival.TotalTimes)//已经领完
|
| | | {
|
| | | m_TextNumber.gameObject.SetActive(false);
|
| | | m_Btn.gameObject.SetActive(false);
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(false);
|
| | | m_Draw.SetActive(true);
|
| | | }
|
| | | else//未到达(前往)
|
| | | {
|
| | | m_TextNumber.gameObject.SetActive(true);
|
| | | m_TextNumber.text = SetText(ID);
|
| | | m_Btn.gameObject.SetActive(true);
|
| | | m_BtnText.text = Language.Get("RealmPractice108");//前往
|
| | | UIEffect uieffect = m_Btn.GetComponent<UIEffect>();
|
| | | uieffect.Stop();
|
| | | m_Miss.SetActive(false);
|
| | | m_Reach.SetActive(false);
|
| | | m_Draw.SetActive(false);
|
| | | m_Btn.SetListener(() =>
|
| | | {
|
| | | WindowJumpMgr.Instance.WindowJumpTo((JumpUIType)config.jump);
|
| | | });
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | string SetText(int ID)
|
| | | {
|
| | | string str = string.Empty;
|
| | | var SpringFestival = model.SpringFestivalDic[ID];
|
| | | int rewardNum = model.GetRewardNumber(model.SelectedNow, ID);//已领奖次数
|
| | | int carryOutNum = model.GetCarryOutNum(model.SelectedNow, ID);//已完成次数
|
| | | var config = Config.Instance.Get<WeekPartyConfig>(ID);
|
| | | if (config != null && config.SpecialDisplayType == 1)
|
| | | {
|
| | |
|
| | | if (carryOutNum > 0)
|
| | | {
|
| | | str = "1/1";
|
| | | }
|
| | | else
|
| | | {
|
| | | str = "0/1";
|
| | | }
|
| | | return str;
|
| | | }
|
| | | int TaypeNumber = 0;
|
| | | if (carryOutNum - rewardNum > 0)
|
| | | {
|
| | | TaypeNumber = (carryOutNum - rewardNum) / SpringFestival.SingleTimes;
|
| | | }
|
| | | if (TaypeNumber > 0)
|
| | | {
|
| | | str = SpringFestival.SingleTimes + "/" + SpringFestival.SingleTimes;
|
| | | return str;
|
| | | }
|
| | | else
|
| | | {
|
| | | int type = carryOutNum % SpringFestival.SingleTimes;
|
| | | str = type + "/" + SpringFestival.SingleTimes;
|
| | | }
|
| | | return str;
|
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 44a71fdc1fc45a7448e87c4942d0db7c |
| | | timeCreated: 1548146393 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Tuesday, January 22, 2019 |
| | | //-------------------------------------------------------- |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | using TableConfig; |
| | | |
| | | namespace Snxxz.UI
|
| | | {
|
| | | [XLua.Hotfix] |
| | | public class SpringFestivalItem : 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; |
| | | SpringFestivalModel model { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } } |
| | | public void SetReward(int day, WeekPartyItemClass item, int index, int Type)
|
| | | {
|
| | | var holidayHomingPointConfig = Config.Instance.Get<HolidayHomingPointConfig>(item.ItemID);
|
| | | if (holidayHomingPointConfig != null)
|
| | | {
|
| | | m_Text_A.text = holidayHomingPointConfig.name;
|
| | | if (Type == 1)
|
| | | {
|
| | | m_ImageShow.SetSprite(holidayHomingPointConfig.ImageType1);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_ImageShow.SetSprite(holidayHomingPointConfig.ImageType2);
|
| | | }
|
| | | m_ImageShow.SetNativeSize();
|
| | | }
|
| | | int Point = model.GetPoint(day);
|
| | | m_TextPoint.text = Language.Get("OSA_3", item.NeedPoint);
|
| | | 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(() =>
|
| | | {
|
| | | bool _bool = model.IsOpenFeatures();
|
| | | if (_bool)
|
| | | {
|
| | | model.SendGetSpringFestivalPoint(model.SelectedNow, item.NeedPoint);
|
| | | }
|
| | | else
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("SevenDayOver2");
|
| | | }
|
| | | });
|
| | | 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);
|
| | | }
|
| | | }
|
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 09255ebe0b6808b4188754d0f5f4df1f |
| | | timeCreated: 1548145610 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, January 21, 2019 |
| | | //-------------------------------------------------------- |
| | | using System;
|
| | | using System.Collections.Generic;
|
| | | using TableConfig;
|
| | | using Snxxz.UI;
|
| | | using System.Linq; |
| | | |
| | | |
| | | [XLua.LuaCallCSharp]
|
| | | //春节活动巡礼
|
| | | public class SpringFestivalModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk
|
| | | {
|
| | | public Dictionary<int, WeekPartyDayInfoClass> SpringFestivalInfoDic = new Dictionary<int, WeekPartyDayInfoClass>();//每天领取奖励信息
|
| | | public event Action SpringFestivalRewardUpdate;//领奖记录变化
|
| | | public Dictionary<int, WeekPartyDayClass> SpringFestivalDayDic = new Dictionary<int, WeekPartyDayClass>();//每天的奖励信息
|
| | | public Dictionary<int, WeekPartyActionClass> SpringFestivalDic = new Dictionary<int, WeekPartyActionClass>();//活动模板总信息
|
| | | public Dictionary<int, Redpoint> RedPointDic = new Dictionary<int, Redpoint>();//红点
|
| | | private const int Redpoint_key1 = 21402;//周狂欢红点
|
| | | public Redpoint redPointStre1 = new Redpoint(214, Redpoint_key1);
|
| | | public int LimitLV = 0;//限制等级
|
| | | private int _SelectedNow = 0;
|
| | | public int SelectedNow//选中天
|
| | | {
|
| | | get { return _SelectedNow; }
|
| | | set { _SelectedNow = value; }
|
| | | }
|
| | |
|
| | | private int _DayNow = 0;
|
| | | public int DayNow//当前天
|
| | | {
|
| | | get { return _DayNow; }
|
| | | set { _DayNow = value; }
|
| | | }
|
| | | public override void Init()
|
| | | {
|
| | | |
| | | }
|
| | |
|
| | | public void OnBeforePlayerDataInitialize()
|
| | | {
|
| | | SpringFestivalInfoDic.Clear();
|
| | | }
|
| | |
|
| | | public void OnPlayerLoginOk()
|
| | | {
|
| | | GetDayNow();
|
| | | OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
|
| | | OperationTimeHepler.Instance.dayResetEvent -= DayResetEvent;
|
| | | OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
|
| | | OperationTimeHepler.Instance.dayResetEvent += DayResetEvent;
|
| | | }
|
| | |
|
| | | |
| | | public override void UnInit()
|
| | | {
|
| | | |
| | | }
|
| | | private void DayResetEvent(int obj)
|
| | | {
|
| | | if (obj == (int)Operation.OpenServiceAchievement)
|
| | | {
|
| | | GetDayNow();
|
| | | }
|
| | | }
|
| | |
|
| | | private void OperationStartEvent(Operation arg1, int arg2)
|
| | | {
|
| | | if (arg1 == Operation.OpenServiceAchievement)
|
| | | {
|
| | | GetDayNow();
|
| | | }
|
| | | }
|
| | |
|
| | | public void SpringFestivalInfo(HAA21_tagMCFeastWeekPartyPlayerInfo info)//每天领奖信息
|
| | | {
|
| | | for (int i = 0; i < info.Count; i++)
|
| | | {
|
| | | var DayInfo = info.DayInfoList[i];
|
| | | WeekPartyDayInfoClass WeekPartyDayInfo = new WeekPartyDayInfoClass();
|
| | | WeekPartyDayInfo.DayIndex = (int)DayInfo.DayIndex;
|
| | | WeekPartyDayInfo.Point = (int)DayInfo.Point;
|
| | | WeekPartyDayInfo.AwardRecord = (int)DayInfo.AwardRecord;
|
| | |
|
| | | if (SpringFestivalInfoDic.ContainsKey((int)DayInfo.DayIndex))
|
| | | {
|
| | | var dit = SpringFestivalInfoDic[(int)DayInfo.DayIndex];
|
| | | dit.DayIndex = (int)DayInfo.DayIndex;
|
| | | dit.Point = (int)DayInfo.Point;
|
| | | dit.AwardRecord = (int)DayInfo.AwardRecord;
|
| | | for (int j = 0; j < DayInfo.ACount; j++)
|
| | | {
|
| | | var taskList = DayInfo.TaskList[j];
|
| | | int Index = dit.ActionType.FindIndex(s => s.TemplateID == taskList.TemplateID);
|
| | | if (Index != -1)
|
| | | {
|
| | | dit.ActionType[Index].CurTimes = (int)taskList.CurTimes;
|
| | | dit.ActionType[Index].GotTimes = (int)taskList.GotTimes;
|
| | | }
|
| | | else
|
| | | {
|
| | | ActionTypeClass ActionType = new ActionTypeClass();
|
| | | ActionType.TemplateID = taskList.TemplateID;
|
| | | ActionType.CurTimes = (int)taskList.CurTimes;
|
| | | ActionType.GotTimes = (int)taskList.GotTimes;
|
| | | dit.ActionType.Add(ActionType);
|
| | | }
|
| | | }
|
| | | SpringFestivalInfoDic[(int)DayInfo.DayIndex] = dit;
|
| | | }
|
| | | else
|
| | | {
|
| | | WeekPartyDayInfo.ActionType = new List<ActionTypeClass>();
|
| | | for (int k = 0; k < DayInfo.ACount; k++)
|
| | | {
|
| | | var Task = DayInfo.TaskList[k];
|
| | | ActionTypeClass ActionType = new ActionTypeClass();
|
| | | ActionType.TemplateID = Task.TemplateID;
|
| | | ActionType.CurTimes = (int)Task.CurTimes;
|
| | | ActionType.GotTimes = (int)Task.GotTimes;
|
| | | WeekPartyDayInfo.ActionType.Add(ActionType);
|
| | | }
|
| | | SpringFestivalInfoDic.Add((int)DayInfo.DayIndex, WeekPartyDayInfo);
|
| | | }
|
| | | }
|
| | | GetDayNow();
|
| | | SetRedPoint();
|
| | | if (SpringFestivalRewardUpdate != null)
|
| | | {
|
| | | SpringFestivalRewardUpdate();
|
| | | }
|
| | | }
|
| | |
|
| | | public void SpringFestivalTemplate(HAA20_tagMCFeastWeekPartyInfo info)//每天模板信息
|
| | | {
|
| | | LimitLV = info.LimitLV;
|
| | | for (int i = 0; i < info.DayCnt; i++)
|
| | | {
|
| | | int Index = i;
|
| | | var DayInfo = info.DayInfoList[i];
|
| | | WeekPartyDayClass WeekPartyDay = new WeekPartyDayClass();
|
| | | WeekPartyDay.TemplateList = new int[DayInfo.ActCnt];
|
| | | for (int k = 0; k < DayInfo.ActCnt; k++)
|
| | | {
|
| | | WeekPartyDay.TemplateList[k] = DayInfo.TemplateList[k];
|
| | | }
|
| | | WeekPartyDay.WeekPartyItem = new WeekPartyItemClass[DayInfo.PCount];
|
| | | for (int p = 0; p < DayInfo.PCount; p++)
|
| | | {
|
| | | WeekPartyItemClass WeekPartyItem = new WeekPartyItemClass();
|
| | | var Item = DayInfo.PItemInfo[p];
|
| | | WeekPartyItem.NeedPoint = Item.NeedPoint;
|
| | | WeekPartyItem.ItemID = (int)Item.ItemID;
|
| | | WeekPartyItem.ItemCnt = (int)Item.ItemCnt;
|
| | | WeekPartyItem.IsBind = (int)Item.IsBind;
|
| | | WeekPartyDay.WeekPartyItem[p] = WeekPartyItem;
|
| | | }
|
| | | if (SpringFestivalDayDic.ContainsKey(Index))
|
| | | {
|
| | | SpringFestivalDayDic[Index] = WeekPartyDay;
|
| | | }
|
| | | else
|
| | | {
|
| | | SpringFestivalDayDic.Add(Index, WeekPartyDay);
|
| | | }
|
| | | }// 每天模板
|
| | | for (int i = 0; i < info.TCount; i++)
|
| | | {
|
| | | var ActionInfo = info.ActionInfo[i];
|
| | | WeekPartyActionClass WeekPartyAction = new WeekPartyActionClass();
|
| | | WeekPartyAction.TemplateID = (int)ActionInfo.TemplateID;
|
| | | WeekPartyAction.ActionType = (int)ActionInfo.ActionType;
|
| | | WeekPartyAction.TotalTimes = (int)ActionInfo.TotalTimes;
|
| | | WeekPartyAction.SingleTimes = (int)ActionInfo.SingleTimes;
|
| | | WeekPartyAction.Point = (int)ActionInfo.Point;
|
| | | WeekPartyAction.WeekPartyItem = new WeekPartyItemClass[ActionInfo.Count];
|
| | | for (int z = 0; z < ActionInfo.Count; z++)
|
| | | {
|
| | | var item = ActionInfo.ItemInfo[z];
|
| | | WeekPartyItemClass WeekPartyItem = new WeekPartyItemClass();
|
| | | WeekPartyItem.ItemID = (int)item.ItemID;
|
| | | WeekPartyItem.ItemCnt = (int)item.ItemCnt;
|
| | | WeekPartyItem.IsBind = item.IsBind;
|
| | | WeekPartyItem.NeedPoint = 0;
|
| | | WeekPartyAction.WeekPartyItem[z] = WeekPartyItem;
|
| | | }
|
| | | if (SpringFestivalDic.ContainsKey((int)ActionInfo.TemplateID))
|
| | | {
|
| | | SpringFestivalDic[(int)ActionInfo.TemplateID] = WeekPartyAction;
|
| | | }
|
| | | else
|
| | | {
|
| | | SpringFestivalDic.Add((int)ActionInfo.TemplateID, WeekPartyAction);
|
| | | }
|
| | | }// 活动模板信息
|
| | | SetRedPoint();
|
| | | }
|
| | |
|
| | | public int GetRewardNumber(int Day, int ID)//获取领奖次数
|
| | | {
|
| | | int Num = 0;
|
| | | if (SpringFestivalInfoDic.ContainsKey(Day))
|
| | | {
|
| | | var SpringFestivalDay = SpringFestivalInfoDic[Day];
|
| | |
|
| | | for (int i = 0; i < SpringFestivalDay.ActionType.Count; i++)
|
| | | {
|
| | | var ActionType = SpringFestivalDay.ActionType[i];
|
| | | if (ID == ActionType.TemplateID)
|
| | | {
|
| | | Num = ActionType.GotTimes;
|
| | | }
|
| | | }
|
| | | }
|
| | | return Num;
|
| | |
|
| | | }
|
| | | public int GetCarryOutNum(int Day, int ID)//获取已完成次数
|
| | | {
|
| | | int Num = 0;
|
| | | if (SpringFestivalInfoDic.ContainsKey(Day))
|
| | | {
|
| | | var SpringFestival = SpringFestivalInfoDic[Day];
|
| | |
|
| | | for (int i = 0; i < SpringFestival.ActionType.Count; i++)
|
| | | {
|
| | | var ActionType = SpringFestival.ActionType[i];
|
| | | if (ID == ActionType.TemplateID)
|
| | | {
|
| | | Num = ActionType.CurTimes;
|
| | | }
|
| | | }
|
| | | }
|
| | | return Num;
|
| | | }
|
| | | public int GetPoint(int day)//获取某一天的积分
|
| | | {
|
| | | int Point = 0;
|
| | | if (SpringFestivalInfoDic.ContainsKey(day))
|
| | | {
|
| | | Point = SpringFestivalInfoDic[day].Point;
|
| | | }
|
| | | return Point;
|
| | | }
|
| | | public void SendGetSpringFestival(int day, int temdayplateID)//领取春节活动奖励
|
| | | {
|
| | | CA504_tagCMPlayerGetReward getReward = new CA504_tagCMPlayerGetReward();
|
| | | getReward.RewardType = (byte)GotServerRewardType.Def_RewardType_FeastWeekPartyAct;
|
| | | getReward.DataEx = (uint)day;
|
| | | string StrID = temdayplateID.ToString();
|
| | | getReward.DataExStrLen = (byte)StrID.Length;
|
| | | getReward.DataExStr = StrID;
|
| | | GameNetSystem.Instance.SendInfo(getReward);
|
| | | }
|
| | | public void SendGetSpringFestivalPoint(int day, int point)//领取春节积分奖励
|
| | | {
|
| | | CA504_tagCMPlayerGetReward getReward = new CA504_tagCMPlayerGetReward();
|
| | | getReward.RewardType = (byte)GotServerRewardType.Def_RewardType_FeastWeekPartyPoint;
|
| | | getReward.DataEx = (uint)day;
|
| | | string StrID = point.ToString();
|
| | | getReward.DataExStrLen = (byte)StrID.Length;
|
| | | getReward.DataExStr = StrID;
|
| | | GameNetSystem.Instance.SendInfo(getReward);
|
| | | }
|
| | | public bool IsDayReward(int day, int index)//是否领取奖励
|
| | | {
|
| | | bool _bool = false;
|
| | | int AwardRecord = 0;
|
| | | foreach (var key in SpringFestivalInfoDic.Keys)
|
| | | {
|
| | | if (key == day)
|
| | | {
|
| | | AwardRecord = SpringFestivalInfoDic[key].AwardRecord;
|
| | | }
|
| | | }
|
| | | _bool = MathUtility.GetBitValue((uint)AwardRecord, (ushort)index);
|
| | | return _bool;
|
| | | }
|
| | | private void SetRedPoint()//红点设置
|
| | | {
|
| | | SetRedPointId();
|
| | | foreach (var key in RedPointDic.Keys)
|
| | | {
|
| | | RedPointDic[key].state = RedPointState.None;
|
| | | }
|
| | | foreach (var key in RedPointDic.Keys)
|
| | | {
|
| | | RedPointDic[key].state = SetRedPointState(key);
|
| | | }
|
| | | }
|
| | | private void SetRedPointId()//设置红点ID
|
| | | {
|
| | | if (RedPointDic.Count >= 7)
|
| | | {
|
| | | return;
|
| | | }
|
| | | RedPointDic.Clear();
|
| | | foreach (var key in SpringFestivalInfoDic.Keys)
|
| | | {
|
| | | int RedPoint = Redpoint_key1 * 10 + key;
|
| | | if (!RedPointDic.ContainsKey(key))
|
| | | {
|
| | | Redpoint redPointMountStare = new Redpoint(Redpoint_key1, RedPoint);
|
| | | RedPointDic.Add(key, redPointMountStare);
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | | private RedPointState SetRedPointState(int day)//红点状态设置
|
| | | {
|
| | | if (!SpringFestivalDayDic.ContainsKey(day) || !SpringFestivalInfoDic.ContainsKey(day) || day>DayNow)
|
| | | {
|
| | | return RedPointState.None;
|
| | | }
|
| | | WeekPartyDayClass WeekPartyDay = new WeekPartyDayClass();
|
| | | int point = SpringFestivalInfoDic[day].Point;
|
| | | foreach (var key in SpringFestivalDayDic.Keys)
|
| | | {
|
| | | if (key == day)
|
| | | {
|
| | | WeekPartyDay = SpringFestivalDayDic[key];
|
| | | }
|
| | | }
|
| | | for (int i = 0; i < WeekPartyDay.WeekPartyItem.Length; i++)//积分奖励
|
| | | {
|
| | | var item = WeekPartyDay.WeekPartyItem[i];
|
| | | int type = i;
|
| | | bool IsBool = IsDayReward(day, type);
|
| | | if (point >= item.NeedPoint && !IsBool)
|
| | | {
|
| | | return RedPointState.GetReward;
|
| | | }
|
| | | }
|
| | | for (int i = 0; i < WeekPartyDay.TemplateList.Length; i++)
|
| | | {
|
| | | var TemplateID = WeekPartyDay.TemplateList[i];
|
| | | if (SpringFestivalDic.ContainsKey(TemplateID))
|
| | | {
|
| | | var WeekPartyAction = SpringFestivalDic[TemplateID];
|
| | | int number = WeekPartyAction.TotalTimes / WeekPartyAction.SingleTimes;
|
| | | int rewardNum = GetRewardNumber(day, TemplateID);//已领奖次数
|
| | | int carryOutNum = GetCarryOutNum(day, TemplateID);//已完成次数
|
| | | int TaypeNumber = 0;
|
| | | if (carryOutNum - rewardNum > 0)
|
| | | {
|
| | | TaypeNumber = (carryOutNum - rewardNum) / WeekPartyAction.SingleTimes;
|
| | | }
|
| | | if (TaypeNumber > 0 && rewardNum < number)
|
| | | {
|
| | | return RedPointState.GetReward;
|
| | | }
|
| | | }
|
| | | }
|
| | | return RedPointState.None;
|
| | | }
|
| | |
|
| | | public void GetDayNow()
|
| | | {
|
| | | OperationBase operationBase;
|
| | | if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.SpringFestival, out operationBase))
|
| | | {
|
| | | int inday = (operationBase as EventDaysTime).GetInDayNow();
|
| | | if (inday >= 0 && inday < 7)
|
| | | {
|
| | | _DayNow = inday;
|
| | | }
|
| | | else if (inday >= 7)
|
| | | {
|
| | | _DayNow = 6;
|
| | | }
|
| | |
|
| | | }
|
| | | }
|
| | |
|
| | | public bool IsOpenFeatures()
|
| | | {
|
| | | bool Isbool = false;
|
| | | Isbool = (OperationTimeHepler.Instance.SatisfyOpenCondition(Operation.SpringFestival) |
| | | || OperationTimeHepler.Instance.SatisfyAdvanceCondition(Operation.SpringFestival));
|
| | | return Isbool;
|
| | | }
|
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: e745d55fc89be58489c27c9c7b292b0a |
| | | timeCreated: 1548042965 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Monday, January 21, 2019 |
| | | //-------------------------------------------------------- |
| | | |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | using TableConfig; |
| | | using EnhancedUI.EnhancedScroller; |
| | | |
| | | namespace Snxxz.UI
|
| | | {
|
| | | [XLua.Hotfix] |
| | | public class SpringFestivalWin : Window |
| | | {
|
| | | //春节巡礼
|
| | | #region Built-in |
| | | [SerializeField]
|
| | | ScrollerController m_ScrollerController1;//天 |
| | | [SerializeField] ScrollerController m_ScrollerController2;//列表
|
| | | [SerializeField] Text m_TextIntegral;//当前积分
|
| | | [SerializeField] GameObject m_One;
|
| | | [SerializeField] GameObject m_Two;
|
| | |
|
| | | [SerializeField] SpringFestivalItem m_SpringFestivalItemA;
|
| | | [SerializeField] SpringFestivalItem m_SpringFestivalItemA1;
|
| | | [SerializeField] SpringFestivalItem m_SpringFestivalItemB1;
|
| | | [SerializeField] Image m_ImgeBgm1;
|
| | | [SerializeField] Image m_ImgeBgm2;
|
| | | DailyQuestModel dailymodel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
|
| | | OpenServiceAchievementModel OpenServicemodel { get { return ModelCenter.Instance.GetModel<OpenServiceAchievementModel>(); } }
|
| | | SpringFestivalModel model { get { return ModelCenter.Instance.GetModel<SpringFestivalModel>(); } }
|
| | | List<int> SortList = new List<int>();
|
| | | List<WeekPartyItemClass> ItemDayList = new List<WeekPartyItemClass>(); |
| | | private string bgmKey1 = string.Empty;
|
| | | private string bgmKey2 = string.Empty; |
| | | protected override void BindController() |
| | | {
|
| | | m_ScrollerController1.OnRefreshCell += OnRefreshGridCell_1; |
| | | m_ScrollerController2.OnRefreshCell += OnRefreshGridCell_2;
|
| | | var config = Config.Instance.Get<FuncConfigConfig>("HolidayTourBackground"); |
| | | bgmKey1 = config.Numerical1; |
| | | bgmKey2 = config.Numerical2; |
| | | } |
| | | |
| | | protected override void AddListeners() |
| | | { |
| | | } |
| | | |
| | | protected override void OnPreOpen() |
| | | {
|
| | | m_ImgeBgm1.SetSprite(bgmKey1);
|
| | | m_ImgeBgm2.SetSprite(bgmKey2);
|
| | | ChooseDay();
|
| | | SetTextIntegral();
|
| | | OnCreateGridLineCell1(m_ScrollerController1);
|
| | | OnCreateGridLineCell2(m_ScrollerController2); |
| | | if (model.SelectedNow >= 5)
|
| | | {
|
| | | m_ScrollerController1.JumpIndex(5);
|
| | | } |
| | | } |
| | | |
| | | protected override void OnAfterOpen() |
| | | { |
| | | OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
|
| | | OperationTimeHepler.Instance.dayResetEvent += DayResetEvent; |
| | | model.SpringFestivalRewardUpdate += SpringFestivalRewardUpdate; |
| | | } |
| | | |
| | | protected override void OnPreClose() |
| | | {
|
| | | OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
|
| | | model.SpringFestivalRewardUpdate -= SpringFestivalRewardUpdate;
|
| | | OperationTimeHepler.Instance.dayResetEvent -= DayResetEvent; |
| | | }
|
| | |
|
| | | private void DayResetEvent(int obj)
|
| | | {
|
| | | if (obj == (int)Operation.OpenServiceAchievement)
|
| | | {
|
| | | model.GetDayNow();
|
| | | GetPointRewardObj();//获取积分领奖信息
|
| | | m_ScrollerController1.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | m_ScrollerController2.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | }
|
| | | }
|
| | |
|
| | | private void OperationStartEvent(Operation arg1, int arg2)
|
| | | {
|
| | | if (arg1 == Operation.OpenServiceAchievement)
|
| | | {
|
| | | model.GetDayNow();
|
| | | GetPointRewardObj();//获取积分领奖信息
|
| | | m_ScrollerController1.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | m_ScrollerController2.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | }
|
| | | |
| | | }
|
| | |
|
| | | protected override void OnAfterClose() |
| | | { |
| | | }
|
| | | #endregion |
| | | private void SpringFestivalRewardUpdate()
|
| | | {
|
| | | model.GetDayNow();
|
| | | GetPointRewardObj();//获取积分领奖信息
|
| | | m_ScrollerController1.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | m_ScrollerController2.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | }
|
| | | |
| | | void OnCreateGridLineCell1(ScrollerController gridCtrl)
|
| | | {
|
| | | gridCtrl.Refresh();
|
| | | foreach (var key in model.SpringFestivalDayDic.Keys)
|
| | | {
|
| | | gridCtrl.AddCell(ScrollerDataType.Header, key);
|
| | | }
|
| | | gridCtrl.Restart();
|
| | | } |
| | | private void OnRefreshGridCell_1(ScrollerDataType type, CellView cell)
|
| | | {
|
| | | int Index = cell.index;
|
| | | ButtonEx Btn = cell.GetComponent<ButtonEx>();
|
| | | GameObject SelectedObj = cell.transform.Find("Image_XZ").gameObject;//选中
|
| | | GameObject SelectedObj1 = cell.transform.Find("Image_XZ1").gameObject;//选中
|
| | | ImageEx SelectedImageEx = SelectedObj.GetComponent<ImageEx>();
|
| | |
|
| | |
|
| | | GameObject Unselected = cell.transform.Find("Image_WXZ").gameObject;//未选中
|
| | | ImageEx UnselectedIm = Unselected.GetComponent<ImageEx>();
|
| | | GameObject Lock = cell.transform.Find("Lock").gameObject;//锁
|
| | |
|
| | | GameObject IsNotGary = cell.transform.Find("Obj1").gameObject;
|
| | | Text IsNotGary_text = IsNotGary.transform.Find("DayText").GetComponent<Text>();
|
| | | GameObject Gary = cell.transform.Find("Obj2").gameObject;
|
| | | Text Gary_text = Gary.transform.Find("DayText").GetComponent<Text>();
|
| | |
|
| | | RedpointBehaviour redPoint = cell.transform.Find("RedPoint").GetComponent<RedpointBehaviour>();//红点
|
| | | if (model.RedPointDic.ContainsKey(Index))
|
| | | {
|
| | | redPoint.redpointId = model.RedPointDic[Index].id;
|
| | | }
|
| | | if (Index <= model.DayNow)
|
| | | {
|
| | | SelectedImageEx.gray = false;
|
| | | Unselected.SetActive(true);
|
| | | UnselectedIm.gray = false;
|
| | | SelectedObj.SetActive(false);
|
| | | SelectedObj1.SetActive(false);
|
| | | Lock.SetActive(false);
|
| | | IsNotGary.SetActive(true);
|
| | | Gary.SetActive(false);
|
| | | IsNotGary_text.text = (Index + 1).ToString();
|
| | | }
|
| | | else
|
| | | {
|
| | | Unselected.SetActive(true);
|
| | | UnselectedIm.gray = true;
|
| | | SelectedObj.SetActive(false);
|
| | | SelectedObj1.SetActive(false);
|
| | | Lock.SetActive(true);
|
| | | IsNotGary.SetActive(false);
|
| | | Gary.SetActive(true);
|
| | | Gary_text.text = (Index + 1).ToString();
|
| | | }
|
| | |
|
| | | if (Index == model.SelectedNow)
|
| | | {
|
| | | if (Index > model.DayNow)
|
| | | {
|
| | | SelectedImageEx.gray = true;
|
| | | IsNotGary.SetActive(false);
|
| | | Gary.SetActive(true);
|
| | | Lock.SetActive(true);
|
| | | }
|
| | | else
|
| | | {
|
| | | SelectedImageEx.gray = false;
|
| | | IsNotGary.SetActive(true);
|
| | | Gary.SetActive(false);
|
| | | Lock.SetActive(false);
|
| | | }
|
| | | SelectedObj.SetActive(true);
|
| | | SelectedObj1.SetActive(true);
|
| | | Unselected.SetActive(false);
|
| | |
|
| | | IsNotGary_text.text = (Index + 1).ToString();
|
| | | }
|
| | | Btn.SetListener(() =>
|
| | | {
|
| | | if (Index != model.SelectedNow)
|
| | | {
|
| | | model.SelectedNow = Index;//选中天
|
| | | SetTextIntegral();
|
| | | OnCreateGridLineCell2(m_ScrollerController2);
|
| | | m_ScrollerController1.m_Scorller.RefreshActiveCellViews();//刷新可见
|
| | | }
|
| | | });
|
| | |
|
| | | } |
| | | private string InDayStr(int Day)
|
| | | {
|
| | | string DaySte = string.Empty;
|
| | | DaySte = Language.Get("SignIn_4", Day);
|
| | | return DaySte;
|
| | | }
|
| | | void OnCreateGridLineCell2(ScrollerController gridCtrl)
|
| | | {
|
| | | ToAddSorting();//排序
|
| | | GetPointRewardObj();//获取积分领奖信息
|
| | | gridCtrl.Refresh();
|
| | | for (int i = 0; i < SortList.Count; i++)
|
| | | {
|
| | | gridCtrl.AddCell(ScrollerDataType.Header, SortList[i]);
|
| | | }
|
| | | gridCtrl.Restart();
|
| | | }
|
| | | private void OnRefreshGridCell_2(ScrollerDataType type, CellView cell)
|
| | | {
|
| | |
|
| | | }
|
| | | private void ToAddSorting()
|
| | | {
|
| | | SortList.Clear();
|
| | | int Weekday = OpenServicemodel.GetWeekDay(model.SelectedNow);
|
| | | var quests = dailymodel.GetQuestByWeekTime(Weekday);
|
| | | List<int> dailyIdlist = new List<int>();
|
| | | foreach (var key in quests.Keys)
|
| | | {
|
| | | var _list = quests[key];
|
| | | for (int i = 0; i < _list.Count; i++)
|
| | | {
|
| | | dailyIdlist.Add(_list[i]);
|
| | | }
|
| | | }
|
| | |
|
| | | foreach (var key in model.SpringFestivalDayDic.Keys)
|
| | | {
|
| | | if (key == model.SelectedNow)
|
| | | {
|
| | | for (int i = 0; i < model.SpringFestivalDayDic[key].TemplateList.Length; i++)
|
| | | {
|
| | | var TemplateId = model.SpringFestivalDayDic[key].TemplateList[i];
|
| | | var config = Config.Instance.Get<HolidayHomingConfig>(TemplateId);
|
| | | if (config == null)
|
| | | {
|
| | | continue;
|
| | | }
|
| | | if (config.DailyQusetId != 0)
|
| | | {
|
| | | if (dailyIdlist.Contains(config.DailyQusetId))
|
| | | {
|
| | | SortList.Add(TemplateId);
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | SortList.Add(TemplateId);
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | SortList.Sort(Compare);
|
| | | }
|
| | | int Compare(int x, int y)//数组排列
|
| | | {
|
| | | bool havex1 = IsReceive(x);
|
| | | bool havey1 = IsReceive(y);
|
| | | if (havex1.CompareTo(havey1) != 0)
|
| | | {
|
| | | return -havex1.CompareTo(havey1);
|
| | | }
|
| | | bool havex2 = Undone(x);
|
| | | bool havey2 = Undone(y);
|
| | | if (havex2.CompareTo(havey2) != 0)
|
| | | {
|
| | | return -havex2.CompareTo(havey2);
|
| | | }
|
| | | bool havex3 = Completed(x);
|
| | | bool havey3 = Completed(y);
|
| | | if (havex3.CompareTo(havey3) != 0)
|
| | | {
|
| | | return -havex3.CompareTo(havey3);
|
| | | }
|
| | | int havex4 = SizeId(x);
|
| | | int havey4 = SizeId(y);
|
| | | if (havex4.CompareTo(havey4) != 0)
|
| | | {
|
| | | return havex4.CompareTo(havey4);
|
| | | }
|
| | | return 1;
|
| | | }
|
| | | private bool IsReceive(int ID)//可领取
|
| | | {
|
| | | bool Bool = false;
|
| | | if (model.SpringFestivalDic.ContainsKey(ID))
|
| | | {
|
| | | var SpringFestival = model.SpringFestivalDic[ID];
|
| | | int number = SpringFestival.TotalTimes / SpringFestival.SingleTimes;
|
| | | int rewardNum = model.GetRewardNumber(model.SelectedNow, ID);//已领奖次数
|
| | | int carryOutNum = model.GetCarryOutNum(model.SelectedNow, ID);//已完成次数
|
| | | int TaypeNumber = 0;
|
| | | if (carryOutNum - rewardNum > 0)
|
| | | {
|
| | | TaypeNumber = (carryOutNum - rewardNum) / SpringFestival.SingleTimes;
|
| | | }
|
| | | if (TaypeNumber > 0)
|
| | | {
|
| | | Bool = true;
|
| | | }
|
| | | }
|
| | | return Bool;
|
| | | }
|
| | | private bool Undone(int ID)//未完成
|
| | | {
|
| | | bool Bool = false;
|
| | | if (model.SpringFestivalDic.ContainsKey(ID))
|
| | | {
|
| | | var SpringFestival = model.SpringFestivalDic[ID];
|
| | | int number = SpringFestival.TotalTimes / SpringFestival.SingleTimes;
|
| | | int rewardNum = model.GetRewardNumber(model.SelectedNow, ID);//已领奖次数
|
| | | int carryOutNum = model.GetCarryOutNum(model.SelectedNow, ID);//已完成次数
|
| | | if (SpringFestival.TotalTimes > rewardNum)
|
| | | {
|
| | | Bool = true;
|
| | | }
|
| | | }
|
| | | return Bool;
|
| | | }
|
| | | private bool Completed(int ID)//已领取
|
| | | {
|
| | | bool Bool = false;
|
| | | if (model.SpringFestivalDic.ContainsKey(ID))
|
| | | {
|
| | | var SpringFestival = model.SpringFestivalDic[ID];
|
| | | int rewardNum = model.GetRewardNumber(model.SelectedNow, ID);//已领奖次数
|
| | | int carryOutNum = model.GetCarryOutNum(model.SelectedNow, ID);//已完成次数
|
| | | if (rewardNum >= SpringFestival.TotalTimes)
|
| | | {
|
| | | Bool = true;
|
| | | }
|
| | | }
|
| | | return Bool;
|
| | | }
|
| | | private int SizeId(int ID)
|
| | | {
|
| | | int index = 1;
|
| | | var config = Config.Instance.Get<HolidayHomingConfig>(ID);
|
| | | if (config != null)
|
| | | {
|
| | | index = config.order;
|
| | | }
|
| | | return index;
|
| | | }
|
| | | private void SetTextIntegral()//获取当前积分
|
| | | {
|
| | | int Point = model.GetPoint(model.SelectedNow);
|
| | | m_TextIntegral.text = Point.ToString();
|
| | | }
|
| | | private void GetPointRewardObj()
|
| | | {
|
| | | ItemDayList.Clear();
|
| | | foreach (var key in model.SpringFestivalDayDic.Keys)
|
| | | {
|
| | | if (key == model.SelectedNow)
|
| | | {
|
| | | for (int i = 0; i < model.SpringFestivalDayDic[key].WeekPartyItem.Length; i++)
|
| | | {
|
| | | ItemDayList.Add(model.SpringFestivalDayDic[key].WeekPartyItem[i]);
|
| | | }
|
| | | }
|
| | | }
|
| | | if (ItemDayList.Count > 1)
|
| | | {
|
| | | m_One.SetActive(false);
|
| | | m_Two.SetActive(true);
|
| | | m_SpringFestivalItemA1.SetReward(model.SelectedNow, ItemDayList[0], 0, 2);
|
| | | m_SpringFestivalItemB1.SetReward(model.SelectedNow, ItemDayList[1], 1, 2);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_One.SetActive(true);
|
| | | m_Two.SetActive(false);
|
| | | m_SpringFestivalItemA.SetReward(model.SelectedNow, ItemDayList[0], 0, 1);
|
| | | }
|
| | | }
|
| | | private void ChooseDay()//选择天
|
| | | {
|
| | | foreach (var key in model.RedPointDic.Keys)//红点选择可领取的天
|
| | | {
|
| | | if (model.RedPointDic[key].state == RedPointState.GetReward)
|
| | | {
|
| | | model.SelectedNow = key;
|
| | | return;
|
| | | }
|
| | | }
|
| | | model.SelectedNow = model.DayNow;
|
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 3f29b1e883e6d9b4d8eeac6532685502 |
| | | timeCreated: 1548041885 |
| | | licenseType: Free |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | | var itemModel = BackpackDic[key];
|
| | | GodBeastBagClass godBeastBagClass = new GodBeastBagClass();
|
| | | godBeastBagClass.ItemId = itemModel.itemId;
|
| | | if (itemModel.itemId == 5417)
|
| | | {
|
| | | continue;
|
| | | }
|
| | | godBeastBagClass.Index = key;
|
| | | if (itemModel.chinItemModel.Type != 70)
|
| | | {
|
| | |
| | | }
|
| | | }
|
| | | }
|
| | | /// <summary>
|
| | | /// 登录奖励
|
| | | /// </summary>
|
| | | /// <param name="package"></param>
|
| | | public void RefreshLoginReward(HAA0C_tagMCActLoginAwardInfo package)
|
| | | {
|
| | | OperationBase operation = null;
|
| | | operationDict.TryGetValue(Operation.LoginReward, out operation);
|
| | | if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
|
| | | {
|
| | | ForceStopOperation(Operation.LoginReward);
|
| | | }
|
| | | else
|
| | | {
|
| | | if (operation == null)
|
| | | {
|
| | | operation = new EventDaysTime();
|
| | | operationDict.Add(Operation.LoginReward, operation);
|
| | | }
|
| | | operation.Reset();
|
| | | operation.startDate = ParseOperationDate(package.StartDate);
|
| | | operation.endDate = ParseOperationDate(package.EndtDate);
|
| | | operation.limitLv = package.LimitLV;
|
| | | operation.dayReset = package.IsDayReset == 1;
|
| | | operation.resetType = package.ResetType;
|
| | | operation.inAdvanceMinute = package.AdvanceMinutes;
|
| | | if (operationTimeUpdateEvent != null)
|
| | | {
|
| | | operationTimeUpdateEvent(Operation.LoginReward);
|
| | | }
|
| | | }
|
| | | }
|
| | | /// <summary>
|
| | | /// 春节巡礼
|
| | | /// </summary>
|
| | | /// <param name="package"></param>
|
| | | public void SpringFestival(HAA20_tagMCFeastWeekPartyInfo package)
|
| | | {
|
| | | OperationBase operation = null;
|
| | | operationDict.TryGetValue(Operation.SpringFestival, out operation);
|
| | | if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
|
| | | {
|
| | | ForceStopOperation(Operation.SpringFestival);
|
| | | }
|
| | | else
|
| | | {
|
| | | if (operation == null)
|
| | | {
|
| | | operation = new EventDaysTime();
|
| | | operationDict.Add(Operation.SpringFestival, operation);
|
| | | }
|
| | | operation.Reset();
|
| | | operation.startDate = ParseOperationDate(package.StartDate);
|
| | | operation.endDate = ParseOperationDate(package.EndtDate);
|
| | | operation.limitLv = package.LimitLV;
|
| | | operation.dayReset = package.IsDayReset == 1;
|
| | | operation.resetType = package.ResetType;
|
| | | operation.inAdvanceMinute = package.AdvanceMinutes;
|
| | | if (operationTimeUpdateEvent != null)
|
| | | {
|
| | | operationTimeUpdateEvent(Operation.SpringFestival);
|
| | | }
|
| | | }
|
| | | }
|
| | | public void OpenServiceAchievement(HAA0A_tagMCWeekPartyInfo package)
|
| | | {
|
| | | OperationBase operation = null;
|
| | | operationDict.TryGetValue(Operation.OpenServiceAchievement, out operation);
|
| | | if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
|
| | | {
|
| | | ForceStopOperation(Operation.OpenServiceAchievement);
|
| | | }
|
| | | else
|
| | | {
|
| | | if (operation == null)
|
| | | {
|
| | | operation = new EventDaysTime();
|
| | | operationDict.Add(Operation.OpenServiceAchievement, operation);
|
| | | }
|
| | | operation.Reset();
|
| | | operation.startDate = ParseOperationDate(package.StartDate);
|
| | | operation.endDate = ParseOperationDate(package.EndtDate);
|
| | | operation.limitLv = package.LimitLV;
|
| | | operation.dayReset = package.IsDayReset == 1;
|
| | | operation.resetType = package.ResetType;
|
| | | operation.inAdvanceMinute = package.AdvanceMinutes;
|
| | | if (operationTimeUpdateEvent != null)
|
| | | {
|
| | | operationTimeUpdateEvent(Operation.OpenServiceAchievement);
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | | void ForceStopOperation(Operation operationType)
|
| | | {
|
| | | if (operationDict.ContainsKey(operationType))
|
| | |
| | | FlashRushToBuy, //限时抢购
|
| | | WishingWellInfo, //许愿池
|
| | | AccumulateRecharge,//累计充值
|
| | | LoginReward,//登录奖励
|
| | | NewYearFairyCeremony, //春节仙界盛典
|
| | | SpringFestival,//春节巡礼
|
| | | OpenServiceAchievement,//七日巡礼
|
| | | max,
|
| | | }
|
| | | }
|
| | |
| | | RegisterModel<CrossServerBossModel>();
|
| | | RegisterModel<OpenServiceAchievementModel>();
|
| | | RegisterModel<FashionDressModel>();
|
| | | RegisterModel<LoginRewardModel>();
|
| | | RegisterModel<JadeDynastyBossModel>();
|
| | | RegisterModel<JadeDynastyDecomposeModel>();
|
| | | RegisterModel<JadeDynastyTowerModel>();
|
| New file |
| | |
| | | using System;
|
| | | using System.Collections.Generic;
|
| | | using System.Linq;
|
| | | using System.Text;
|
| | |
|
| | | namespace Snxxz.UI
|
| | | {
|
| | | public class CalculateSkillGetAttrHurtUtility : Singleton<CalculateSkillGetAttrHurtUtility>
|
| | | {
|
| | | PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
|
| | | private Dictionary<int, int> legendAttrDict = new Dictionary<int, int>();
|
| | |
|
| | | public CalculateSkillGetAttrHurtUtility()
|
| | | {
|
| | | playerPack.RefreshItemCountAct += UpdateItem;
|
| | | UpdateSkillHurt();
|
| | | }
|
| | |
|
| | | private void UpdateItem(PackType type, int index, int id)
|
| | | {
|
| | | switch(type)
|
| | | {
|
| | | case PackType.rptJadeDynastyEquip:
|
| | | UpdateSkillHurt();
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | private void UpdateSkillHurt()
|
| | | {
|
| | | legendAttrDict.Clear();
|
| | | SinglePackModel singlePack = playerPack.GetSinglePackModel(PackType.rptJadeDynastyEquip);
|
| | | if (singlePack == null) return;
|
| | |
|
| | | var dict = singlePack.GetPackModelIndexDict();
|
| | | foreach (var model in dict.Values)
|
| | | {
|
| | | var legendIds = model.GetUseDataModel((int)ItemUseDataKey.Def_IudetLegendAttrID);
|
| | | var legendValues = model.GetUseDataModel((int)ItemUseDataKey.Def_IudetLegendAttrValue);
|
| | | if (legendIds != null && legendValues != null)
|
| | | {
|
| | | for(int i = 0; i < legendIds.Count; i++)
|
| | | {
|
| | | int attrId = legendIds[i];
|
| | | int attrValue = legendValues[i];
|
| | | switch ((AttrEnum)attrId)
|
| | | {
|
| | | case AttrEnum.SkillAddPerA:
|
| | | case AttrEnum.SkillAddPerB:
|
| | | case AttrEnum.SkillAddPerC:
|
| | | case AttrEnum.SkillAddPerD:
|
| | | case AttrEnum.SkillAddPerE:
|
| | | case AttrEnum.SkillAddPerF:
|
| | | case AttrEnum.SkillAddPerG:
|
| | | legendAttrDict.Add(attrId,attrValue);
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | public bool TryGetAttrDictBySkill(int _skillId,out Dictionary<int,int> attrDict)
|
| | | {
|
| | | attrDict = new Dictionary<int, int>();
|
| | | var attrIds = GeneralDefine.GetAttrIdsBySkill(_skillId);
|
| | | if(attrIds != null)
|
| | | {
|
| | | foreach(var attrId in attrIds)
|
| | | {
|
| | | if(legendAttrDict.ContainsKey(attrId))
|
| | | {
|
| | | int attrValue = legendAttrDict[attrId];
|
| | | attrDict.Add(attrId,attrValue);
|
| | | }
|
| | | }
|
| | | }
|
| | | return attrDict.Count > 0;
|
| | | }
|
| | | }
|
| | | }
|
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: ecbf942a2ef2bbb4aa8611c3b8c091cf |
| | | timeCreated: 1548665434 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | | Def_RewardType_ActLoginAwardAct = 22, // 领取登录奖励活动奖励22
|
| | | Def_RewardType_NewFairyCRecharge = 23, // 新仙界盛典充值大礼23
|
| | | Def_RewardType_NewFairyCParty = 24, // 新仙界盛典全民来嗨24
|
| | | Def_RewardType_FeastWeekPartyAct = 25, //领取节日巡礼活动奖励25
|
| | | Def_RewardType_FeastWeekPartyPoint = 26, //领取节日巡礼积分奖励26
|
| | | }
|
| | |
|
| | | public enum MapType
|