嘿,我正在使用脚本将脚本从一台服务器发布到另一台嵌入服务器,但是我需要从代码中更改转发的嵌入服务器(输出)的颜色,同时还要更改页脚等,所以我假设我必须在此处设置嵌入颜色。我已经尝试了很多方法,例如:
embed = discord.Embed(color = 0xd10a07)
if message.channel.id in channels_forward_embed:
dest_channel_id = channels_forward_embed[message.channel.id]
if message.embeds:
embed = message.embeds[0]
embed.set_footer(text="TEST | TEST", icon_url="pictureurl")
else:
return
try:
await self.cog.send_embed(dest_channel_id, embed)
except:
print('Error sending embed')
```
答案 0 :(得分:0)
https://discordpy.readthedocs.io/en/latest/api.html?highlight=embed#discord.Embed.colour
嵌入的颜色代码。以及颜色的别名。这可以是 在初始化期间设置。
只能在初始化期间设置嵌入颜色。之后便无法更改嵌入颜色。
$target_dir ="content/uploads/imgs/";
$target_file = $_SERVER[ "DOCUMENT_ROOT" ] . $target_dir . basename( $_FILES[ "featured_image" ][ "name" ] );
此处是您从现有嵌入复制一个嵌入。然后,您致电embed = message.embeds[0]
。没有像set_footer
这样的等效命令。
您要做的是:
set_color
这将初始化一个具有完全相同的标题,描述等,但颜色已修改的新嵌入。
注意:我尚无法测试。不能保证我的代码可以正常工作,但是它的概念应该可以正常工作。让我知道是否有效。如果它不起作用,请执行embed_dict = message.embeds[0].to_dict()
embed_dict['colour'] = 0xd10a07
embed = discord.Embed.from_dict(**embed_dict)
embed.set_footer(text="TEST | TEST", icon_url="pictureurl")
,它应该在某个位置设置print(embed_dict)
,您需要用新值覆盖它。