mirror of
https://github.com/RYGhub/royal-mifia.git
synced 2024-11-22 05:44:19 +00:00
#15 finito
This commit is contained in:
parent
0c57162072
commit
24aef4af8b
3 changed files with 35 additions and 1 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -112,3 +112,4 @@ $RECYCLE.BIN/
|
|||
# La roba di Pycharm
|
||||
.pyc
|
||||
.idea/*
|
||||
*.p
|
30
main.py
30
main.py
|
@ -1,5 +1,7 @@
|
|||
#!/usr/bin/env python3.5
|
||||
# -*- coding: utf-8 -*-
|
||||
import pickle
|
||||
|
||||
from telegram.ext import Updater, CommandHandler
|
||||
from telegram import ParseMode
|
||||
import filemanager
|
||||
|
@ -438,6 +440,15 @@ class Game:
|
|||
def endgame(self):
|
||||
inprogress.remove(self)
|
||||
|
||||
def save(self):
|
||||
# Crea il file.
|
||||
file = open(str(self.groupid) + ".p", 'x')
|
||||
file.close()
|
||||
# Scrivi sul file.
|
||||
file = open(str(self.groupid) + ".p", 'wb')
|
||||
pickle.dump(self, file)
|
||||
file.close()
|
||||
|
||||
# Partite in corso
|
||||
inprogress = list()
|
||||
|
||||
|
@ -713,6 +724,23 @@ def fakerole(bot, update):
|
|||
else:
|
||||
bot.sendMessage(update.message.chat['id'], s.error_private_required, parse_mode=ParseMode.MARKDOWN)
|
||||
|
||||
|
||||
def load(bot, update):
|
||||
"""Carica una partita salvata."""
|
||||
file = open(str(update.message.chat['id']) + ".p", "rb")
|
||||
game = pickle.load(file)
|
||||
inprogress.append(game)
|
||||
game.message(bot, s.game_loaded)
|
||||
|
||||
|
||||
def save(bot, update):
|
||||
"""Salva una partita su file."""
|
||||
game = findgamebyid(update.message.chat['id'])
|
||||
if game is not None:
|
||||
game.save()
|
||||
else:
|
||||
bot.sendMessage(update.message.chat['id'], s.error_no_games_found, parse_mode=ParseMode.MARKDOWN)
|
||||
|
||||
updater.dispatcher.addHandler(CommandHandler('ping', ping))
|
||||
updater.dispatcher.addHandler(CommandHandler('newgame', newgame))
|
||||
updater.dispatcher.addHandler(CommandHandler('join', join))
|
||||
|
@ -727,6 +755,8 @@ updater.dispatcher.addHandler(CommandHandler('debuggameslist', debuggameslist))
|
|||
updater.dispatcher.addHandler(CommandHandler('kill', kill))
|
||||
updater.dispatcher.addHandler(CommandHandler('config', config))
|
||||
updater.dispatcher.addHandler(CommandHandler('fakerole', fakerole))
|
||||
updater.dispatcher.addHandler(CommandHandler('save', save))
|
||||
updater.dispatcher.addHandler(CommandHandler('load', load))
|
||||
updater.start_polling()
|
||||
print("Bot avviato!")
|
||||
if __name__ == "__main__":
|
||||
|
|
|
@ -99,6 +99,9 @@ display_role = "Il tuo ruolo è *{icon} {role}*."
|
|||
check_private = "Messaggio inviato in chat privata.\n" \
|
||||
"Controlla @mifiabot."
|
||||
|
||||
# Generale: partita caricata
|
||||
game_loaded = "Partita caricata da file."
|
||||
|
||||
# Vittoria: team Mifia
|
||||
victory_mifia = "I Mifiosi rimasti sono più dei Royal.\n" \
|
||||
"*La Mifia vince!*"
|
||||
|
|
Loading…
Reference in a new issue