mirror of
https://github.com/RYGhub/royal-mifia.git
synced 2024-11-25 23:24:18 +00:00
Fatto #9, ma forse si può migliorare ancora
This commit is contained in:
parent
f1dfa2df89
commit
2cfcaae084
1 changed files with 12 additions and 4 deletions
16
main.py
16
main.py
|
@ -207,6 +207,11 @@ class Game:
|
||||||
self.totalangels = 0 # Numero di angeli da inserire
|
self.totalangels = 0 # Numero di angeli da inserire
|
||||||
self.votingmifia = False # Seguire le regole originali della mifia che vota?
|
self.votingmifia = False # Seguire le regole originali della mifia che vota?
|
||||||
|
|
||||||
|
# Liste di ruoli in gioco, per velocizzare gli endday
|
||||||
|
self.mifiosiingame = list()
|
||||||
|
self.detectivesingame = list()
|
||||||
|
self.angelsingame = list()
|
||||||
|
|
||||||
# Trova un nome per la partita
|
# Trova un nome per la partita
|
||||||
if len(freenames) > 0:
|
if len(freenames) > 0:
|
||||||
random.shuffle(freenames)
|
random.shuffle(freenames)
|
||||||
|
@ -264,17 +269,19 @@ class Game:
|
||||||
# Seleziona mifiosi
|
# Seleziona mifiosi
|
||||||
while self.totalmifiosi > 0:
|
while self.totalmifiosi > 0:
|
||||||
selected = playersleft.pop()
|
selected = playersleft.pop()
|
||||||
|
self.mifiosiingame.append(selected)
|
||||||
selected.role = Mifioso()
|
selected.role = Mifioso()
|
||||||
self.totalmifiosi -= 1
|
self.totalmifiosi -= 1
|
||||||
# Seleziona detective
|
# Seleziona detective
|
||||||
while self.totaldetectives > 0:
|
while self.totaldetectives > 0:
|
||||||
selected = playersleft.pop()
|
selected = playersleft.pop()
|
||||||
|
self.detectivesingame.append(selected)
|
||||||
selected.role = Investigatore()
|
selected.role = Investigatore()
|
||||||
self.totaldetectives -= 1
|
self.totaldetectives -= 1
|
||||||
# Seleziona angeli
|
# Seleziona angeli
|
||||||
while self.totalangels > 0:
|
while self.totalangels > 0:
|
||||||
selected = playersleft.pop()
|
selected = playersleft.pop()
|
||||||
|
self.angelsingame.append(selected)
|
||||||
selected.role = Angelo()
|
selected.role = Angelo()
|
||||||
self.totalangels -= 1
|
self.totalangels -= 1
|
||||||
# Assegna il ruolo di Royal a tutti gli altri
|
# Assegna il ruolo di Royal a tutti gli altri
|
||||||
|
@ -362,17 +369,18 @@ class Game:
|
||||||
killed = killlist.pop()
|
killed = killlist.pop()
|
||||||
if killed.alive:
|
if killed.alive:
|
||||||
self.message(bot, s.mifia_target_killed.format(name=killed.tusername, icon=killed.role.icon, role=killed.role.name))
|
self.message(bot, s.mifia_target_killed.format(name=killed.tusername, icon=killed.role.icon, role=killed.role.name))
|
||||||
for player in self.players:
|
for player in self.mifiosiingame:
|
||||||
if isinstance(player.role, Mifioso) and player.alive:
|
if isinstance(player.role, Mifioso) and player.alive:
|
||||||
player.role.onendday(bot, self)
|
player.role.onendday(bot, self)
|
||||||
# Investigatori
|
# Investigatori
|
||||||
for player in self.players:
|
for player in self.detectivesingame:
|
||||||
if isinstance(player.role, Investigatore) and player.alive:
|
if isinstance(player.role, Investigatore) and player.alive:
|
||||||
player.role.onendday(bot, self)
|
player.role.onendday(bot, self)
|
||||||
# Angeli
|
# Angeli
|
||||||
for player in self.players:
|
for player in self.angelsingame:
|
||||||
if isinstance(player.role, Angelo) and player.alive:
|
if isinstance(player.role, Angelo) and player.alive:
|
||||||
player.role.onendday(bot, self)
|
player.role.onendday(bot, self)
|
||||||
|
# Cancella tutti i voti
|
||||||
for player in self.players:
|
for player in self.players:
|
||||||
player.votingfor = None
|
player.votingfor = None
|
||||||
# Condizioni di vittoria
|
# Condizioni di vittoria
|
||||||
|
|
Loading…
Reference in a new issue