為了讓介面更好看所以我使用了在discord很常見的文字美化功能,embed
在Discord文檔中,嵌入式消息(embed)是一種用於以更漂亮和結構化的方式顯示文本和圖像信息的方法。
我這隻程式是有搭配tree.command()
import discord
from discord import app_commands
MY_GUILD = discord.Object(id=Guild_ID) # replace with your guild id
class MyClient(discord.Client):
def __init__(self, *, intents: discord.Intents):
super().__init__(intents=intents)
self.tree = app_commands.CommandTree(self)
async def setup_hook(self):
self.tree.copy_global_to(guild=MY_GUILD)
await self.tree.sync(guild=MY_GUILD)
intents = discord.Intents.all()
client = MyClient(intents=intents)
@client.tree.command()
async def rule(interaction):
embed = discord.Embed(
title='Rule',
description='骰寶規則',
colour=discord.Colour.purple()
)
embed.add_field(name=":regional_indicator_b: 大",
value="規則:總點數 11 至 17 ( 遇圍骰莊家通吃 )\n賠率:1 賠 1",
inline=False) and embed.add_field(name=":regional_indicator_s:小" ,value="規則:總點數為 4 至 10 ( 遇圍骰莊家通吃 )\n賠率:1 賠 1\n",inline=False)
await interaction.response.send_message(embed=embed)
client.run('token')
先介紹embed的基本架構
embed = discord.Embed(
title='Rule', # 嵌入式消息的標題
description='骰寶規則', # 嵌入式消息的描述
colour=discord.Colour.purple() # 嵌入式消息的顏色
)
接下來使用add_field方法來添加字段到嵌入式消息(embed)中:
embed.add_field(name=":regional_indicator_b: 大",
value="規則:總點數 11 至 17 ( 遇圍骰莊家通吃 )\n賠率:1 賠 1",
inline=False) and embed.add_field(name=":regional_indicator_s:小" ,
value="規則:總點數為 4 至 10 ( 遇圍骰莊家通吃 )\n賠率:1 賠1\n",
inline=False
)
這是將布林值設為False
這是將布林值設為True
嵌入式消息(embed)裡面還可以放入圖片、連結等等非常方便,也可以放入參數像是這樣
embed.add_field(name="大小",
value = f"你猜的總和是 {大或小}\n骰子點數為: {dice_roll}, 總點數為: {total}\n恭喜,你贏了!你現在有 {base_points} 基礎點數。",
inline=False)
改成value = f""就可以放入自己定義的參數