SHARE
TWEET

Uno-Incompleto 2.0

DomMisterSoja Dec 26th, 2018 (edited) 73 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. '''This code uses this : https://pastebin.com/Hab1ssUA'''
  2. import random
  3. x = 0
  4. c = 0
  5. cartas=[]
  6. nomes=[]
  7. njogadores=0
  8. MatDoJogadores=[]
  9.  
  10. def lendocartas (n):
  11.     arquivo = open('Cartas','r')
  12.     for i in arquivo:
  13.         i= i.split(',')
  14.         for j in i:
  15.             if j== "\n":
  16.                 a=0
  17.             else:
  18.                 cartas.append(j)
  19.     print(cartas)
  20.     arquivo.close()
  21.     c=qjogadores(x)
  22.     deckJogadores(c)
  23.     partida(c)
  24.  
  25. def qjogadores(n):
  26.     global njogadores
  27.     njogadores = int(input("Quantos pessoas irão jogar ?\nObs: Min: 2 jogadores.\nMax: 10 jogadores.\n"))
  28.     while(njogadores<2 or njogadores>10):
  29.         njogadores = int(input("Quantos pessoas irão jogar ?\nObs: Min: 2 jogadores.\nMax: 10 jogadores.\n"))
  30.     for i in range(njogadores):
  31.         nomedeles = input(f'Qual nome dos jogador {i+1} :\n')
  32.         nomes.append(nomedeles)
  33.     return  njogadores
  34.  
  35. def deckJogadores(n):
  36.     for i in range(n):
  37.         deck=[]
  38.         for j in range(7):
  39.             x = random.choice(cartas)
  40.             cartas.remove(x)
  41.             deck.append(x)
  42.         MatDoJogadores.append(deck)
  43.  
  44. def partida (x):
  45.     global MatDoJogadores
  46.     cartasUsadas = []
  47.     cartapassada = []
  48.     enquantomais = False
  49.     contEnqMais = 0
  50.     jogoganho = False
  51.     reverso = False
  52.     pula = False
  53.     c = 0
  54.     while(jogoganho==False):
  55.         print(f'Cartas do Jogador {c+1}: {MatDoJogadores[c]}')
  56.         if (cartapassada == []):
  57.             a=vazio(cartasUsadas)
  58.             cartapassada=a
  59.             print(f'{cartasUsadas}')
  60.         elif (cartapassada != []):
  61.             a,b,d=rodada2(cartapassada,cartasUsadas,c,reverso,pula)
  62.             cartapassada = a
  63.             reverso = b
  64.             pula = d
  65.  
  66.         if reverso == True:
  67.             if pula==True:
  68.                 c+= -2
  69.                 if c<0:
  70.                     c=x-2
  71.                 pula=False
  72.             else:
  73.                 c+= -1
  74.                 if c < 0:
  75.                     c = x-1
  76.         else:
  77.             if pula==True:
  78.                 c+= +2
  79.                 if c>x:
  80.                     c=1
  81.                 pula=False
  82.             else:
  83.                 c+=1
  84.                 if c == x:
  85.                     c=0
  86. def vazio(n2):
  87.     global MatDoJogadores,c
  88.     escolha = 99
  89.     print(f'{nomes[c]} pode jogar qualque carta.\nObs:Cartas de efeito não funcionaram.')
  90.     while(escolha > len(MatDoJogadores[c])):
  91.         escolha = int(input(f"Qual carta será jogada, {nomes[c]}\n"))
  92.     escolha1=MatDoJogadores[c][escolha - 1].split(' ')
  93.     n2.append(escolha1)
  94.     del MatDoJogadores[c][escolha-1]
  95.     return escolha1
  96.  
  97.  
  98.  
  99. def rodada2(n1,n2,n3,n4,n5):
  100.     global MatDoJogadores
  101.     cores=['vermelho','verde','amarelo','azul']
  102.     zero=0
  103.     escolha= 99
  104.     cor = 99
  105.     confirme = False
  106.     while(confirme == False):
  107.         print(f'A carta passada passada : {n1}')
  108.         while(escolha > len(MatDoJogadores[n3])):
  109.             escolha = int(input(f"Qual carta será jogada, {nomes[n3]}\nObs: 0 para pegar carta e 0 denovo para pular\n"))
  110.             if (escolha == 0):
  111.                 escolha,zero,confirme,n2=pegacartapula(escolha,zero,n3,confirme,n2)
  112.         if escolha != 0:
  113.             escolha1 = MatDoJogadores[n3][escolha - 1].split(' ')
  114.             if(escolha1 == n1):
  115.                 confirme = True
  116.                 n4,n5=pulareverso(escolha1,n4,n5)
  117.             elif(escolha1[0] in n1):
  118.                 confirme = True
  119.                 n4, n5 = pulareverso(escolha1, n4, n5)
  120.             elif(escolha1[1] in n1):
  121.                 if(escolha1[1]==n1[1]):
  122.                     print(f"A cor foi trocada para : {escolha1[0]}")
  123.                     n4, n5 = pulareverso(escolha1, n4, n5)
  124.                 confirme = True
  125.             elif(escolha1[0] == 'coringa'):
  126.                 cor=0
  127.                 print(f'Escolha um nova cor de {cores}')
  128.                 while (cor > 4 or cor < 1):
  129.                     cor = int(input("De acordo com ordem das cores escolha :\n"))
  130.                 print(f"A cor foi trocada para {cores[cor-1]}")
  131.                 escolha1[0] = cores[cor-1]
  132.                 escolha1[1] = n1[1]
  133.                 confirme = True
  134.     if(escolha!=0):
  135.         n2.append(escolha1)
  136.         del MatDoJogadores[n3][escolha - 1]
  137.         return escolha1,n4,n5
  138.     else:
  139.         escolha1 = n1
  140.         return escolha1, n4, n5
  141.  
  142. def pegacartapula(esc,n2,n3,n4,n5):
  143.     global cartas
  144.     esc = 99
  145.     if(len(cartas)!=0):
  146.         ncarta=cartas
  147.     else:
  148.         ncarta=n5
  149.     if (n2 == 0):
  150.         n2 += 1
  151.         novacarta = random.choice(ncarta)
  152.         MatDoJogadores[n3].append(novacarta)
  153.         print(f'As carta : {MatDoJogadores[n3]}')
  154.         ncarta.remove(novacarta)
  155.         if (len(cartas) != 0):
  156.             cartas = ncarta
  157.         else:
  158.             n5 = ncarta
  159.     elif (n2 > 0):
  160.         esc = 0
  161.         n4 = True
  162.     return esc,n2,n4,n5
  163.  
  164. def pulareverso(esc,rev,pul):
  165.     if(esc[1] == 'reverso'):
  166.         if (rev == False):
  167.             rev = True
  168.         else:
  169.             rev = False
  170.     elif(esc[1]=='cancela'):
  171.         pul = True
  172.     return rev,pul
  173.  
  174. def maiscarta()
  175.  
  176.  
  177.  
  178.  
  179.  
  180. lendocartas(x)
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top