mirror of
https://github.com/RYGhub/royalnet.git
synced 2024-11-27 13:34:28 +00:00
ho fatto delle cose
This commit is contained in:
parent
ef78ac0642
commit
48be4c8831
1 changed files with 16 additions and 20 deletions
36
mifia.py
36
mifia.py
|
@ -1,6 +1,5 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
import telegram
|
import telegram
|
||||||
import random
|
|
||||||
|
|
||||||
|
|
||||||
class Player:
|
class Player:
|
||||||
|
@ -23,7 +22,6 @@ class Game:
|
||||||
adminid = int()
|
adminid = int()
|
||||||
players = list()
|
players = list()
|
||||||
tokill = list()
|
tokill = list()
|
||||||
joinphase = True
|
|
||||||
|
|
||||||
def message(self, text):
|
def message(self, text):
|
||||||
"""Manda un messaggio alla chat generale del gioco
|
"""Manda un messaggio alla chat generale del gioco
|
||||||
|
@ -120,7 +118,7 @@ class Game:
|
||||||
|
|
||||||
def endday(self):
|
def endday(self):
|
||||||
votedout = self.mostvoted()
|
votedout = self.mostvoted()
|
||||||
self.message(votedout.username + " è stato il più votato del giorno.")
|
self.message(votedout.username + " è il più votato del giorno e sarà ucciso.")
|
||||||
self.tokill.append(votedout)
|
self.tokill.append(votedout)
|
||||||
for killed in self.tokill:
|
for killed in self.tokill:
|
||||||
self.message(killed.username + " è stato ucciso.\n")
|
self.message(killed.username + " è stato ucciso.\n")
|
||||||
|
@ -143,9 +141,12 @@ class Game:
|
||||||
elif player.role == 1:
|
elif player.role == 1:
|
||||||
uno += 1
|
uno += 1
|
||||||
if uno == 0:
|
if uno == 0:
|
||||||
self.message("*Il Team Royal ha vinto!*")
|
self.message("*Il Team Royal ha vinto!*\n"
|
||||||
|
"Tutti i Mifiosi sono stati eliminati.")
|
||||||
if uno >= zero:
|
if uno >= zero:
|
||||||
self.message("*Il Team Mifia ha vinto!*")
|
self.message("*Il Team Mifia ha vinto!*\n"
|
||||||
|
"I Mifiosi rimasti sono più dei Royal.")
|
||||||
|
self.tokill = list()
|
||||||
|
|
||||||
|
|
||||||
partiteincorso = list()
|
partiteincorso = list()
|
||||||
|
@ -203,14 +204,14 @@ while True:
|
||||||
g.evilmessage(xtra[2])
|
g.evilmessage(xtra[2])
|
||||||
else:
|
else:
|
||||||
if t['text'].startswith("/join"):
|
if t['text'].startswith("/join"):
|
||||||
if g.joinphase and g.findid(t['from']['id']) is None:
|
if g.findid(t['from']['id']) is None:
|
||||||
p = Player()
|
p = Player()
|
||||||
p.telegramid = t['from']['id']
|
p.telegramid = t['from']['id']
|
||||||
# Qui crasha se non è stato impostato un username. Fare qualcosa?
|
# Qui crasha se non è stato impostato un username. Fare qualcosa?
|
||||||
p.username = t['from']['username']
|
p.username = t['from']['username']
|
||||||
# Assegnazione dei ruoli
|
# Assegnazione dei ruoli
|
||||||
# Spiegare meglio cosa deve fare ogni ruolo?
|
# Spiegare meglio cosa deve fare ogni ruolo?
|
||||||
if len(g.players) % 10 == 1:
|
if len(g.players) % 10 == 3:
|
||||||
p.role = 1
|
p.role = 1
|
||||||
p.special = True
|
p.special = True
|
||||||
p.message("Sei stato assegnato alla squadra *MIFIA*.")
|
p.message("Sei stato assegnato alla squadra *MIFIA*.")
|
||||||
|
@ -223,7 +224,7 @@ while True:
|
||||||
" qualcuno alla fine del giorno.")
|
" qualcuno alla fine del giorno.")
|
||||||
p.message("La squadra Mifia vince se tutta la Royal Games è eliminata.")
|
p.message("La squadra Mifia vince se tutta la Royal Games è eliminata.")
|
||||||
p.message("Perdi se vieni ucciso.")
|
p.message("Perdi se vieni ucciso.")
|
||||||
elif len(g.players) % 10 == 0:
|
elif len(g.players) % 10 == 2:
|
||||||
p.role = 2
|
p.role = 2
|
||||||
p.special = True
|
p.special = True
|
||||||
p.message("Sei stato assegnato alla squadra *ROYAL* con il ruolo di *DETECTIVE*.")
|
p.message("Sei stato assegnato alla squadra *ROYAL* con il ruolo di *DETECTIVE*.")
|
||||||
|
@ -249,28 +250,23 @@ while True:
|
||||||
p.message("La squadra Royal perde se sono vivi solo Mifiosi.")
|
p.message("La squadra Royal perde se sono vivi solo Mifiosi.")
|
||||||
g.addplayer(p)
|
g.addplayer(p)
|
||||||
g.message(p.username + " si è unito alla partita!")
|
g.message(p.username + " si è unito alla partita!")
|
||||||
else:
|
|
||||||
g.message("La fase di iscrizione è terminata.")
|
|
||||||
# elif t['text'].startswith("/save"):
|
|
||||||
# g.save()
|
|
||||||
elif t['text'].startswith("/status"):
|
elif t['text'].startswith("/status"):
|
||||||
if t['from']['id'] == g.adminid:
|
if t['from']['id'] == g.adminid:
|
||||||
g.adminmessage(g.fullstatus())
|
g.adminmessage(g.fullstatus())
|
||||||
else:
|
else:
|
||||||
g.message(g.status())
|
g.message(g.status())
|
||||||
elif t['text'].startswith("/endjoin"):
|
|
||||||
if t['from']['id'] == g.adminid:
|
|
||||||
g.message("Fase di iscrizione chiusa.")
|
|
||||||
g.message(g.status())
|
|
||||||
elif t['text'].startswith("/endday"):
|
elif t['text'].startswith("/endday"):
|
||||||
if t['from']['id'] == g.adminid:
|
if t['from']['id'] == g.adminid:
|
||||||
g.endday()
|
g.endday()
|
||||||
g.message(g.status())
|
g.message(g.status())
|
||||||
elif t['text'].startswith("/vote"):
|
elif t['text'].startswith("/vote"):
|
||||||
username = t['text'].split(' ')
|
username = t['text'].split(' ')
|
||||||
if g.findusername(username[1]) is not None:
|
if len(username) > 1 and g.findusername(username[1]) is not None:
|
||||||
voter = g.findid(t['from']['id'])
|
voter = g.findid(t['from']['id'])
|
||||||
voter.votedfor = username[1]
|
if voter.alive:
|
||||||
g.message("Hai votato per " + username[1] + ".")
|
voter.votedfor = username[1]
|
||||||
|
g.message("Hai votato per " + username[1] + ".")
|
||||||
|
else:
|
||||||
|
g.message("I morti non votano.")
|
||||||
else:
|
else:
|
||||||
g.message("La persona selezionata non esiste.")
|
g.message("La persona selezionata non esiste.")
|
||||||
|
|
Loading…
Reference in a new issue