Skip to content

Commit 18868bf

Browse files
authored
Merge pull request #294 from goverfl0w/pr-2
Menu Command Invocation Error
2 parents 5032f5c + a3db54c commit 18868bf

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

discord_slash/context.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -657,7 +657,7 @@ def __init__(
657657
self._resolved = self.data["resolved"] if "resolved" in self.data.keys() else None
658658
self.target_message = None
659659
self.target_author = None
660-
self.target_id = self.data["target_id"]
660+
self.target_id = self.data["target_id"] if "target_id" in self.data.keys() else None
661661

662662
if self._resolved is not None:
663663
try:
@@ -676,8 +676,11 @@ def __init__(
676676
try:
677677
if self.guild and self._resolved["members"]:
678678
_auth = [auth for auth in self._resolved["members"]][0]
679+
# member and user return the same ID
680+
_neudict = self._resolved["members"][_auth]
681+
_neudict["user"] = self._resolved["users"][_auth]
679682
self.target_author = discord.Member(
680-
data=self._resolved["members"][_auth],
683+
data=_neudict,
681684
state=self.bot._connection,
682685
guild=self.guild,
683686
)

discord_slash/model.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,13 @@ async def invoke(self, *args, **kwargs):
206206
# to preventing needing different functions per object,
207207
# this function simply handles cogs
208208
if hasattr(self, "cog"):
209+
# print(self.func)
210+
if (
211+
str(self.func.__annotations__["ctx"])
212+
== "<class 'discord_slash.context.MenuContext'>"
213+
):
214+
# The idea is, since every command uses context, check the type of it.
215+
return await self.func(*args, **kwargs)
209216
return await self.func(self.cog, *args, **kwargs)
210217
return await self.func(*args, **kwargs)
211218

0 commit comments

Comments
 (0)