mirror of
https://github.com/RYGhub/royal-mifia.git
synced 2024-11-29 00:54:18 +00:00
Reso disponibile il comando /delete al creatore della partita
This commit is contained in:
parent
1832da7610
commit
13a76f08de
2 changed files with 35 additions and 15 deletions
34
main.py
34
main.py
|
@ -133,7 +133,7 @@ class Game:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def updategroupname(self):
|
def updategroupname(self):
|
||||||
"""Cambia il titolo della chat. Per qualche motivo non funziona."""
|
"""Aggiorna il titolo della chat."""
|
||||||
try:
|
try:
|
||||||
if self.phase == "Voting":
|
if self.phase == "Voting":
|
||||||
self.bot.set_chat_title(self.groupid, s.group_name.format(phase=s.day.format(day=self.day), name=self.name))
|
self.bot.set_chat_title(self.groupid, s.group_name.format(phase=s.day.format(day=self.day), name=self.name))
|
||||||
|
@ -535,6 +535,13 @@ def newgame(bot: Bot, update):
|
||||||
if game is not None:
|
if game is not None:
|
||||||
bot.sendMessage(update.message.chat.id, s.error_game_in_progress, parse_mode=ParseMode.MARKDOWN)
|
bot.sendMessage(update.message.chat.id, s.error_game_in_progress, parse_mode=ParseMode.MARKDOWN)
|
||||||
return
|
return
|
||||||
|
# Controlla che il bot sia un amministratore nel supergruppo
|
||||||
|
admins = bot.getChatAdministrators(update.message.chat.id)
|
||||||
|
for admin in admins:
|
||||||
|
if admin.user.id == bot.id:
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
bot.sendMessage(update.message.chat.id, s.warning_bot_not_admin)
|
||||||
game = Game(bot, update.message.chat.id)
|
game = Game(bot, update.message.chat.id)
|
||||||
inprogress.append(game)
|
inprogress.append(game)
|
||||||
game.message(s.new_game.format(name=game.name))
|
game.message(s.new_game.format(name=game.name))
|
||||||
|
@ -736,22 +743,31 @@ def kill(bot: Bot, update):
|
||||||
def delete(bot: Bot, update):
|
def delete(bot: Bot, update):
|
||||||
"""Elimina una partita in corso."""
|
"""Elimina una partita in corso."""
|
||||||
if update.message.chat.type == 'private':
|
if update.message.chat.type == 'private':
|
||||||
if update.message.from_user.username == "Steffo":
|
if update.message.from_user.username != "Steffo":
|
||||||
|
bot.sendMessage(update.message.chat.id, s.error_not_owner, parse_mode=ParseMode.MARKDOWN)
|
||||||
|
return
|
||||||
cmd = update.message.text.split(' ', 2)
|
cmd = update.message.text.split(' ', 2)
|
||||||
game = findgamebyname(cmd[1])
|
game = findgamebyname(cmd[1])
|
||||||
# Se non lo trovi con il nome, prova con l'id
|
# Se non lo trovi con il nome, prova con l'id
|
||||||
if game is None:
|
if game is None:
|
||||||
game = findgamebyid(int(cmd[1]))
|
game = findgamebyid(int(cmd[1]))
|
||||||
if game is not None:
|
# Ehhh pazienza non c'è neanche con l'id
|
||||||
|
if game is None:
|
||||||
|
bot.sendMessage(update.message.chat.id, s.error_no_games_found)
|
||||||
game.message(s.owner_ended)
|
game.message(s.owner_ended)
|
||||||
game.endgame()
|
game.endgame()
|
||||||
else:
|
else:
|
||||||
game.message(s.error_no_games_found)
|
# Trova la partita
|
||||||
else:
|
game = findgamebyid(update.message.chat.id)
|
||||||
bot.sendMessage(update.message.chat.id, s.error_not_owner, parse_mode=ParseMode.MARKDOWN)
|
# Controlla che la partita esista
|
||||||
else:
|
if game is None:
|
||||||
bot.sendMessage(update.message.chat.id, s.error_chat_type, parse_mode=ParseMode.MARKDOWN)
|
bot.sendMessage(update.message.chat.id, s.error_no_games_found)
|
||||||
|
return
|
||||||
|
# Controlla se è admin
|
||||||
|
if game.admin.tid != update.message.from_user.id:
|
||||||
|
game.message(s.error_not_admin)
|
||||||
|
return
|
||||||
|
game.endgame()
|
||||||
|
|
||||||
def load(bot: Bot, update):
|
def load(bot: Bot, update):
|
||||||
"""Carica una partita salvata."""
|
"""Carica una partita salvata."""
|
||||||
|
|
|
@ -324,6 +324,10 @@ debug_mode = "*DEBUG/CHEATS MODE*\n"
|
||||||
# Ping!
|
# Ping!
|
||||||
pong = "Pong!"
|
pong = "Pong!"
|
||||||
|
|
||||||
|
# Attenzione: il bot non è amministratore
|
||||||
|
warning_bot_not_admin = "\U000026A0 Attenzione! Il bot non è amministratore in questo supergruppo.\n" \
|
||||||
|
"E' possibile comunque giocare una partita, ma alcune funzioni non saranno disponibili."
|
||||||
|
|
||||||
# Errore: nome utente inesistente
|
# Errore: nome utente inesistente
|
||||||
error_username = "\U000026A0 Il nome utente specificato non esiste."
|
error_username = "\U000026A0 Il nome utente specificato non esiste."
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue