aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar ks129 <[email protected]>2020-04-07 19:33:05 +0300
committerGravatar ks129 <[email protected]>2020-04-07 19:33:05 +0300
commit7a7385bf222c24f78356ea46331ae5d4abddb65a (patch)
treef44791902b78c67456b6a0c11226046d68edc90a
parent(TicTacToe): Moved checks to outside of class, created initial tic tac toe co... (diff)
(Constants, TicTacToe): Fixed number emojis contants, created helper function `send_board` to `Game` class.
-rw-r--r--bot/constants.py18
-rw-r--r--bot/exts/evergreen/tic_tac_toe.py23
2 files changed, 30 insertions, 11 deletions
diff --git a/bot/constants.py b/bot/constants.py
index d43cf4d3..a8dd03e6 100644
--- a/bot/constants.py
+++ b/bot/constants.py
@@ -120,15 +120,15 @@ class Emojis:
# TicTacToe Emojis
number_emojis = {
- 1: "\u0031",
- 2: "\u0032",
- 3: "\u0033",
- 4: "\u0034",
- 5: "\u0035",
- 6: "\u0036",
- 7: "\u0037",
- 8: "\u0038",
- 9: "\u0039"
+ 1: "\u0031\ufe0f\u20e3",
+ 2: "\u0032\ufe0f\u20e3",
+ 3: "\u0033\ufe0f\u20e3",
+ 4: "\u0034\ufe0f\u20e3",
+ 5: "\u0035\ufe0f\u20e3",
+ 6: "\u0036\ufe0f\u20e3",
+ 7: "\u0037\ufe0f\u20e3",
+ 8: "\u0038\ufe0f\u20e3",
+ 9: "\u0039\ufe0f\u20e3"
}
confirmation = "\u2705"
decline = "\u274c"
diff --git a/bot/exts/evergreen/tic_tac_toe.py b/bot/exts/evergreen/tic_tac_toe.py
index 1a906535..55bbb7be 100644
--- a/bot/exts/evergreen/tic_tac_toe.py
+++ b/bot/exts/evergreen/tic_tac_toe.py
@@ -28,6 +28,11 @@ class Game:
self.channel = channel
self.players = players
self.ctx = ctx
+ self.board = [
+ [Emojis.number_emojis[1], Emojis.number_emojis[2], Emojis.number_emojis[3]],
+ [Emojis.number_emojis[4], Emojis.number_emojis[5], Emojis.number_emojis[6]],
+ [Emojis.number_emojis[7], Emojis.number_emojis[8], Emojis.number_emojis[9]]
+ ]
self.current = self.players[0]
self.next = self.players[1]
@@ -74,9 +79,18 @@ class Game:
async def add_reactions(self, msg: discord.Message) -> None:
"""Add number emojis to message."""
- for nr in Emojis.number_emojis:
+ for nr in Emojis.number_emojis.values():
await msg.add_reaction(nr)
+ async def send_board(self) -> discord.Message:
+ """Send board and return it's message."""
+ msg = ""
+ for line in self.board:
+ msg += " ".join(line)
+ msg += "\n"
+ message = await self.ctx.send(msg)
+ return message
+
def is_channel_free() -> t.Callable:
"""Check is channel where command will be invoked free."""
@@ -113,7 +127,12 @@ class TicTacToe(Cog):
ctx
)
self.games.append(game)
- await game.get_confirmation()
+ confirmed, msg = await game.get_confirmation()
+
+ if not confirmed:
+ if msg:
+ await ctx.send(msg)
+ return
def setup(bot: SeasonalBot) -> None: