WereWolfGame/main.py
2025-09-02 21:14:55 +02:00

97 lines
No EOL
2.2 KiB
Python

import random
import time
playerFile = open("Players.txt")
rolesFile = open ("Roles.txt")
PlayersName = []
RolesList = []
KilledDuringNight = []
PlayersInLove = []
players_dict = {}
def GiveRoleToPlayers():
if PlayersName and RolesList:
for player in PlayersName:
ChoseRole = random.choice(RolesList)
players_dict[player] = {'name': player, 'role': ChoseRole, 'alive': True, 'InLove': False, 'Protected': False}
RolesList.remove(ChoseRole)
else:
print("Players are not initialized")
def CreateLists():
for line in playerFile:
PlayersName.append(line.strip())
for line in rolesFile:
RolesList.append(line.strip())
playerFile.close()
rolesFile.close()
def Kill(player):
if players_dict[player]['InLove'] == False:
players_dict[player]['alive'] = False
KilledDuringNight.append(player)
elif players_dict[player]['InLove'] == True:
print("in love check")
for player in players_dict:
if players_dict[player]['InLove'] == True:
print("found one")
players_dict[player]['alive'] = False
KilledDuringNight.append(player)
elif players_dict[player]['Protected'] == True:
return
def Revive(player):
players_dict[player]["alive"] = True
KilledDuringNight.remove(player)
def PutInLove(player1, player2):
players_dict[player1]['InLove'] = True
players_dict[player2]['InLove'] = True
time.sleep(1)
print("The people selected wake up and show their role")
time.sleep(1)
print("They go back to sleep")
def Cupidon():
print("You choose two people to be linked to the death")
player1 = SelectSomeone()
player2 = SelectSomeone()
PutInLove(player1, player2)
def Savior():
print("You choose someone to protect")
ProtectedPlayer = SelectSomeone()
players_dict[ProtectedPlayer]['Protected'] = False
def SelectSomeone():
while True:
SelectedPlayer = input("Enter the name of the player:")
if SelectedPlayer in PlayersName:
return SelectedPlayer
else:
print("This player don't exist")
def FirstDayCycle():
print("The villagers fall asleep")
time.sleep(1)
print("Cupidon get up")
Cupidon()
print("Cupidon go back to sleep")
time.sleep(1)
print("The savior get up")
Savior()
CreateLists()
GiveRoleToPlayers()
FirstDayCycle()