Advertisement
Guest User

Untitled

a guest
Nov 21st, 2019
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Haxe 2.21 KB | None | 0 0
  1. var tiered_offers_all:Array<Int> = _offersLoader.getKeys();
  2.         var tiers:Array<TieredOfferTierStruct>;
  3.         var tier:TieredOfferTierStruct;
  4.         var possibleOffers:Array<Int> = new Array<Int>();
  5.         _activeOfferId = 0;
  6.         var timeToStart:Float = -1;
  7.         for (tiered_offer_id in tiered_offers_all) {
  8.             if (ServerTime.getTimestamp() > _offersLoader.getEnd(tiered_offer_id)) continue;
  9.             if (_lastRegion < _offersLoader.getRegionId(tiered_offer_id)) continue;
  10.             if (_inventoryManager.getLevel() < _offersLoader.getReqLevel(tiered_offer_id)) continue;
  11.             if (ServerTime.getTimestamp() < _offersLoader.getStart(tiered_offer_id)) {
  12.                 timeToStart = _offersLoader.getStart(tiered_offer_id) - ServerTime.getTimestamp();
  13.                 continue;
  14.             }
  15.             if (_tieredOfferStartTime == 0) {
  16.                 _tieredOfferStartTime = _offersLoader.getStart(tiered_offer_id);
  17.             } else {
  18.                 _tieredOfferStartTime = Math.min(_tieredOfferStartTime, _offersLoader.getStart(tiered_offer_id));
  19.             }
  20.             _tieredOfferFinishTime = Math.max(_tieredOfferFinishTime, _offersLoader.getEnd(tiered_offer_id));
  21.             tiers = _offersLoader.getTiers(tiered_offer_id);
  22.             for (tier in tiers) {
  23.                 if (_viewedOffers.indexOf(tiered_offer_id) >= 0 || _boughtOffers.indexOf(tier.getId()) >= 0) {
  24.                     _activeOfferId = tiered_offer_id;
  25.                 }
  26.             }
  27.             possibleOffers.push(tiered_offer_id);
  28.         }
  29.         if (_activeOfferId == 0) {
  30.             for (tiered_offer_id in possibleOffers) {
  31.                 if (_offersLoader.getRegionId(tiered_offer_id) == _lastRegion) {
  32.                     _activeOfferId = tiered_offer_id;
  33.                     break;
  34.                 }
  35.             }
  36.         }
  37.         if (_activeOfferId == 0) {
  38.             DiggyError.info('TieredOffersManager.revalidateOffers no active offer found');
  39.         }
  40.         if (timeToStart > 0 && timeToStart < 4 * 3600) {
  41.             // any offer will start in next 4 hours, refresh in 4 hours
  42.             _timeoutID = Actuate.timer(timeToStart).onComplete(revalidateAfterTimeout);
  43.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement