Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '''This code uses this : https://pastebin.com/Hab1ssUA'''
- import random
- x = 0
- c = 0
- cartas=[]
- nomes=[]
- njogadores=0
- MatDoJogadores=[]
- def lendocartas (n):
- arquivo = open('Cartas','r')
- for i in arquivo:
- i= i.split(',')
- for j in i:
- if j== "\n":
- a=0
- else:
- cartas.append(j)
- print(cartas)
- arquivo.close()
- c=qjogadores(x)
- deckJogadores(c)
- partida(c)
- def qjogadores(n):
- global njogadores
- njogadores = int(input("Quantos pessoas irão jogar ?\nObs: Min: 2 jogadores.\nMax: 10 jogadores.\n"))
- while(njogadores<2 or njogadores>10):
- njogadores = int(input("Quantos pessoas irão jogar ?\nObs: Min: 2 jogadores.\nMax: 10 jogadores.\n"))
- for i in range(njogadores):
- nomedeles = input(f'Qual nome dos jogador {i+1} :\n')
- nomes.append(nomedeles)
- return njogadores
- def deckJogadores(n):
- for i in range(n):
- deck=[]
- for j in range(7):
- x = random.choice(cartas)
- cartas.remove(x)
- deck.append(x)
- MatDoJogadores.append(deck)
- def partida (x):
- global MatDoJogadores
- cartasUsadas = []
- cartapassada = []
- enquantomais = False
- contEnqMais = 0
- jogoganho = False
- reverso = False
- pula = False
- c = 0
- while(jogoganho==False):
- print(f'Cartas do Jogador {c+1}: {MatDoJogadores[c]}')
- if (cartapassada == []):
- a=vazio(cartasUsadas)
- cartapassada=a
- print(f'{cartasUsadas}')
- elif (cartapassada != []):
- a,b,d=rodada2(cartapassada,cartasUsadas,c,reverso,pula)
- cartapassada = a
- reverso = b
- pula = d
- if reverso == True:
- if pula==True:
- c+= -2
- if c<0:
- c=x-2
- pula=False
- else:
- c+= -1
- if c < 0:
- c = x-1
- else:
- if pula==True:
- c+= +2
- if c>x:
- c=1
- pula=False
- else:
- c+=1
- if c == x:
- c=0
- def vazio(n2):
- global MatDoJogadores,c
- escolha = 99
- print(f'{nomes[c]} pode jogar qualque carta.\nObs:Cartas de efeito não funcionaram.')
- while(escolha > len(MatDoJogadores[c])):
- escolha = int(input(f"Qual carta será jogada, {nomes[c]}\n"))
- escolha1=MatDoJogadores[c][escolha - 1].split(' ')
- n2.append(escolha1)
- del MatDoJogadores[c][escolha-1]
- return escolha1
- def rodada2(n1,n2,n3,n4,n5):
- global MatDoJogadores
- cores=['vermelho','verde','amarelo','azul']
- zero=0
- escolha= 99
- cor = 99
- confirme = False
- while(confirme == False):
- print(f'A carta passada passada : {n1}')
- while(escolha > len(MatDoJogadores[n3])):
- escolha = int(input(f"Qual carta será jogada, {nomes[n3]}\nObs: 0 para pegar carta e 0 denovo para pular\n"))
- if (escolha == 0):
- escolha,zero,confirme,n2=pegacartapula(escolha,zero,n3,confirme,n2)
- if escolha != 0:
- escolha1 = MatDoJogadores[n3][escolha - 1].split(' ')
- if(escolha1 == n1):
- confirme = True
- n4,n5=pulareverso(escolha1,n4,n5)
- elif(escolha1[0] in n1):
- confirme = True
- n4, n5 = pulareverso(escolha1, n4, n5)
- elif(escolha1[1] in n1):
- if(escolha1[1]==n1[1]):
- print(f"A cor foi trocada para : {escolha1[0]}")
- n4, n5 = pulareverso(escolha1, n4, n5)
- confirme = True
- elif(escolha1[0] == 'coringa'):
- cor=0
- print(f'Escolha um nova cor de {cores}')
- while (cor > 4 or cor < 1):
- cor = int(input("De acordo com ordem das cores escolha :\n"))
- print(f"A cor foi trocada para {cores[cor-1]}")
- escolha1[0] = cores[cor-1]
- escolha1[1] = n1[1]
- confirme = True
- if(escolha!=0):
- n2.append(escolha1)
- del MatDoJogadores[n3][escolha - 1]
- return escolha1,n4,n5
- else:
- escolha1 = n1
- return escolha1, n4, n5
- def pegacartapula(esc,n2,n3,n4,n5):
- global cartas
- esc = 99
- if(len(cartas)!=0):
- ncarta=cartas
- else:
- ncarta=n5
- if (n2 == 0):
- n2 += 1
- novacarta = random.choice(ncarta)
- MatDoJogadores[n3].append(novacarta)
- print(f'As carta : {MatDoJogadores[n3]}')
- ncarta.remove(novacarta)
- if (len(cartas) != 0):
- cartas = ncarta
- else:
- n5 = ncarta
- elif (n2 > 0):
- esc = 0
- n4 = True
- return esc,n2,n4,n5
- def pulareverso(esc,rev,pul):
- if(esc[1] == 'reverso'):
- if (rev == False):
- rev = True
- else:
- rev = False
- elif(esc[1]=='cancela'):
- pul = True
- return rev,pul
- def maiscarta()
- lendocartas(x)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement