Add mnt triggers only for campaigns we care about

This commit is contained in:
DevilXD committed 2022-11-24 20:24:34 +01:00
1 parent 4b30cf116b
commit 0dc8313188
1 file changed
+6 -4
+6 -4
View File
@@ -727,7 +727,7 @@ class Twitch:
exclude = self.settings.exclude
priority = self.settings.priority
priority_only = self.settings.priority_only
in_one_hour = datetime.now(timezone.utc) + timedelta(hours=1)
next_hour = datetime.now(timezone.utc) + timedelta(hours=1)
for campaign in self.inventory:
game = campaign.game
if (
@@ -736,7 +736,7 @@ class Twitch:
# and isn't excluded by priority_only
and (not priority_only or game.name in priority)
# and can be progressed within the next hour
and campaign.can_earn_within(in_one_hour)
and campaign.can_earn_within(next_hour)
):
# non-excluded games with no priority are placed last, below priority ones
self.wanted_games[game] = priorities.get(game.name, 0)
@@ -787,11 +787,11 @@ class Twitch:
# NOTE: we use another set so that we can set them online separately
no_acl: set[Game] = set()
acl_channels: OrderedSet[Channel] = OrderedSet()
in_one_hour = datetime.now(timezone.utc) + timedelta(hours=1)
next_hour = datetime.now(timezone.utc) + timedelta(hours=1)
for campaign in self.inventory:
if (
campaign.game in self.wanted_games
and campaign.can_earn_within(in_one_hour)
and campaign.can_earn_within(next_hour)
):
if campaign.allowed_channels:
acl_channels.update(campaign.allowed_channels)
@@ -1404,11 +1404,13 @@ class Twitch:
self.gui.inv.clear()
self.inventory.clear()
switch_triggers: set[datetime] = set()
next_hour = datetime.now(timezone.utc) + timedelta(hours=1)
for i, campaign in enumerate(campaigns, start=1):
status_update(
_("gui", "status", "adding_campaigns").format(counter=f"({i}/{len(campaigns)})")
)
self._drops.update({drop.id: drop for drop in campaign.drops})
if campaign.can_earn_within(next_hour):
switch_triggers.add(campaign.starts_at)
switch_triggers.add(campaign.ends_at)
# NOTE: this fetches pictures from the CDN, so might be slow without a cache