public override bool Equals(object obj) { RedeemerItem lhs = obj as RedeemerItem; if (lhs != null) { return(lhs == this); } return(false); }
void OnLoadPayouts(string err, Hashtable data) { if (!string.IsNullOrEmpty(err)) { EB.Debug.LogError("获取商品失败:" + err); _config.Listener.OnOffersFetched(); return; } _externalId = EB.Dot.String("externalTrkid", data, _externalId); int end = _externalId.LastIndexOf(':'); _externalId = _externalId.Substring(0, end + 1);//去掉平台数据,后面用到的自己去拼,处理多平台问题 _sale = null; _bonusItems.Clear(); _payouts.Clear(); _enumerated = false; var currentSet = EB.Dot.Find <object>("data.payoutSets.0", data); if (currentSet != null) { var sale = EB.Dot.Object("sale", currentSet, null); if (sale != null) { _sale = new PayoutSale(sale); } var bonus = EB.Dot.Array("redeemers", currentSet, new ArrayList()); foreach (object candidate in bonus) { Hashtable item = candidate as Hashtable; if (item != null) { RedeemerItem redeemerItem = new RedeemerItem(item); if (redeemerItem.IsValid == true) { _bonusItems.Add(redeemerItem); } } } var payouts = Dot.Array("payouts", currentSet, new ArrayList()); EB.Debug.Log("【商城】加载商品成功,数量:{0}", payouts.Count); foreach (Hashtable payout in payouts) { var item = new EB.IAP.Item(_externalId, payout); _payouts.Add(item); } } _iapManager.Enumerate(_payouts); _config.Listener.OnOffersFetchSuceeded(); }
public bool IsSameItem(RedeemerItem candidate) { return((this.Type == candidate.Type) && (this.Data == candidate.Data)); }