public void ClearOffers(PaymentSectionLoadedEvent e, Node node, [JoinAll] GoodsSelectionScreenNode screen) { screen.goodsSelectionScreen.SpecialOfferDataProvider.ClearItems(); screen.goodsSelectionScreen.XCrystalsDataProvider.ClearItems(); }
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()); }