refactor: Update marriage logic to use fetch_user for better compatibility in guild and DM contexts
This commit is contained in:
parent
7309767ecb
commit
1b7e96f2a5
@ -218,7 +218,14 @@ class MarriageCog(commands.Cog):
|
||||
# Check if proposer is already married
|
||||
if proposer.id in self.marriages and self.marriages[proposer.id]["status"] == "married":
|
||||
partner_id = self.marriages[proposer.id]["partner_id"]
|
||||
partner = interaction.guild.get_member(partner_id)
|
||||
# Use fetch_user instead of get_member to work in both guild and DM contexts
|
||||
partner = interaction.guild.get_member(partner_id) if interaction.guild else None
|
||||
if not partner:
|
||||
# Fallback to bot's fetch_user if not found in guild or in DM context
|
||||
try:
|
||||
partner = await self.bot.fetch_user(partner_id)
|
||||
except:
|
||||
pass
|
||||
partner_name = partner.display_name if partner else "someone"
|
||||
await interaction.response.send_message(f"You're already married to {partner_name}!", ephemeral=True)
|
||||
return
|
||||
@ -226,7 +233,14 @@ class MarriageCog(commands.Cog):
|
||||
# Check if proposed person is already married
|
||||
if user.id in self.marriages and self.marriages[user.id]["status"] == "married":
|
||||
partner_id = self.marriages[user.id]["partner_id"]
|
||||
partner = interaction.guild.get_member(partner_id)
|
||||
# Use fetch_user instead of get_member to work in both guild and DM contexts
|
||||
partner = interaction.guild.get_member(partner_id) if interaction.guild else None
|
||||
if not partner:
|
||||
# Fallback to bot's fetch_user if not found in guild or in DM context
|
||||
try:
|
||||
partner = await self.bot.fetch_user(partner_id)
|
||||
except:
|
||||
pass
|
||||
partner_name = partner.display_name if partner else "someone"
|
||||
await interaction.response.send_message(f"{user.display_name} is already married to {partner_name}!", ephemeral=True)
|
||||
return
|
||||
|
Loading…
x
Reference in New Issue
Block a user