| | |
| | | using vnxbqy.UI;
|
| | | using System;
|
| | | using System;
|
| | | using System.Collections.Generic;
|
| | |
|
| | |
|
| | | public class ItemModel
|
| | | {
|
| | | public readonly PackType packType;
|
| | | public class ItemModel
|
| | | {
|
| | | public readonly PackType packType;
|
| | |
|
| | | public ItemConfig config { get; private set; }
|
| | | public ItemInfo itemInfo { get; private set; }
|
| | | public int score { get; private set; }
|
| | | public Dictionary<int, List<int>> useDataDict { get; private set; }
|
| | | public ItemConfig config { get; private set; }
|
| | | public ItemInfo itemInfo { get; private set; }
|
| | | public int score { get; private set; }
|
| | | public Dictionary<int, List<int>> useDataDict { get; private set; }
|
| | |
|
| | | public string guid { get { return itemInfo == null ? string.Empty : itemInfo.guid; } }
|
| | | public int itemId { get { return itemInfo == null ? 0 : itemInfo.itemId; } }
|
| | | public int count { get { return itemInfo == null ? 0 : itemInfo.count; } }
|
| | | public int gridIndex { get { return itemInfo == null ? 0 : itemInfo.index; } }
|
| | | public bool isAuction { get { return itemInfo == null ? false : itemInfo.isAuction == 1; } }
|
| | | public int preItemCount { get; private set; }
|
| | | public string guid { get { return itemInfo == null ? string.Empty : itemInfo.guid; } }
|
| | | public int itemId { get { return itemInfo == null ? 0 : itemInfo.itemId; } }
|
| | | public int count { get { return itemInfo == null ? 0 : itemInfo.count; } }
|
| | | public int gridIndex { get { return itemInfo == null ? 0 : itemInfo.index; } }
|
| | | public bool isAuction { get { return itemInfo == null ? false : itemInfo.isAuction == 1; } }
|
| | | public int preItemCount { get; private set; }
|
| | |
|
| | | public int auctionSurplusTime {
|
| | | public int auctionSurplusTime {
|
| | |
|
| | | get {
|
| | | get {
|
| | | return 0;
|
| | | /*
|
| | | var createTime = GetUseDataFirstValue(50);
|
| | | if (createTime > 0)
|
| | | {
|
| | | var overdueTime = TimeUtility.GetTime((uint)createTime) + new TimeSpan(GeneralDefine.acutionItemHour * TimeSpan.TicksPerHour);
|
| | | return (int)(overdueTime).Subtract(TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | else
|
| | | {
|
| | | return 0;
|
| | | /*
|
| | | var createTime = GetUseDataFirstValue(50);
|
| | | if (createTime > 0)
|
| | | {
|
| | | var overdueTime = TimeUtility.GetTime((uint)createTime) + new TimeSpan(GeneralDefine.acutionItemHour * TimeSpan.TicksPerHour);
|
| | | return (int)(overdueTime).Subtract(TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | else
|
| | | {
|
| | | return 0;
|
| | | }
|
| | | */
|
| | | }
|
| | | */
|
| | | }
|
| | | }
|
| | |
|
| | | public int overdueSurplusTime {
|
| | | get {
|
| | | var surplusTime = 0;
|
| | | if (config.ExpireTime > 0)
|
| | | {
|
| | | var createTime = GetUseDataFirstValue((int)ItemUseDataKey.createTime);
|
| | | if (createTime > 0)
|
| | | {
|
| | | var seconds = GetUseDataFirstValue(48);
|
| | | var overdueTime = DateTime.Now;
|
| | | if (seconds != 0)
|
| | | {
|
| | | overdueTime = TimeUtility.GetTime((uint)createTime).AddSeconds(seconds);
|
| | | }
|
| | | else
|
| | | {
|
| | | overdueTime = TimeUtility.GetTime((uint)createTime).AddSeconds(config.ExpireTime);
|
| | | }
|
| | |
|
| | | surplusTime = (int)(overdueTime).Subtract(TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | }
|
| | |
|
| | | return surplusTime;
|
| | | }
|
| | | }
|
| | |
|
| | | public ItemModel(PackType type, ItemInfo info)
|
| | | {
|
| | | packType = type;
|
| | | SetItemInfo(info);
|
| | | }
|
| | |
|
| | | public void SetItemInfo(ItemInfo info)
|
| | | {
|
| | | if (itemInfo != null)
|
| | | {
|
| | | preItemCount = itemInfo.count;
|
| | | }
|
| | |
|
| | | itemInfo = info;
|
| | | config = ItemConfig.Get(info.itemId);
|
| | | useDataDict = ConfigParse.Analysis(info.userData);
|
| | |
|
| | | var customCount = GetUseDataFirstValue((int)ItemUseDataKey.itemCount);
|
| | | if (customCount > 0)
|
| | | {
|
| | | itemInfo.count = customCount;
|
| | | }
|
| | |
|
| | | public int overdueSurplusTime {
|
| | | get {
|
| | | var surplusTime = 0;
|
| | | if (config.ExpireTime > 0)
|
| | | {
|
| | | var createTime = GetUseDataFirstValue((int)ItemUseDataKey.createTime);
|
| | | if (createTime > 0)
|
| | | {
|
| | | var serverSurplusTime = GetUseDataFirstValue(48);
|
| | | //ItemLogicUtility.Instance.SetItemEffectCDTime(info.guid, info.itemId, createTime, serverSurplusTime);
|
| | | var seconds = GetUseDataFirstValue(48);
|
| | | var overdueTime = DateTime.Now;
|
| | | if (seconds != 0)
|
| | | {
|
| | | overdueTime = TimeUtility.GetTime((uint)createTime).AddSeconds(seconds);
|
| | | }
|
| | | else
|
| | | {
|
| | | overdueTime = TimeUtility.GetTime((uint)createTime).AddSeconds(config.ExpireTime);
|
| | | }
|
| | |
|
| | | surplusTime = (int)(overdueTime).Subtract(TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | }
|
| | |
|
| | | this.score = info.gearScore;//ItemLogicUtility.Instance.GetEquipScore(itemId, useDataDict);
|
| | | return surplusTime;
|
| | | }
|
| | |
|
| | | public void RefreshCount(int count)
|
| | | {
|
| | | if (itemInfo != null)
|
| | | {
|
| | | preItemCount = itemInfo.count;
|
| | | }
|
| | |
|
| | | itemInfo.count = count;
|
| | | }
|
| | |
|
| | | public List<int> GetUseData(int key)
|
| | | {
|
| | | List<int> list = null;
|
| | | if (useDataDict != null)
|
| | | {
|
| | | useDataDict.TryGetValue(key, out list);
|
| | | }
|
| | |
|
| | | return list;
|
| | | }
|
| | |
|
| | | public int GetUseDataFirstValue(int key)
|
| | | {
|
| | | if (useDataDict != null && useDataDict.ContainsKey(key) && useDataDict[key].Count > 0)
|
| | | {
|
| | | return useDataDict[key][0];
|
| | | }
|
| | |
|
| | | return 0;
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | public class ItemInfo
|
| | | public ItemModel(PackType type, ItemInfo info)
|
| | | {
|
| | | public int index; //位置索引
|
| | | packType = type;
|
| | | SetItemInfo(info);
|
| | | }
|
| | |
|
| | | public int itemId;
|
| | |
|
| | | public int count; //物品数量
|
| | |
|
| | | public int isAuction;//是否拍品
|
| | |
|
| | | public int remainHour; //剩余时间(小时)
|
| | |
|
| | | public string userData;//size = UserDataLen
|
| | |
|
| | | public string guid; //物品的实例ID
|
| | | public int gearScore; //评分
|
| | |
|
| | | public ItemInfo()
|
| | | public void SetItemInfo(ItemInfo info)
|
| | | {
|
| | | if (itemInfo != null)
|
| | | {
|
| | |
|
| | | preItemCount = itemInfo.count;
|
| | | }
|
| | |
|
| | | public ItemInfo(H0725_tagRolePackRefreshEx.tagRoleItemRefresh serverItem)
|
| | | itemInfo = info;
|
| | | config = ItemConfig.Get(info.itemId);
|
| | | useDataDict = ConfigParse.Analysis(info.userData);
|
| | |
|
| | | var customCount = GetUseDataFirstValue((int)ItemUseDataKey.itemCount);
|
| | | if (customCount > 0)
|
| | | {
|
| | | itemId = (int)serverItem.ItemID;
|
| | | index = serverItem.ItemPlace;
|
| | | count = serverItem.ItemCount;
|
| | | remainHour = (int)serverItem.RemainHour;
|
| | | userData = serverItem.UserData;
|
| | | guid = serverItem.ItemGUID;
|
| | | isAuction = serverItem.IsBind;
|
| | | gearScore = (int)serverItem.GearScore;
|
| | | itemInfo.count = customCount;
|
| | | }
|
| | |
|
| | | public ItemInfo(H0704_tagRolePackRefresh serverItem)
|
| | | if (config.ExpireTime > 0)
|
| | | {
|
| | | itemId = (int)serverItem.ItemID;
|
| | | index = serverItem.ItemPlace;
|
| | | count = serverItem.ItemCount;
|
| | | remainHour = (int)serverItem.RemainHour;
|
| | | userData = serverItem.UserData;
|
| | | guid = serverItem.ItemGUID;
|
| | | isAuction = serverItem.IsBind;
|
| | | gearScore = (int)serverItem.GearScore;
|
| | | var createTime = GetUseDataFirstValue((int)ItemUseDataKey.createTime);
|
| | | if (createTime > 0)
|
| | | {
|
| | | var serverSurplusTime = GetUseDataFirstValue(48);
|
| | | //ItemLogicUtility.Instance.SetItemEffectCDTime(info.guid, info.itemId, createTime, serverSurplusTime);
|
| | | }
|
| | | }
|
| | |
|
| | | this.score = info.gearScore;//ItemLogicUtility.Instance.GetEquipScore(itemId, useDataDict);
|
| | | }
|
| | |
|
| | | public void RefreshCount(int count)
|
| | | {
|
| | | if (itemInfo != null)
|
| | | {
|
| | | preItemCount = itemInfo.count;
|
| | | }
|
| | |
|
| | | itemInfo.count = count;
|
| | | }
|
| | |
|
| | | public List<int> GetUseData(int key)
|
| | | {
|
| | | List<int> list = null;
|
| | | if (useDataDict != null)
|
| | | {
|
| | | useDataDict.TryGetValue(key, out list);
|
| | | }
|
| | |
|
| | | return list;
|
| | | }
|
| | |
|
| | | public int GetUseDataFirstValue(int key)
|
| | | {
|
| | | if (useDataDict != null && useDataDict.ContainsKey(key) && useDataDict[key].Count > 0)
|
| | | {
|
| | | return useDataDict[key][0];
|
| | | }
|
| | |
|
| | | return 0;
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | public class ItemInfo
|
| | | {
|
| | | public int index; //位置索引
|
| | |
|
| | | public int itemId;
|
| | |
|
| | | public int count; //物品数量
|
| | |
|
| | | public int isAuction;//是否拍品
|
| | |
|
| | | public int remainHour; //剩余时间(小时)
|
| | |
|
| | | public string userData;//size = UserDataLen
|
| | |
|
| | | public string guid; //物品的实例ID
|
| | | public int gearScore; //评分
|
| | |
|
| | | public ItemInfo()
|
| | | {
|
| | |
|
| | | }
|
| | |
|
| | | public ItemInfo(H0725_tagRolePackRefreshEx.tagRoleItemRefresh serverItem)
|
| | | {
|
| | | itemId = (int)serverItem.ItemID;
|
| | | index = serverItem.ItemPlace;
|
| | | count = serverItem.ItemCount;
|
| | | remainHour = (int)serverItem.RemainHour;
|
| | | userData = serverItem.UserData;
|
| | | guid = serverItem.ItemGUID;
|
| | | isAuction = serverItem.IsBind;
|
| | | gearScore = (int)serverItem.GearScore;
|
| | | }
|
| | |
|
| | | public ItemInfo(H0704_tagRolePackRefresh serverItem)
|
| | | {
|
| | | itemId = (int)serverItem.ItemID;
|
| | | index = serverItem.ItemPlace;
|
| | | count = serverItem.ItemCount;
|
| | | remainHour = (int)serverItem.RemainHour;
|
| | | userData = serverItem.UserData;
|
| | | guid = serverItem.ItemGUID;
|
| | | isAuction = serverItem.IsBind;
|
| | | gearScore = (int)serverItem.GearScore;
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | |
|