/// <summary> /// 全部商品信息初始化 /// </summary> public void GoodDataInfo() { mMaxGoodNum = DataTable.Instance.GetGoodData().Count; mGoodsList = new int[DataTable.Instance.GetGoodData().Count]; int idx = 0; mAllGoodsDir.Clear(); PlayerData.Instance.mDepotGoods.Clear(); Hashtable dirData = DataTable.Instance.GetGoodData(); //遍历方法二:遍历哈希表中的值 foreach (Tab_GoodData item in dirData.Values) { // Debug.Log(item.Name); mAllGoodsDir.Add(item.ID, new GoodItemData(item)); GoodItemData goodItem = new GoodItemData(item); goodItem.isDepot = true; PlayerData.Instance.mDepotGoods.Add(item.ID, goodItem); if (idx < mGoodsList.Length) { mGoodsList[idx] = item.ID; idx++; } } }
public void ShowGoodByDepot(GoodItemData data) { goodData = data; icon.sprite = data.iconSprite; goodName.text = data.goodName; goodPrice.text = "¥" + data.goodPrice.ToString(); goodDetails.text = String.Format("持有数量:{0}个,商品总值:¥{1}", data.goodNum, data.goodPrice * data.goodNum); }
public void ShowGoodByMarket(GoodItemData data) { goodData = data; icon.sprite = data.iconSprite; goodName.text = data.goodName; goodPrice.text = "<color=#B25D5D64>¥</color>" + data.goodPrice.ToString(); goodDetails.text = String.Format("名声影响:{0} 价格范围:¥{1}至¥{2}", data.goodData.Repute, data.goodData.PriceMin, data.goodData.PriceMax); }
// GET: Item/Details/5 public async Task <ActionResult> Details(int id) { var surl = await GalleryController.GetSurl(); var request = new ImageDataRequest(id); var rawData = await request.GetItemData(surl); var goodData = GoodItemData.CreateFromItemInformation(rawData); return(View(goodData)); }
private static async Task <GoodItemData> GetItemData(string surl, int itemId) { var request = new ImageDataRequest(itemId); var rawData = await request.GetItemData(surl); var goodData = GoodItemData.CreateFromItemInformation(rawData); return(goodData); ////galleryItemInfo.Name = goodData.Name; ////galleryItemInfo.Artist = goodData.Artist; ////galleryItemInfo.ImageUrl = goodData.ImageUrl; }
/// <summary> /// 出售商品 /// </summary> /// <param name="goodData">商品</param> public void SellGoods(GoodItemData goodData, int sellNum) { GoodItemData depotGood = mDepotGoods[goodData.goodId]; GoodItemData marketGood = GoodData.Instance.mMarketGoods.Find(a => a.goodId == goodData.goodId); sellNum = sellNum < depotGood.goodNum ? sellNum : depotGood.goodNum; depotGood.goodNum = depotGood.goodNum - sellNum; mDepotGoods[goodData.goodId] = depotGood; //更新仓库显示 MainView.instacne.CreatGoodItem(mDepotGoods.Values.ToList(), true); this.Cash += marketGood.goodPrice * sellNum; this.GoodRoom -= sellNum; }
/// <summary> /// 获得随机商品信息 /// </summary> /// <param name="item">商品</param> /// <returns>随机后的商品</returns> public GoodItemData GetRandomGoodData(GoodItemData item) { int randomNum = Random.Range(1, 101); item.mEvent = null; item.eventEfftct = 1.0f; int mEventDropNum = 0; int mEventRiseNum = 0; for (int i = 0; i < item.goodData.GetEventDropIdCount(); i++) { if (item.goodData.GetEventDropIdbyIndex(i) > 0) { mEventDropNum++; } } for (int i = 0; i < item.goodData.GetEventRiseIdCount(); i++) { if (item.goodData.GetEventRiseIdbyIndex(i) > 0) { mEventRiseNum++; } } Tab_Event tabEve = null; if (randomNum <= item.goodData.EventRatioDrop && mEventDropNum > 0) { tabEve = DataTable.Instance.GetEventById(item.goodData.GetEventDropIdbyIndex(Random.Range(0, mEventDropNum))); if (tabEve != null) { item.eventEfftct = (float)tabEve.EventEffect / 10.0f; item.mEvent = tabEve; } } if (randomNum > (100 - item.goodData.EventRatioRise) && mEventRiseNum > 0) { tabEve = DataTable.Instance.GetEventById(item.goodData.GetEventRiseIdbyIndex(Random.Range(0, mEventRiseNum))); if (tabEve != null) { item.eventEfftct = (float)tabEve.EventEffect / 10.0f; item.mEvent = tabEve; } } //随机一下 获得事件值 item.goodPrice = (int)(Random.Range(item.goodData.PriceMin, item.goodData.PriceMax) * item.eventEfftct); // Debug.Log("商品名称: "+ item.goodName + " 最大值:"+ item.goodData.PriceMax + " 最小值:"+ item.goodData.PriceMin + " 当前值:"+ item.goodPrice); item.isDepot = false; return(item); }
public void Show(GoodItemData data) { gameObject.SetActive(true); goodData = data; goodNameText.text = Localization.Get("商品名称: ") + data.goodName; if (!data.isDepot) { //假如是仓库显示 // 标题 titleText.text = Localization.Get("买进"); // 当前价格 curPriceText.text = Localization.Get("当前价格: ") + data.goodPrice.ToString(); // 剩余资金 monseText.text = Localization.Get("剩余资金: ") + PlayerData.Instance.Cash.ToString(); // 最多购买 剩余空间 int leftNum = PlayerData.Instance.Cash / data.goodPrice; goodNumText.text = Localization.Get("最多购买: ") + (leftNum < PlayerData.Instance.LeftRoom ? leftNum : PlayerData.Instance.LeftRoom).ToString(); inputText.text = (leftNum < PlayerData.Instance.LeftRoom ? leftNum : PlayerData.Instance.LeftRoom).ToString(); } else { //标题 titleText.text = Localization.Get("出售"); // 当前价格 GoodItemData item = GoodData.Instance.mMarketGoods.Find(a => a.goodId == data.goodId); if (item == null) { //表示没卖的 TipProxy.ShowTip(Localization.Get("没卖的")); gameObject.SetActive(false); return; } curPriceText.text = Localization.Get("当前价格: ") + item.goodPrice.ToString(); // 买进均价 monseText.text = Localization.Get("买进均价: ") + data.goodPrice.ToString(); // 最大盈亏 goodNumText.text = Localization.Get("最大盈亏: ") + ((item.goodPrice - data.goodPrice) * data.goodNum).ToString(); inputText.text = data.goodNum.ToString(); } }
/// <summary> /// 购买商品 /// </summary> /// <param name="goodData">商品</param> public void BuyGoods(GoodItemData goodData, int buyNum) { if (goodData == null) { return; } //判断商品是否超出承受范围 if (buyNum > PlayerData.Instance.LeftRoom) { TipProxy.ShowTip("GoodNumOver"); return; } GoodItemData depotGood = mDepotGoods[goodData.goodId]; int allNum = (depotGood.goodNum + buyNum); depotGood.goodPrice = allNum > 0 ? (depotGood.goodPrice * depotGood.goodNum + goodData.goodPrice * buyNum) / allNum : 0; depotGood.goodNum = depotGood.goodNum + buyNum; mDepotGoods[goodData.goodId] = depotGood; this.Cash -= goodData.goodPrice * buyNum; this.GoodRoom += buyNum; }