8 Commits

8 changed files with 42 additions and 4 deletions
+4 -1
View File
@@ -3,7 +3,7 @@
url = https://git.thewisewolf.dev/HoloTech/psqlmapper.git
[submodule "src/modules/subathon"]
path = src/modules/subathon
url = https://git.thewisewolf.dev/HoloTech/twitch-subathon-plugin.git
url = https://git.thewisewolf.dev/CarmiCoven/lilac-subathon-plugin.git
[submodule "src/modules/tracker"]
path = src/modules/tracker
url = https://git.thewisewolf.dev/HoloTech/twitch-eventtracker-plugin.git
@@ -13,3 +13,6 @@
[submodule "src/modules/exec"]
path = src/modules/exec
url = https://git.thewisewolf.dev/HoloTech/exec-plugin.git
[submodule "src/modules/pluscampaign"]
path = src/modules/pluscampaign
url = https://git.thewisewolf.dev/CarmiCoven/pluscampaign-plugin.git
+6
View File
@@ -197,3 +197,9 @@ class Bot(commands.Bot):
await self.add_token(row.token, row.refresh_token)
except Exception:
logger.exception(f"Failed to add token for {row}")
async def event_command_error(self, payload: commands.CommandErrorPayload) -> None:
if isinstance(payload.exception, commands.CommandNotFound):
logger.debug(f"Attempt to execute nonexistent command for context {payload.context!r}")
else:
return await super().event_command_error(payload)
+2 -1
View File
@@ -6,9 +6,10 @@ if TYPE_CHECKING:
async def twitch_setup(bot: "Bot"):
# Import and run setup methods from each module
from . import profiles, tracker, subathon, exec
from . import profiles, tracker, subathon, exec, yarn
await profiles.twitch_setup(bot)
await tracker.twitch_setup(bot)
await subathon.twitch_setup(bot)
await exec.twitch_setup(bot)
await yarn.twitch_setup(bot)
+7
View File
@@ -0,0 +1,7 @@
import logging
logger = logging.getLogger()
async def twitch_setup(bot):
from .component import YarnComponent
await bot.add_component(YarnComponent(bot))
+20
View File
@@ -0,0 +1,20 @@
import asyncio
import twitchio
from twitchio import PartialUser, Scopes, eventsub
from twitchio.ext import commands as cmds
from meta import Bot, Context
from . import logger
class YarnComponent(cmds.Component):
def __init__(self, bot: Bot):
self.bot = bot
@cmds.Component.listener()
async def event_custom_redemption_add(self, payload: twitchio.ChannelPointsRedemptionAdd):
logger.info(f"Yarn got {payload!r}")
if payload.reward.title == 'pet lilac':
await payload.broadcaster.send_message("lilac PETPET", sender="1097964183")