Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB501_tagGCAuctionItemInfo.cs
@@ -8,7 +8,7 @@ public class DTCB501_tagGCAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB502_tagGCPlayerAuctionItemInfo.cs
@@ -8,10 +8,10 @@ public class DTCB502_tagGCPlayerAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB502_tagGCPlayerAuctionItemInfo vNetData = vNetPack as HB502_tagGCPlayerAuctionItemInfo; model.PlayerAuctionItemInfo(vNetData); HB502_tagGCPlayerAuctionItemInfo vNetData = vNetPack as HB502_tagGCPlayerAuctionItemInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB503_tagGCPlayerAuctionRecordInfo.cs
@@ -7,9 +7,9 @@ public class DTCB503_tagGCPlayerAuctionRecordInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB503_tagGCPlayerAuctionRecordInfo vNetData = vNetPack as HB503_tagGCPlayerAuctionRecordInfo; model.PlayerAuctionRecord(vNetData); HB503_tagGCPlayerAuctionRecordInfo vNetData = vNetPack as HB503_tagGCPlayerAuctionRecordInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB504_tagGCAddAuctionItemInfo.cs
@@ -7,9 +7,9 @@ public class DTCB504_tagGCAddAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB504_tagGCAddAuctionItemInfo vNetData = vNetPack as HB504_tagGCAddAuctionItemInfo; model.AddAuctionItemInfo(vNetData); HB504_tagGCAddAuctionItemInfo vNetData = vNetPack as HB504_tagGCAddAuctionItemInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB505_tagGCFamilyAuctionItemInfo.cs
@@ -8,10 +8,10 @@ public class DTCB505_tagGCFamilyAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB505_tagGCFamilyAuctionItemInfo vNetData = vNetPack as HB505_tagGCFamilyAuctionItemInfo; model.FamilyAuctionItemInfo(vNetData); HB505_tagGCFamilyAuctionItemInfo vNetData = vNetPack as HB505_tagGCFamilyAuctionItemInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB506_tagGCAttentionAuctionItemInfo.cs
@@ -8,10 +8,10 @@ public class DTCB506_tagGCAttentionAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB506_tagGCAttentionAuctionItemInfo vNetData = vNetPack as HB506_tagGCAttentionAuctionItemInfo; model.AttentionAuctionItemInfo(vNetData); HB506_tagGCAttentionAuctionItemInfo vNetData = vNetPack as HB506_tagGCAttentionAuctionItemInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB507_tagGCAttentionAuctionItemID.cs
@@ -7,10 +7,10 @@ public class DTCB507_tagGCAttentionAuctionItemID : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB507_tagGCAttentionAuctionItemID vNetData = vNetPack as HB507_tagGCAttentionAuctionItemID; model.AttentionAuctionItemID(vNetData); model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB508_tagGCRefreshAuctionItemInfo.cs
@@ -8,10 +8,10 @@ public class DTCB508_tagGCRefreshAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB508_tagGCRefreshAuctionItemInfo vNetData = vNetPack as HB508_tagGCRefreshAuctionItemInfo; model.RefreshAuctionItem(vNetData); HB508_tagGCRefreshAuctionItemInfo vNetData = vNetPack as HB508_tagGCRefreshAuctionItemInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB509_tagGCClearAuctionItemInfo.cs
@@ -6,9 +6,9 @@ public class DTCB509_tagGCClearAuctionItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } public class DTCB509_tagGCClearAuctionItemInfo : DtcBasic { AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB509_tagGCClearAuctionItemInfo vNetData = vNetPack as HB509_tagGCClearAuctionItemInfo; model.ClearAuctionItem(vNetData); HB509_tagGCClearAuctionItemInfo vNetData = vNetPack as HB509_tagGCClearAuctionItemInfo; model.ReceivePackage(vNetData); } } Core/NetworkPackage/DTCFile/ServerPack/HB5_Bourse/DTCB510_tagGCBiddingItemInfo.cs
@@ -7,10 +7,10 @@ public class DTCB510_tagGCBiddingItemInfo : DtcBasic { AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } { AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public override void Done(GameNetPackBasic vNetPack) { base.Done(vNetPack); HB510_tagGCBiddingItemInfo vNetData = vNetPack as HB510_tagGCBiddingItemInfo; model.BiddingItemInfo(vNetData); HB510_tagGCBiddingItemInfo vNetData = vNetPack as HB510_tagGCBiddingItemInfo; model.ReceivePackage(vNetData); } } System/Auction/AttentionWin.cs
@@ -19,7 +19,7 @@ [SerializeField] Toggle m_MountAndPetToggle;//灵宠 [SerializeField] Toggle m_EquipmentToggle;//装备 [SerializeField] Button m_CloseButton; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } List<AuctionItemConfig> auctionItemList = new List<AuctionItemConfig>(); ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } @@ -56,7 +56,7 @@ protected override void OnAfterOpen() { model.AttentionAuctionItemUpdate += AttentionAuctionItemUpdate; model.myFocusItemRefresh += AttentionAuctionItemUpdate; } protected override void OnPreClose() @@ -66,7 +66,7 @@ protected override void OnAfterClose() { model.AttentionAuctionItemUpdate -= AttentionAuctionItemUpdate; model.myFocusItemRefresh -= AttentionAuctionItemUpdate; } @@ -118,7 +118,7 @@ itemTipsModel.SetItemTipsModel(attrData); }); textName.text = itemConfig.ItemName; if (model.AttentionAuctionItemIDdic.ContainsKey(auctionItem.ItemID)) if (model.IsMyFocusItem(auctionItem.ItemID)) { attentionImage.SetActive(true); unsubscribeBtn.gameObject.SetActive(true); @@ -132,7 +132,7 @@ } attentionBtn.SetListener(() => { if (model.AttentionAuctionItemIDdic.Count >= auctionHelpModel.MaxFocusCount)//到达关注上限 if (model.GetMyFocusItemCount() >= auctionHelpModel.MaxFocusCount)//到达关注上限 { ServerTipDetails.DisplayNormalTip(Language.Get("PMH_16")); return; System/Auction/AuctionHelpModel.cs
@@ -23,7 +23,7 @@ public List<AuctionConfig> FullServiceAuctionList = new List<AuctionConfig>();//全服拍卖列表 public Dictionary<int, AuctionConfigClass> FullServiceAuctionDic = new Dictionary<int, AuctionConfigClass>();//全服拍卖选择记录 public List<AuctionItemConfig> AuctionItemList = new List<AuctionItemConfig>();//拍卖物品表 AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } EquipModel equipModel { get { return ModelCenter.Instance.GetModel<EquipModel>(); } } PackModel packModel { get { return ModelCenter.Instance.GetModel<PackModel>(); } } @@ -136,8 +136,8 @@ int Compare(AuctionItemConfig x, AuctionItemConfig y)//数组排列 { bool havex = IsConcernedAbout(x.ItemID); bool havey = IsConcernedAbout(y.ItemID); bool havex = model.IsMyFocusItem(x.ItemID); bool havey = model.IsMyFocusItem(y.ItemID); if (havex.CompareTo(havey) != 0) { return -havex.CompareTo(havey); @@ -176,16 +176,6 @@ } } return 1; } private bool IsConcernedAbout(int itemID) { bool isBool = false; if (model.AttentionAuctionItemIDdic.ContainsKey(itemID)) { isBool = true; } return isBool; } public int GetEquipScore(int equipLevel, int equipPlace)//获取部位的装备评分 System/Auction/AuctionHouseWin.cs
@@ -44,23 +44,20 @@ m_AttentionButton.AddListener(OnClickAttentionButton); m_TransactionRecordButton.AddListener(OnClickTransactionRecordButton); } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } protected override void OnPreOpen() { m_MoneyText.text = UIHelper.GetMoneyCnt(1).ToString(); if (model.redPointStre1.state == RedPointState.Simple) { int GetDayOfYear = DateTime.Now.DayOfYear; string strKey = "AuctionRedPoint" + PlayerDatas.Instance.baseData.PlayerID; LocalSave.SetInt(strKey, GetDayOfYear); model.redPointStre1.state = RedPointState.None; } model.SetDayRemind(); } protected override void OnActived() { //OnClickFullServiceAuction(); m_FuncBtnGroup.TriggerByOrder(functionOrder); } protected override void OnAfterOpen() { PlayerDatas.Instance.playerDataRefreshEvent += Updatefighting; System/Auction/AuctionInquiry.cs
@@ -12,7 +12,7 @@ public class AuctionInquiry : Singleton<AuctionInquiry> { AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } public int GetInquiryIndex()//获取当前拍卖列表的索引类型 { System/Auction/AuctionInquiryModel.cs
File was deleted System/Auction/AuctionInquiryModel.cs.meta
File was deleted System/Auction/AuctionModel.cs
@@ -1,36 +1,701 @@ using System; using System.Collections; using System.Collections.Generic; using UnityEngine; //-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, February 25, 2019 //-------------------------------------------------------- using System; using System.Collections.Generic; using Snxxz.UI; using System.Linq; namespace Snxxz.UI { { public class AddAuctionItemInfoClass { public string ItemGUID;//物品GUID public int ItemID;//物品ID public bool Bool; } public class QueryRemainingClass { public bool UpBool; public bool DownBool; } public class AuctionModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk { Dictionary<string, AuctionItem> m_AuctionItems = new Dictionary<string, AuctionItem>(); public string locationItemGuid { get; set; } List<string> m_ServerAuctionItemGuids = new List<string>();//全服拍品列表 List<string> m_FairyAuctionItemGuids = new List<string>();// 拍卖行仙盟拍卖中的物品信息 List<string> m_MyAuctionItemGuids = new List<string>();//自身玩家上架的拍品 List<string> m_MyBiddingItemGuids = new List<string>();//拍卖行玩家竞价中的物品信息 List<string> m_MyFocusAuctionItemGuids = new List<string>();//拍卖行关注中的拍品详情 List<string> m_AuctionRecords = new List<string>();//拍卖行玩家拍卖记录 AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } List<int> m_MyFocusItemIds = new List<int>();//关注的物品ID public Dictionary<int, AddAuctionItemInfoClass> AddAuctionItemInfoDic = new Dictionary<int, AddAuctionItemInfoClass>();//关注的拍品的上架提醒(弹框显示) public QueryRemainingClass QueryRemaining = new QueryRemainingClass(); public const int REDPOINT_BASE = 217; public readonly Redpoint redpoint = new Redpoint(2, REDPOINT_BASE);//拍卖行红点 public bool isLocationQuery { get; set; } public string locationGuid { get; set; } public event Action myAuctionRefresh; public event Action serverAuctionRefresh;//全服拍品数据请求 public event Action myFocusItemRefresh;//关注物品ID刷新 public event Action myBiddingAuctionRefresh;//卖行玩家竞价中的物品信息刷新 public event Action auctionRecordRefresh;//拍卖记录新增拍卖记录 public event Action fairyAuctionRefresh;//仙盟拍卖的物品添加刷新 public event Action myFocusAuctionRefresh;//拍卖行关注中的拍品信息变更(信息每次重置) public event Action auctionItemRefresh;//拍卖行数据刷新(仅用于数据刷新) public event Action onAuctionRemove;//拍卖行物品清除 public event Action onFairyAuctionRemove;//清除仙盟物品 public event Action AddAuctionItemInfoUpdate; AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } public override void Init() { StageLoad.Instance.onStageLoadFinish += OnStageLoadFinish; FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; } public void OnBeforePlayerDataInitialize() { isLocationQuery = false; m_MyAuctionItemGuids.Clear(); m_FairyAuctionItemGuids.Clear(); m_AuctionRecords.Clear(); AddAuctionItemInfoDic.Clear(); m_MyBiddingItemGuids.Clear(); m_MyFocusAuctionItemGuids.Clear(); m_MyFocusItemIds.Clear(); PlayerDatas.Instance.fairyData.OnRefreshFairyMine -= OnRefreshFairyMine; } public void OnPlayerLoginOk() { RefreshRedpoint(); PlayerDatas.Instance.fairyData.OnRefreshFairyMine += OnRefreshFairyMine; } public override void UnInit() { StageLoad.Instance.onStageLoadFinish -= OnStageLoadFinish; FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; } private void OnFuncStateChangeEvent(int id) { if (id == (int)FuncOpenEnum.Market) { RefreshRedpoint(); } } private void OnStageLoadFinish() { if (!(StageLoad.Instance.currentStage is DungeonStage)) { m_ServerAuctionItemGuids.Clear(); m_AuctionItems.Clear(); } } private void OnRefreshFairyMine()//用于被提出仙盟清除仙盟拍品 { if (PlayerDatas.Instance.baseData.FamilyId == 0) { m_FairyAuctionItemGuids.Clear(); if (onFairyAuctionRemove != null) { onFairyAuctionRemove(); } } } public void ResetServerAuctionInquiry() { if (!isLocationQuery) { m_ServerAuctionItemGuids.Clear(); } QueryRemaining.UpBool = isLocationQuery; QueryRemaining.DownBool = true; } void RemoveAuctionItems(List<string> itemGuids) { foreach (var guid in itemGuids) { RemoveAuctionItem(guid); } } void RemoveAuctionItem(string guid) { if (m_AuctionItems.ContainsKey(guid)) { m_AuctionItems.Remove(guid); } } void PushAuctionItem(AuctionItem item) { if (m_AuctionItems.ContainsKey(item.itemGuid)) { DebugEx.LogFormat("重复添加{0}", item.itemGuid); return; } m_AuctionItems.Add(item.itemGuid, item); } public bool TryGetAuctionItem(string guid,out AuctionItem item) { return m_AuctionItems.TryGetValue(guid, out item); } public bool TryGetServerAuctionItem(string guid, out AuctionItem item) { item = null; if (TryGetMyBiddingAuctionItem(guid, out item)) { return true; } if (m_ServerAuctionItemGuids.Contains(guid)) { return TryGetAuctionItem(guid, out item); } return false; } public bool TryGetMyBiddingAuctionItem(string guid, out AuctionItem item) { item = null; if (m_MyBiddingItemGuids.Contains(guid)) { return TryGetAuctionItem(guid, out item); } return false; } public bool TryGetFairyAuctionItem(string guid, out AuctionItem item) { item = null; if (m_FairyAuctionItemGuids.Contains(guid)) { return TryGetAuctionItem(guid, out item); } return false; } public bool TryGetMyAuctionItem(string guid, out AuctionItem item) { item = null; if (m_MyAuctionItemGuids.Contains(guid)) { return TryGetAuctionItem(guid, out item); } return TryGetFairyAuctionItem(guid, out item); } public bool TryGetMyFocusAuctionItem(string guid, out AuctionItem item) { if (m_MyFocusAuctionItemGuids.Contains(guid)) { return TryGetAuctionItem(guid, out item); } return TryGetFairyAuctionItem(guid, out item); } public bool TryGetAuctionRecordItem(string guid, out AuctionItem item) { item = null; if (m_AuctionRecords.Contains(guid)) { return TryGetAuctionItem(guid, out item); } return false; } public List<string> GetServerAuctionItems() { List<string> guids = new List<string>(); foreach (var guid in m_ServerAuctionItemGuids) { guids.Add(guid); } return guids; } public ICollection<string> GetMyBiddingAuctionItems() { return m_MyBiddingItemGuids; } public ICollection<string> GetFairyAuctionItems() { return m_FairyAuctionItemGuids; } public ICollection<string> GetAuctionRecords() { return m_AuctionRecords; } public void GetMyAuctionItems(ref List<string> itemGuids) { itemGuids.Clear(); itemGuids.AddRange(m_MyAuctionItemGuids); var playerId = PlayerDatas.Instance.baseData.PlayerID; foreach (var guid in m_FairyAuctionItemGuids) { if (itemGuids.Contains(guid)) { continue; } AuctionItem item; if (TryGetAuctionItem(guid, out item)) { if (item.familyPlayers != null && item.familyPlayers.Contains((int)playerId)) { itemGuids.Add(item.itemGuid); } } } } public void GetMyFocusAutionItems(ref List<string> itemGuids) { itemGuids.Clear(); itemGuids.AddRange(m_MyFocusAuctionItemGuids); var playerId = PlayerDatas.Instance.baseData.PlayerID; foreach (var guid in m_FairyAuctionItemGuids) { if (itemGuids.Contains(guid)) { continue; } AuctionItem item; if (TryGetAuctionItem(guid, out item)) { if (IsMyFocusItem(item.itemId)) { itemGuids.Add(item.itemGuid); } } } } public int GetMyFocusItemCount() { return m_MyFocusItemIds.Count; } public bool IsParticipateInBidding(string guid) { return m_MyBiddingItemGuids.Contains(guid); } public bool IsMyTopPrice(string guid) { var isMyTopPrice = false; if (IsParticipateInBidding(guid)) { AuctionItem myBiddingItem; if (TryGetMyBiddingAuctionItem(guid, out myBiddingItem)) { isMyTopPrice = AuctionLogicUtil.IsMyTopPrice(myBiddingItem); } } return isMyTopPrice; } public bool IsMyFocusItem(int id) { return m_MyFocusItemIds.Contains(id); } public void ReceivePackage(HB501_tagGCAuctionItemInfo info)// 拍卖行拍卖中的物品信息 { List<string> fullServiceAuctionList = new List<string>(); for (int i = 0; i < info.AuctionItemCount; i++) { var data = info.AuctionItemList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { item = new AuctionItem(guid); PushAuctionItem(item); } item.itemGuid = UIHelper.ServerStringTrim(data.ItemGUID); item.familyId = (int)data.FamilyID; item.itemId = (int)data.ItemID; item.itemCount = (int)data.ItemCount; item.putAwayTime = DateTime.Parse(data.AddTime); var str = UIHelper.ServerStringTrim(data.BiddingTime); if (!str.Equals(string.Empty)) { item.biddingTime = DateTime.Parse(str); } item.biddingPrice = data.BidderPrice; item.customData = data.UserData; if (!m_ServerAuctionItemGuids.Contains(guid)) { fullServiceAuctionList.Add(guid); } } if (info.QueryDir == 1)//往后查询 { QueryRemaining.DownBool = info.QueryRemainlCount != 0; m_ServerAuctionItemGuids.AddRange(fullServiceAuctionList); } else if (info.QueryDir == 2)//往前查询 { QueryRemaining.UpBool = info.QueryRemainlCount != 0; m_ServerAuctionItemGuids.InsertRange(0, fullServiceAuctionList); } else if (info.QueryDir == 3)//定位查询 { m_ServerAuctionItemGuids.AddRange(fullServiceAuctionList); auctionHelpModel.SelectedGenreNow = 0; isLocationQuery = true; WindowCenter.Instance.Open<AuctionHouseWin>(true, 0);//定位查询 } if (serverAuctionRefresh != null) { serverAuctionRefresh(); } } public void ReceivePackage(HB502_tagGCPlayerAuctionItemInfo info)//拍卖行玩家拍卖中的物品信息 { for (int i = 0; i < info.AuctionItemCount; i++) { var data = info.AuctionItemList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { item = new AuctionItem(guid); PushAuctionItem(item); } item.itemGuid = UIHelper.ServerStringTrim(data.ItemGUID); item.familyId = (int)data.FamilyID; item.itemId = (int)data.ItemID; item.itemCount = (int)data.ItemCount; item.putAwayTime = DateTime.Parse(data.AddTime); var str = UIHelper.ServerStringTrim(data.BiddingTime); if (!str.Equals(string.Empty)) { item.biddingTime = DateTime.Parse(str); } item.biddingPrice = data.BidderPrice; item.customData = data.UserData; if (!m_MyAuctionItemGuids.Contains(guid)) { m_MyAuctionItemGuids.Add(guid); } } if (myAuctionRefresh != null) { myAuctionRefresh(); } } public void ReceivePackage(HB503_tagGCPlayerAuctionRecordInfo info)//拍卖行玩家拍卖记录 { for (int i = 0; i < info.Count; i++) { var data = info.AuctionRecordList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { item = new AuctionItem(guid); PushAuctionItem(item); } item.familyId = (int)data.FamilyID; item.putAwayTime = DateTime.Parse(data.RecordTime); item.recordType = data.RecordType;//记录类型 0-我的拍品记录 1-仙盟拍品记录 2-我的竞拍记录 item.recordResult = data.RecordResult;//记录结果 0-流拍 1-拍卖成交 2-回收 3-竞价成功 4-竞价失败 item.biddingPrice = (int)data.BidderPrice;//成交价格 item.biddingPlayerName = data.BidderName;//玩家名 item.itemId = (int)data.ItemID; item.itemCount = (int)data.ItemCount; item.customData = data.UserData; if (!m_AuctionRecords.Contains(guid)) { m_AuctionRecords.Add(guid); } } if (auctionRecordRefresh != null) { auctionRecordRefresh(); } } public void ReceivePackage(HB504_tagGCAddAuctionItemInfo info)//拍卖行新上架拍品(玩家有关注的拍品 ) { for (int i = 0; i < info.AddCount; i++) { var AddAuctionItem = info.AddAuctionItemList[i]; AddAuctionItemInfoClass addAuctionItemInfo = new AddAuctionItemInfoClass(); addAuctionItemInfo.ItemGUID = UIHelper.ServerStringTrim(AddAuctionItem.ItemGUID); addAuctionItemInfo.ItemID = (int)AddAuctionItem.ItemID; addAuctionItemInfo.Bool = true; if (AddAuctionItemInfoDic.ContainsKey(addAuctionItemInfo.ItemID)) { AddAuctionItemInfoDic[addAuctionItemInfo.ItemID] = addAuctionItemInfo; } else { AddAuctionItemInfoDic.Add(addAuctionItemInfo.ItemID, addAuctionItemInfo); } } if (AddAuctionItemInfoUpdate != null) { AddAuctionItemInfoUpdate(); } } public void ReceivePackage(HB505_tagGCFamilyAuctionItemInfo info)//拍卖行仙盟拍卖中的物品信息(上线同步,刷新同步) { for (int i = 0; i < info.AuctionItemCount; i++) { var data = info.AuctionItemList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { item = new AuctionItem(guid); PushAuctionItem(item); } item.itemGuid = UIHelper.ServerStringTrim(data.ItemGUID); item.familyId = (int)data.FamilyID; item.itemId = (int)data.ItemID; item.itemCount = (int)data.ItemCount; item.putAwayTime = DateTime.Parse(data.AddTime); var str = UIHelper.ServerStringTrim(data.BiddingTime); if (!str.Equals(string.Empty)) { item.biddingTime = DateTime.Parse(str); } item.biddingPrice = data.BidderPrice; item.customData = data.UserData; item.familyPlayers = new List<int>(); item.familyPlayers = ParseFairyPlayers(data.FamilyPlayerIDInfo); item.auctionType = data.AuctionType; if (!m_FairyAuctionItemGuids.Contains(guid)) { m_FairyAuctionItemGuids.Add(guid); } } if (fairyAuctionRefresh != null) { fairyAuctionRefresh(); } } public void ReceivePackage(HB506_tagGCAttentionAuctionItemInfo info)//拍卖行关注中的拍品信息 { m_MyFocusAuctionItemGuids.Clear(); for (int i = 0; i < info.AuctionItemCount; i++) { var data = info.AuctionItemList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { item = new AuctionItem(guid); PushAuctionItem(item); } item.itemGuid = UIHelper.ServerStringTrim(data.ItemGUID); item.familyId = (int)data.FamilyID; item.itemId = (int)data.ItemID; item.itemCount = (int)data.ItemCount; item.putAwayTime = DateTime.Parse(data.AddTime); var str = UIHelper.ServerStringTrim(data.BiddingTime); if (!str.Equals(string.Empty)) { item.biddingTime = DateTime.Parse(str); } item.biddingPrice = data.BidderPrice; item.customData = data.UserData; if (!m_MyFocusAuctionItemGuids.Contains(guid)) { m_MyFocusAuctionItemGuids.Add(guid); } } if (myFocusAuctionRefresh != null) { myFocusAuctionRefresh(); } } public void ReceivePackage(HB507_tagGCAttentionAuctionItemID info)//关注的物品ID(需要主动查询) { m_MyFocusItemIds.Clear(); for (int i = 0; i < info.AttentionCount; i++) { var itemId = (int)info.AttentionItemIDList[i]; if (!m_MyFocusItemIds.Contains(itemId)) { m_MyFocusItemIds.Add(itemId); } } if (myFocusItemRefresh != null) { myFocusItemRefresh(); } } public void ReceivePackage(HB508_tagGCRefreshAuctionItemInfo info)//拍卖行刷新拍品(只进行刷新) { for (int i = 0; i < info.RefreshCount; i++) { var data = info.RefreshAuctionItemList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { continue; } item.auctionType = data.AuctionType; item.putAwayTime = DateTime.Parse(data.AddTime); item.biddingTime = DateTime.Parse(data.BiddingTime); item.biddingPlayer = (int)data.BidderID; item.biddingPrice = (int)data.BidderPrice; var str = UIHelper.ServerStringTrim(data.BiddingTime); if (!str.Equals(string.Empty)) { item.biddingTime = DateTime.Parse(str); } if (m_FairyAuctionItemGuids.Contains(guid) && item.auctionType != 1)// 拍卖行仙盟拍卖中的物品信息 { m_FairyAuctionItemGuids.Remove(guid); if (onFairyAuctionRemove != null) { onFairyAuctionRemove(); } } if (auctionItemRefresh != null) { auctionItemRefresh(); } } } public void ReceivePackage(HB509_tagGCClearAuctionItemInfo info)//拍卖行清除拍品 { for (int i = 0; i < info.ClearCount; i++) { var ItemGUIDList = info.ClearAuctionItemList[i]; var guid = UIHelper.ServerStringTrim(ItemGUIDList.ItemGUID); if (m_MyBiddingItemGuids.Contains(guid))//清除拍卖行玩家参与竞价中的物品信息 { m_MyBiddingItemGuids.Remove(guid); } if (m_FairyAuctionItemGuids.Contains(guid))// 清除拍卖行仙盟拍卖中的物品信息 { m_FairyAuctionItemGuids.Remove(guid); if (onFairyAuctionRemove != null) { onFairyAuctionRemove(); } } var index = m_ServerAuctionItemGuids.IndexOf(guid); if (index != -1)//清除全服拍品的某一件物品 { m_ServerAuctionItemGuids.RemoveAt(index); } if (m_MyAuctionItemGuids.Contains(guid))//我的拍品清除 { m_MyAuctionItemGuids.Remove(guid); } if (m_MyFocusAuctionItemGuids.Contains(guid)) { m_MyFocusAuctionItemGuids.Remove(guid); } RemoveAuctionItem(guid); } if (onAuctionRemove != null) { onAuctionRemove(); } } public void ReceivePackage(HB510_tagGCBiddingItemInfo info)//拍卖行玩家竞价中的物品信息 (每次上线同步一次) { for (int i = 0; i < info.AuctionItemCount; i++) { var data = info.AuctionItemList[i]; var guid = UIHelper.ServerStringTrim(data.ItemGUID); AuctionItem item; if (!TryGetAuctionItem(guid, out item)) { item = new AuctionItem(guid); PushAuctionItem(item); } item.itemId = (int)data.ItemID; item.itemCount = data.ItemCount; item.familyId = (int)data.FamilyID; item.putAwayTime = DateTime.Parse(data.AddTime); var str = UIHelper.ServerStringTrim(data.BiddingTime); if (!str.Equals(string.Empty)) { item.biddingTime = DateTime.Parse(str); } item.biddingPrice = data.BidderPrice;//竞拍玩家出价 item.biddingPlayer = (int)data.BidderID;//竞拍玩家ID,也就是当前最高竞价玩家ID item.customData = data.UserData; if (!m_MyBiddingItemGuids.Contains(guid)) { m_MyBiddingItemGuids.Add(guid); } } if (myBiddingAuctionRefresh != null) { myBiddingAuctionRefresh(); } } #region 定位查询 public void SendInquiryServerAcution(int inquiryIndex, string guid, int inquiryDir, int inquiryCount = 10) { var inquiryConfig = AuctionIndexConfig.Get(inquiryIndex); @@ -88,15 +753,15 @@ public void LocationItemByGuid(string guid) { AuctionItem item; if (model.TryGetFairyAuctionItem(guid, out item) if (TryGetFairyAuctionItem(guid, out item) && item.auctionType == 1) { locationItemGuid = guid; locationGuid = guid; WindowCenter.Instance.Open<AuctionHouseWin>(true, 1); } else if (model.TryGetMyBiddingAuctionItem(guid, out item)) else if (TryGetMyBiddingAuctionItem(guid, out item)) { locationItemGuid = guid; locationGuid = guid; WindowCenter.Instance.Open<AuctionHouseWin>(true, 0); } else @@ -104,6 +769,85 @@ SendLocationServerItem(guid); } } } #endregion public void SetDayRemind() { if (redpoint.state == RedPointState.Simple) { DayRemind.Instance.SetDayRemind(DayRemind.AUCTION_REDPOINT, true); RefreshRedpoint(); } } private void RefreshRedpoint() { var redpointable = false; if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Market)) { if (!DayRemind.Instance.GetDayRemind(DayRemind.AUCTION_REDPOINT)) { redpointable = true; } } redpoint.state = redpointable ? RedPointState.Simple : RedPointState.None; } public bool SatisfyQuitFairy(int playerId)//可否退出仙盟 { foreach (var key in m_FairyAuctionItemGuids)//判断玩家是否有在竞价仙盟拍品(且是最高价) { AuctionItem item; if (TryGetAuctionItem(key, out item) && item.biddingPlayer == playerId) { return false; } } return true; } static List<int> ParseFairyPlayers(string familyPlayerIdStr) { List<int> list = new List<int>(); var intArray = LitJson.JsonMapper.ToObject<int[]>(familyPlayerIdStr); if (intArray != null) { list.AddRange(intArray); } return list; } } public class AuctionItem { public string itemGuid; public int itemId; //物品ID public int itemCount; public int auctionType; //拍品类型,0-全服拍品,1-仙盟拍品 public DateTime putAwayTime; //上架时间 public DateTime biddingTime; //最新竞价时间 public string customData; //自定义数据 public int familyId; //有值时为仙盟拍品 public List<int> familyPlayers; //可获得收益的仙盟玩家ID信息存储 public int recordType; //记录类型 0-我的拍品记录 1-仙盟拍品记录 2-我的竞拍记录 public int recordResult; //记录结果 0-流拍 1-拍卖成交 2-回收 3-竞价成功 4-竞价失败 public int biddingPrice; //竞拍玩家出价 public int biddingPlayer; //竞拍玩家ID,也就是当前最高竞价玩家ID public string biddingPlayerName; //成交玩家名 public AuctionItem(string guid) { itemGuid = guid; } } } System/Auction/AuctionModel.cs.meta
@@ -1,6 +1,6 @@ fileFormatVersion: 2 guid: 98952095fd2871c46a4c8c82e0960ed9 timeCreated: 1553927710 guid: aea72fc3de60da04ab9ab6aba1750b19 timeCreated: 1551082286 licenseType: Pro MonoImporter: serializedVersion: 2 System/Auction/FamilyAuctionWin.cs
@@ -16,8 +16,7 @@ { [SerializeField] ScrollerController m_ScrollerControllerItem; AuctionModel auctionModel { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } List<string> fairyAuctionItems = new List<string>(); @@ -40,7 +39,7 @@ var index = fairyAuctionItems.FindIndex((x) => { return x.Equals(auctionModel.locationItemGuid); return x.Equals(model.locationGuid); }); if (index != -1) @@ -48,23 +47,23 @@ m_ScrollerControllerItem.JumpIndex(index); } auctionModel.locationItemGuid = string.Empty; model.locationGuid = string.Empty; } protected override void OnAfterOpen() { model.FamilyAuctionItemUpdate += FamilyAuctionReset; model.ClearFamilyAuctionUpdate += FamilyAuctionReset; model.RefreshAuctionItemUpdate += RefreshAuctionItemUpdate; model.BiddingItemInfoUpdate += RefreshAuctionItemUpdate; model.fairyAuctionRefresh += FamilyAuctionReset; model.onFairyAuctionRemove += FamilyAuctionReset; model.auctionItemRefresh += RefreshAuctionItemUpdate; model.myBiddingAuctionRefresh += RefreshAuctionItemUpdate; } protected override void OnPreClose() { model.FamilyAuctionItemUpdate -= FamilyAuctionReset; model.ClearFamilyAuctionUpdate -= FamilyAuctionReset; model.BiddingItemInfoUpdate -= RefreshAuctionItemUpdate; model.RefreshAuctionItemUpdate -= RefreshAuctionItemUpdate; model.fairyAuctionRefresh -= FamilyAuctionReset; model.onFairyAuctionRemove -= FamilyAuctionReset; model.myBiddingAuctionRefresh -= RefreshAuctionItemUpdate; model.auctionItemRefresh -= RefreshAuctionItemUpdate; } System/Auction/FamilyAuctioncell.cs
@@ -33,7 +33,7 @@ [SerializeField] ImageEx m_BiddingImage; [SerializeField] TextEx m_JadeNumber2; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } System/Auction/FullServiceAuctionWin.cs
@@ -27,10 +27,9 @@ [SerializeField] Text m_JobTipText; [SerializeField] Text m_TypeTipText; List<string> m_ServerAuctionItems = new List<string>();//全服拍品列表 List<string> itemGuids = new List<string>();//全服拍品列表 AuctionModel auctionModel { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } private bool IsSendBool = true; @@ -56,10 +55,10 @@ auctionHelpModel.isOpenPanel = true; IsSendBool = false; GlobalTimeEvent.Instance.secondEvent += secondEvent; model.FullServiceAuctionUpdate += FullServiceAuctionUpdate;//数据请求刷新 model.RefreshAuctionItemUpdate += RefreshAuctionItemUpdate;//刷新 model.ClearAuctionUpdate += ClearAuctionUpdate;//清除 model.BiddingItemInfoUpdate += BiddingItemInfoUpdate;//竞价物品信息刷新 model.serverAuctionRefresh += FullServiceAuctionUpdate;//数据请求刷新 model.auctionItemRefresh += RefreshAuctionItemUpdate;//刷新 model.onAuctionRemove += ClearAuctionUpdate;//清除 model.myBiddingAuctionRefresh += BiddingItemInfoUpdate;//竞价物品信息刷新 ResetServerAuctionInquiry(); CloseTip(); @@ -68,14 +67,14 @@ OnCreateGridLineCellType(m_ScrollerControllerType); OnCreateGridLineCellItem(m_ScrollerControllerItem); var index = m_ServerAuctionItems.IndexOf(auctionModel.locationItemGuid); var index = itemGuids.IndexOf(model.locationGuid); if (index != -1) { m_ScrollerControllerItem.JumpIndex(index); } model.LocationQuery = false; auctionModel.locationItemGuid = string.Empty; model.isLocationQuery = false; model.locationGuid = string.Empty; SetTipText(); } @@ -88,10 +87,10 @@ protected override void OnPreClose() { model.FullServiceAuctionUpdate -= FullServiceAuctionUpdate; model.RefreshAuctionItemUpdate -= RefreshAuctionItemUpdate; model.ClearAuctionUpdate -= ClearAuctionUpdate; model.BiddingItemInfoUpdate -= BiddingItemInfoUpdate;//竞价物品信息刷新 model.serverAuctionRefresh -= FullServiceAuctionUpdate; model.auctionItemRefresh -= RefreshAuctionItemUpdate; model.onAuctionRemove -= ClearAuctionUpdate; model.myBiddingAuctionRefresh -= BiddingItemInfoUpdate;//竞价物品信息刷新 GlobalTimeEvent.Instance.secondEvent -= secondEvent; } @@ -282,7 +281,7 @@ private void OnCreateGridLineCellItem(ScrollerController gridCtrl) { if (!model.LocationQuery && !model.QueryRemaining.UpBool) if (!model.isLocationQuery && !model.QueryRemaining.UpBool) { PushMyBiddingItems(); } @@ -290,14 +289,14 @@ List<string> guids = model.GetServerAuctionItems(); foreach (var guid in guids) { if (!m_ServerAuctionItems.Contains(guid)) if (!itemGuids.Contains(guid)) { m_ServerAuctionItems.Add(guid); itemGuids.Add(guid); } } gridCtrl.Refresh(); for (int i = 0; i < m_ServerAuctionItems.Count; i++) for (int i = 0; i < itemGuids.Count; i++) { gridCtrl.AddCell(ScrollerDataType.Header, i); } @@ -308,7 +307,7 @@ { int index = cell.index; FullServiceAuctioncell fullServiceAuctioncell = cell.GetComponent<FullServiceAuctioncell>(); fullServiceAuctioncell.GetFullServiceAuctionGUID(m_ServerAuctionItems[index], index, m_ServerAuctionItems.Count); fullServiceAuctioncell.GetFullServiceAuctionGUID(itemGuids[index], index, itemGuids.Count); } private void ResetServerAuctionInquiry()//重置查询 @@ -317,9 +316,9 @@ var inquiryIndex = AuctionInquiry.Instance.GetInquiryIndex(); if (inquiryIndex != 0) { if (!model.LocationQuery) if (!model.isLocationQuery) { auctionModel.SendInquiryServerAcution(inquiryIndex, string.Empty, 1); model.SendInquiryServerAcution(inquiryIndex, string.Empty, 1); } } } @@ -350,7 +349,7 @@ private void PushMyBiddingItems() { m_ServerAuctionItems.Clear(); itemGuids.Clear(); var index = AuctionInquiry.Instance.GetInquiryIndex(); if (index == 0) @@ -374,10 +373,10 @@ if (itemType == 0 || itemType == config.ItemType) { m_ServerAuctionItems.Add(guid); itemGuids.Add(guid); } } m_ServerAuctionItems.Sort(MyBiddingItemCompare); itemGuids.Sort(MyBiddingItemCompare); } int MyBiddingItemCompare(string x, string y)//数组排列 System/Auction/FullServiceAuctioncell.cs
@@ -33,8 +33,7 @@ [SerializeField] Button m_BiddingButton;//竞价按钮 [SerializeField] TextEx m_JadeNumber2; AuctionModel auctionModel { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } @@ -81,7 +80,7 @@ { if (inquiryIndex != 0 && auctionHelpModel.Wait && model.QueryRemaining.UpBool) { auctionModel.SendInquiryServerAcution(inquiryIndex, auctionItem.itemGuid, 2); model.SendInquiryServerAcution(inquiryIndex, auctionItem.itemGuid, 2); auctionHelpModel.Wait = false; } } @@ -89,7 +88,7 @@ { if (inquiryIndex != 0 && auctionHelpModel.Wait && model.QueryRemaining.DownBool && !auctionHelpModel.isOpenPanel) { auctionModel.SendInquiryServerAcution(inquiryIndex, auctionItem.itemGuid, 1); model.SendInquiryServerAcution(inquiryIndex, auctionItem.itemGuid, 1); auctionHelpModel.Wait = false; } } System/Auction/MyAuctionCell.cs
@@ -26,7 +26,7 @@ [SerializeField] TextEx m_TimeText;//时间 [SerializeField] TextEx m_Income;//收益 AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } System/Auction/MyAuctionWin.cs
@@ -14,7 +14,7 @@ public class MyAuctionWin : Window { [SerializeField] ScrollerController m_ScrollerController; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } List<string> myAuctionItems = new List<string>(); @@ -39,22 +39,22 @@ protected override void OnAfterOpen() { model.AttentionAuctionItemUdate += ResetUpdate; model.ClearAuctionUpdate += ResetUpdate; model.RefreshAuctionItemUpdate += AuctionItemUpdate;//刷新 model.FamilyAuctionItemUpdate += ResetUpdate; model.myFocusAuctionRefresh += ResetUpdate; model.onAuctionRemove += ResetUpdate; model.auctionItemRefresh += AuctionItemUpdate;//刷新 model.fairyAuctionRefresh += ResetUpdate; model.AddAuctionItemInfoUpdate += ResetUpdate; model.PlayerAuctionItem += ResetUpdate; model.myAuctionRefresh += ResetUpdate; } protected override void OnPreClose() { model.AttentionAuctionItemUdate -= ResetUpdate; model.ClearAuctionUpdate -= ResetUpdate; model.RefreshAuctionItemUpdate -= AuctionItemUpdate;//刷新 model.FamilyAuctionItemUpdate -= ResetUpdate; model.myFocusAuctionRefresh -= ResetUpdate; model.onAuctionRemove -= ResetUpdate; model.auctionItemRefresh -= AuctionItemUpdate;//刷新 model.fairyAuctionRefresh -= ResetUpdate; model.AddAuctionItemInfoUpdate -= ResetUpdate; model.PlayerAuctionItem -= ResetUpdate; model.myAuctionRefresh -= ResetUpdate; } protected override void OnAfterClose() System/Auction/MyFocusBehavior.cs
@@ -18,7 +18,7 @@ [SerializeField] Button m_GoButton; [SerializeField] ItemCell m_ItemCell; [SerializeField] Text m_ItemNameTxt; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } private List<AddAuctionItemInfoClass> MyFocusItemList = new List<AddAuctionItemInfoClass>(); private int ItemID = 0; System/Auction/MyFocusCell.cs
@@ -32,7 +32,7 @@ [SerializeField] Button m_BiddingButton;//竞价按钮 [SerializeField] ImageEx m_BiddingImage; [SerializeField] TextEx m_JadeNumber2; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } System/Auction/MyFocusWin.cs
@@ -15,7 +15,7 @@ public class MyFocusWin : Window { [SerializeField] ScrollerController m_ScrollerController; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } List<string> myFocusAuctionItems = new List<string>(); @@ -42,24 +42,24 @@ protected override void OnAfterOpen() { model.AttentionAuctionItemUdate += ResetUpdate; model.ClearAuctionUpdate += ResetUpdate; model.RefreshAuctionItemUpdate += AuctionItemUpdate;//刷新 model.FamilyAuctionItemUpdate += ResetUpdate; model.myFocusAuctionRefresh += ResetUpdate; model.onAuctionRemove += ResetUpdate; model.auctionItemRefresh += AuctionItemUpdate;//刷新 model.fairyAuctionRefresh += ResetUpdate; model.AddAuctionItemInfoUpdate += AddAuctionItemInfoUpdate; model.BiddingItemInfoUpdate += ResetUpdate; model.myBiddingAuctionRefresh += ResetUpdate; } protected override void OnPreClose() { model.AttentionAuctionItemUdate -= ResetUpdate; model.ClearAuctionUpdate -= ResetUpdate; model.RefreshAuctionItemUpdate -= AuctionItemUpdate;//刷新 model.FamilyAuctionItemUpdate -= ResetUpdate; model.myFocusAuctionRefresh -= ResetUpdate; model.onAuctionRemove -= ResetUpdate; model.auctionItemRefresh -= AuctionItemUpdate;//刷新 model.fairyAuctionRefresh -= ResetUpdate; model.AddAuctionItemInfoUpdate -= AddAuctionItemInfoUpdate; model.BiddingItemInfoUpdate -= ResetUpdate; model.myBiddingAuctionRefresh -= ResetUpdate; } System/Auction/TransactionRecordWin.cs
@@ -22,12 +22,14 @@ [SerializeField] Text m_TypeText; [SerializeField] Button m_TypeButon; [SerializeField] GameObject m_TextObj; AuctionInquiryModel model { get { return ModelCenter.Instance.GetModel<AuctionInquiryModel>(); } } AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } } AuctionHelpModel auctionHelpModel { get { return ModelCenter.Instance.GetModel<AuctionHelpModel>(); } } private List<AuctionItem> AuctionRecordList = new List<AuctionItem>(); List<string> itemGuids = new List<string>(); ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } int AuctionType = 0; int MaxCount = 0; #region Built-in protected override void BindController() { @@ -68,12 +70,12 @@ protected override void OnAfterOpen() { model.PlayerAuctionRecordUpdate += PlayerAuctionRecordUpdate; model.auctionRecordRefresh += PlayerAuctionRecordUpdate; } protected override void OnPreClose() { model.PlayerAuctionRecordUpdate -= PlayerAuctionRecordUpdate; model.auctionRecordRefresh -= PlayerAuctionRecordUpdate; } @@ -89,7 +91,7 @@ private void OnCreateGridCell(ScrollerController gridCtrl) { GetAuctionRecordList(); if (AuctionRecordList.Count > 0) if (itemGuids.Count > 0) { m_TextObj.SetActive(false); } @@ -98,7 +100,7 @@ m_TextObj.SetActive(true); } gridCtrl.Refresh(); for (int i = 0; i < AuctionRecordList.Count; i++) for (int i = 0; i < itemGuids.Count; i++) { if (i < MaxCount) { @@ -110,18 +112,21 @@ private void OnRefreshGridCell(ScrollerDataType type, CellView cell) { int index = cell.index; var auctionRecord = AuctionRecordList[index]; var itemConfig = ItemConfig.Get(auctionRecord.itemId); if (itemConfig == null) var guid = itemGuids[index]; AuctionItem item; if (!model.TryGetAuctionRecordItem(guid, out item)) { DebugEx.LogError("物品表没有找到该物品,物品ID为" + auctionRecord.itemId); return; } var itemConfig = ItemConfig.Get(item.itemId); ItemCell itemCell = cell.transform.Find("ItemCell1").GetComponent<ItemCell>(); Text textName = cell.transform.Find("ItemName").GetComponent<Text>(); RichText transactionStatusText = cell.transform.Find("TransactionStatusText").GetComponent<RichText>(); Text timeText = cell.transform.Find("TimeText").GetComponent<Text>(); ItemCellModel cellModel = new ItemCellModel(itemConfig.ID, true, (ulong)auctionRecord.itemCount); ItemCellModel cellModel = new ItemCellModel(itemConfig.ID, true, (ulong)item.itemCount); GameObject SuccessfulBiddingObj = cell.transform.Find("SuccessfulBiddingObj").gameObject;//竞拍成功(竞拍成功) TextEx SuccessfulBiddingText = cell.transform.Find("SuccessfulBiddingObj/SuccessfulBiddingText").GetComponent<TextEx>(); @@ -129,7 +134,7 @@ GameObject AuctionFailedObj = cell.transform.Find("AuctionFailedObj").gameObject;//竞拍失败 Text JadeMoney_1 = cell.transform.Find("AuctionFailedObj/JadeMoney").GetComponent<Text>(); switch (auctionRecord.recordResult) switch (item.recordResult) { case 0://流拍 transactionStatusText.gameObject.SetActive(true); @@ -141,9 +146,9 @@ SuccessfulBiddingObj.SetActive(true); transactionStatusText.gameObject.SetActive(false); AuctionFailedObj.SetActive(false); var name = UIHelper.ServerStringTrim(auctionRecord.biddingPlayerName); var name = UIHelper.ServerStringTrim(item.biddingPlayerName); SuccessfulBiddingText.text = Language.Get("PMH_15", name); JadeMoney.text = auctionRecord.biddingPrice.ToString(); JadeMoney.text = item.biddingPrice.ToString(); break; case 2://回收 transactionStatusText.gameObject.SetActive(true); @@ -157,13 +162,13 @@ AuctionFailedObj.SetActive(false); string strName = string.Empty; SuccessfulBiddingText.text = Language.Get("PMH_13"); JadeMoney.text = auctionRecord.biddingPrice.ToString(); JadeMoney.text = item.biddingPrice.ToString(); break; case 4://竞价失败 AuctionFailedObj.SetActive(true); SuccessfulBiddingObj.SetActive(false); transactionStatusText.gameObject.SetActive(false); JadeMoney_1.text = auctionRecord.biddingPrice.ToString(); JadeMoney_1.text = item.biddingPrice.ToString(); break; case 5://仙盟流拍到全服 transactionStatusText.gameObject.SetActive(true); @@ -176,11 +181,11 @@ itemCell.Init(cellModel); itemCell.button.SetListener(() => { ItemAttrData attrData = new ItemAttrData(itemConfig.ID, true, (ulong)auctionRecord.itemCount); ItemAttrData attrData = new ItemAttrData(itemConfig.ID, true, (ulong)item.itemCount); itemTipsModel.SetItemTipsModel(attrData); }); textName.text = itemConfig.ItemName; timeText.text = auctionRecord.putAwayTime.ToString("yyyy-MM-dd HH:mm:ss"); timeText.text = item.putAwayTime.ToString("yyyy-MM-dd HH:mm:ss"); } private void OnCreateGridTypeCell(ScrollerController gridCtrl) @@ -229,23 +234,34 @@ } return str; } private void GetAuctionRecordList() { AuctionRecordList.Clear(); foreach (var value in model.PlayerAuctionRecordDic.Values) this.itemGuids.Clear(); var itemGuids = model.GetAuctionRecords(); foreach (var guid in itemGuids) { if (value.recordType == AuctionType) AuctionItem item; if (model.TryGetAuctionRecordItem(guid, out item)) { AuctionRecordList.Add(value); if (item.recordType == AuctionType) { this.itemGuids.Add(guid); } } } AuctionRecordList.Sort(Compare); this.itemGuids.Sort(Compare); } int Compare(AuctionItem x, AuctionItem y) int Compare(string x, string y) { if (x.putAwayTime.CompareTo(y.putAwayTime) != 0)//根据时间排序 AuctionItem lhs; AuctionItem rhs; if (model.TryGetAuctionRecordItem(x, out lhs) && model.TryGetAuctionRecordItem(y, out rhs)) { return -x.putAwayTime.CompareTo(y.putAwayTime); return -lhs.putAwayTime.CompareTo(rhs.putAwayTime); } return 1; } System/DailyQuest/DayRemind.cs
@@ -49,6 +49,7 @@ public const string TEAM_TICKET_FAIRYLAND = "TeamTicketFairyLand"; public const string FESTIVALREDPACKREMIND = "FestivalRedpackRemind"; public const string EQUIPTRAIN_COSTDIAMOND = "EquipTrain_CostDiamond"; public const string AUCTION_REDPOINT = "Auction_Redpoint"; public Dictionary<string, int[]> dayRemindDic = new Dictionary<string, int[]>(); @@ -106,6 +107,8 @@ SetDayRemind(FAIRYGRABBOSS_NOTICE_REDPOINT); SetDayRemind(TEAM_TICKET_FAIRYLAND); SetDayRemind(FESTIVALREDPACKREMIND); SetDayRemind(EQUIPTRAIN_COSTDIAMOND); SetDayRemind(AUCTION_REDPOINT); } private void SetDayRemind(string _key) System/FairyAu/FairyApplyWin.cs
@@ -219,8 +219,8 @@ return; } var auctionModel = ModelCenter.Instance.GetModel<AuctionInquiryModel>(); if (!auctionModel.IsFamilyQuit()) var auctionModel = ModelCenter.Instance.GetModel<AuctionModel>(); if (!auctionModel.SatisfyQuitFairy((int)PlayerDatas.Instance.baseData.PlayerID)) { SysNotifyMgr.Instance.ShowTip("Paimai8"); return; System/FairyAu/FairyModel.cs
@@ -113,8 +113,8 @@ #region 发包 public void SendKickFairy(uint playerID) { var auctionModel = ModelCenter.Instance.GetModel<AuctionInquiryModel>(); if (!auctionModel.IsFamilyQuit((int)playerID)) var auctionModel = ModelCenter.Instance.GetModel<AuctionModel>(); if (!auctionModel.SatisfyQuitFairy((int)playerID)) { SysNotifyMgr.Instance.ShowTip("Paimai7"); return; System/WindowBase/ModelCenter.cs
@@ -221,7 +221,7 @@ RegisterModel<EquipStarModel>(); RegisterModel<TreasureSkillModel>(); RegisterModel<EquipGemModel>(); RegisterModel<AuctionInquiryModel>(); RegisterModel<AuctionModel>(); RegisterModel<AllianceBossModel>(); RegisterModel<AuctionHelpModel>(); RegisterModel<EquipTrainModel>(); @@ -230,7 +230,6 @@ RegisterModel<RuneResolveModel>(); RegisterModel<ReikiRootModel>(); RegisterModel<AuctionNewGetShowModel>(); RegisterModel<AuctionModel>(); inited = true; }