Added create_book
This commit is contained in:
parent
b031adce62
commit
9d6216e344
@ -81,15 +81,15 @@ class Geeksbot(commands.Bot):
|
|||||||
'left_fist': '🤛',
|
'left_fist': '🤛',
|
||||||
'lock': '🔒',
|
'lock': '🔒',
|
||||||
}
|
}
|
||||||
self.book_emojis: List[str] = [
|
self.book_emojis: Dict[str, str] = {
|
||||||
'🔓',
|
'unlock': '🔓',
|
||||||
'⏮',
|
'start': '⏮',
|
||||||
'◀',
|
'back': '◀',
|
||||||
'#\N{COMBINING ENCLOSING KEYCAP}',
|
'hash': '#\N{COMBINING ENCLOSING KEYCAP}',
|
||||||
'▶',
|
'forward': '▶',
|
||||||
'⏭',
|
'end': '⏭',
|
||||||
'🇽',
|
'close': '🇽',
|
||||||
]
|
}
|
||||||
|
|
||||||
async def logout(self):
|
async def logout(self):
|
||||||
await self.db_con.close()
|
await self.db_con.close()
|
||||||
|
|||||||
@ -6,6 +6,7 @@ from discord.ext.commands.formatter import Paginator as DannyPag
|
|||||||
from src.imports import checks
|
from src.imports import checks
|
||||||
import re
|
import re
|
||||||
import typing
|
import typing
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
|
||||||
class Capturing(list):
|
class Capturing(list):
|
||||||
@ -248,13 +249,49 @@ class Book:
|
|||||||
await self._message.edit(content=self._pages[self._current_page], embed=None)
|
await self._message.edit(content=self._pages[self._current_page], embed=None)
|
||||||
|
|
||||||
# noinspection PyUnresolvedReferences
|
# noinspection PyUnresolvedReferences
|
||||||
for reaction in self._bot.book_emojis:
|
for emoji in self._bot.book_emojis.values():
|
||||||
try:
|
try:
|
||||||
await self._message.add_reaction(reaction)
|
await self._message.add_reaction(emoji)
|
||||||
except (discord.Forbidden, KeyError):
|
except (discord.Forbidden, KeyError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# async def create_book(self) -> None:
|
async def create_book(self) -> None:
|
||||||
|
async def reaction_checker():
|
||||||
|
def check(reaction, user):
|
||||||
|
if self._locked:
|
||||||
|
return str(reaction.emoji) in self._bot.book_emojis and user == self._calling_message.author
|
||||||
|
else:
|
||||||
|
return str(reaction.emoji) in self._bot.book_emojis
|
||||||
|
|
||||||
|
while True:
|
||||||
|
try:
|
||||||
|
reaction, user = await self._bot.wait_for('reaction_add', timeout=60, check=check)
|
||||||
|
except asyncio.TimeoutError:
|
||||||
|
raise asyncio.CancelledError
|
||||||
|
else:
|
||||||
|
if str(reaction.emoji) == self._bot.book_emojis['close']:
|
||||||
|
await self._calling_message.delete()
|
||||||
|
await self._message.delete()
|
||||||
|
raise asyncio.CancelledError
|
||||||
|
elif str(reaction.emoji) == self._bot.book_emojis['forward']:
|
||||||
|
self.advance_page()
|
||||||
|
elif str(reaction.emoji) == self._bot.book_emojis['back']:
|
||||||
|
self.reverse_page()
|
||||||
|
elif str(reaction.emoji) == self._bot.book_emojis['end']:
|
||||||
|
self._current_page = self._len_pages - 1
|
||||||
|
elif str(reaction.emoji) == self._bot.book_emojis['start']:
|
||||||
|
self._current_page = 0
|
||||||
|
elif str(reaction.emoji) == self._bot.book_emojis['hash']:
|
||||||
|
raise NotImplementedError
|
||||||
|
elif str(reaction.emoji) == self._bot.book_emojis['lock']:
|
||||||
|
self._locked = False
|
||||||
|
self._message.remove_reaction(reaction, self._channel.guild.me)
|
||||||
|
continue
|
||||||
|
await self._message.remove_reaction(reaction, user)
|
||||||
|
await self.display_page()
|
||||||
|
|
||||||
|
await self.display_page()
|
||||||
|
self._bot.loop.create_task(reaction_checker())
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user