Here's the Join object
class Join(discord.ui.View):
def __init__(self, host, channel, data, embed):
self.host = host
self.channel = channel
self.data = data
self.players = []
self.embed = embed
@discord.ui.button(label="No Players Yet", style=discord.ButtonStyle.success)
async def join_callback(self, button, interaction):
if interaction.user in self.players:
await interaction.response.send_message("You already joined!", ephemeral=True)
else:
self.players.append(interaction.user)
button.label = f"{len(self.players)} Players"
self.embed.clear_fields()
self.embed.add_field(name=f"Players ({len(self.players)})", value=', '.join([p.mention for p in self.players]))
await interaction.response.edit_message(embed=self.embed, view=self)
await interaction.followup.send("**You're in!**\nSee your name on screen?", ephemeral=True)