def send_board(self, ctx, init=False, win=None):
session = self.session(ctx)
session.ctx = ctx
if session.msg is not None:
await session.msg.delete()
if win:
if win == "Draw":
turn = f"Game ended in a Draw."
color = discord.Colour.dark_grey()
elif win == "Forfeit":
turn = f"Game Over. {ctx.author.name} Forfeits."
color = discord.Colour.dark_grey()
elif win == "Timeout":
turn = f"Time Out. {session.current_player.name} Forfeits."
color = discord.Colour.dark_grey()
else:
turn = f"Game Over!\n{win.name} wins! ??"
color = 0xFDFF00
else:
turn = "New game! Turn: 1" if init else f"Turn: {(session.turn + 2) // 2}"
color = session.color
em = discord.Embed(title=f"{session.player_chip(session.p1)}{session.p1.name} ?? "
f"{session.p2.name}{session.player_chip(session.p2)}",
description=f"{turn}\n\n:one::two::three::four::five::six::seven:\n{session.draw_board}",
color=color)
if win:
self.sessions.pop(ctx.channel.id)
await ctx.send(embed=em)
else:
em.set_footer(text=f"{session.current_player.name}'s turn: {session.current_player_chip}")
session.msg = await ctx.send(embed=em)
if not win == "Timeout" and session.current_player.member is not ctx.guild.me:
if ctx.channel.permissions_for(ctx.guild.me).manage_messages:
await ctx.message.delete()
评论列表
文章目录