//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Thursday, February 28, 2019 //-------------------------------------------------------- using System; using System.Collections.Generic; using vnxbqy.UI; using System.Linq; namespace vnxbqy.UI { public class AuctionHelpModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk { public List FullServiceAuctionList = new List();//全服拍卖列表 public List AuctionItemList = new List();//拍卖物品表 AuctionModel model { get { return ModelCenter.Instance.GetModel(); } } public int AuctionTaxrate1 = 0;//全服拍品税率 public int AuctionTaxrate2 = 0;//仙盟拍品税率 public int AuctionTaxrate3 = 0;//仙盟拍品个人税率 public int MaxFocusCount = 10;//最大可关注数量 public int ExtensionTime = 0;//延长时间(秒) private ItemModel itemModel;//当前选择想要上架的物品 public ItemModel ItemModel { get { return itemModel; } set { itemModel = value; } } public override void Init() { AuctionLogicUtil.Initialize(); var funconfig = FuncConfigConfig.Get("AuctionHouse"); MaxFocusCount = int.Parse(funconfig.Numerical5); ExtensionTime = int.Parse(funconfig.Numerical4); var AuctionTaxrateConfig = FuncConfigConfig.Get("AuctionTaxrate"); AuctionTaxrate1 = int.Parse(AuctionTaxrateConfig.Numerical1); AuctionTaxrate2 = int.Parse(AuctionTaxrateConfig.Numerical2); AuctionTaxrate3 = int.Parse(AuctionTaxrateConfig.Numerical3); AuctionItemList = AuctionItemConfig.GetValues(); } public void OnBeforePlayerDataInitialize() { } public void OnPlayerLoginOk() { } public override void UnInit() { } public List GetAuctionItemList(int index)//获取关注列表 { List auctionItemList = new List(); for (int i = 0; i < AuctionItemList.Count; i++) { var auctionItem = AuctionItemList[i]; if (auctionItem.ItemType == index) { auctionItemList.Add(auctionItem); } } auctionItemList.Sort(Compare); return auctionItemList; } int Compare(AuctionItemConfig x, AuctionItemConfig y)//数组排列 { bool havex = model.IsMyFocusItem(x.ItemID); bool havey = model.IsMyFocusItem(y.ItemID); if (havex.CompareTo(havey) != 0) { return -havex.CompareTo(havey); } //if (x.Sortpriority.CompareTo(y.Sortpriority) != 0) //{ // return x.Sortpriority.CompareTo(y.Sortpriority); //} var itemConfigX = ItemConfig.Get(x.ItemID); var itemConfigY = ItemConfig.Get(y.ItemID); if (itemConfigX != null && itemConfigY != null) { //if (itemConfigX.EquipPlace.CompareTo(itemConfigY.EquipPlace) != 0)//优先装备 //{ // return itemConfigX.EquipPlace.CompareTo(itemConfigY.EquipPlace); //} if (itemConfigX.ItemColor.CompareTo(itemConfigY.ItemColor) != 0)//品阶到低品阶 { return -itemConfigX.ItemColor.CompareTo(itemConfigY.ItemColor); } if (itemConfigX.LV.CompareTo(itemConfigY.LV) != 0)//阶数(高到低) { return -itemConfigX.LV.CompareTo(itemConfigY.LV); } //if (itemConfigX.Type.CompareTo(itemConfigY.Type) != 0)//类型 //{ // return itemConfigX.Type.CompareTo(itemConfigY.Type); //} //if (itemConfigX.JobLimit.CompareTo(itemConfigY.JobLimit) != 0)//职业 //{ // return itemConfigX.JobLimit.CompareTo(itemConfigY.JobLimit); //} if (itemConfigX.ID.CompareTo(itemConfigY.ID) != 0)//ID(升序) { return itemConfigX.ID.CompareTo(itemConfigY.ID); } } return 1; } } }