private StringBuilder buildComment(Entity entity, ItemsPackFromConfigComponent itemsPackFromConfig) { StringBuilder builder = new StringBuilder(); if (itemsPackFromConfig.Pack.Count > 0) { int num = 0; builder.Append("* —"); bool flag = true; foreach (long num2 in itemsPackFromConfig.Pack) { ItemInMarketRequestEvent evt = new ItemInMarketRequestEvent(); this.SendEvent <ItemInMarketRequestEvent>(evt, entity); if (evt.marketItems.ContainsKey(num2)) { if (!flag) { builder.Append(", "); } flag = false; builder.Append(evt.marketItems[num2]); num++; } } if (num == 0) { builder.Append((string)this.specialOfferEmptyRewardMessage); } } return(builder); }
public void CheckItem(ItemInMarketRequestEvent e, Node any, [JoinAll] SelfUserNode selfUserNode, [JoinAll, Combine] MarketItemNode item) { if (!selfUserNode.purchasedItemList.Contains(item.Entity.Id)) { e.marketItems.Add(item.Entity.Id, item.descriptionItem.Name); } }
public void AddOffer(CollectOfferEvent e, PersonalSpecialOfferPropertyNode personalOfferProperty, [JoinBy(typeof(SpecialOfferGroupComponent))] SpecialOfferNode offer, [JoinAll] GoodsSelectionScreenNode screen) { StringBuilder builder = new StringBuilder(); if (offer.itemsPackFromConfig.Pack.Count > 0) { int num = 0; builder.Append("* —"); bool flag = true; foreach (long num2 in offer.itemsPackFromConfig.Pack) { ItemInMarketRequestEvent eventInstance = new ItemInMarketRequestEvent(); base.ScheduleEvent(eventInstance, offer); if (eventInstance.marketItems.ContainsKey(num2)) { if (!flag) { builder.Append(", "); } flag = false; builder.Append(eventInstance.marketItems[num2]); num++; } } if (num == 0) { builder.Append(screen.goodsSelectionScreen.SpecialOfferEmptyRewardMessage); } } if (offer.specialOfferDuration.OneShot && personalOfferProperty.Entity.HasComponent(typeof(PaymentIntentComponent))) { if (builder.Length > 0) { builder.Append("\n"); } builder.Append(screen.goodsSelectionScreen.SpecialOfferOneShotMessage); } screen.goodsSelectionScreen.SpecialOfferDataProvider.AddItem(offer.Entity, builder.ToString()); }