visto che l'altro giorno a lezione mi stavo annoiando ho deciso di creare un programmino per giocare a poker in 2,3 su terminale.
è rudimentale e esteticamente brutto, manca ancora tanto, però ci sto lavorando.
se qualcuno ha qualche idea e\o soluzione ai problemi me lo faccia sapere!
grazie in anticipo
è rudimentale e esteticamente brutto, manca ancora tanto, però ci sto lavorando.
se qualcuno ha qualche idea e\o soluzione ai problemi me lo faccia sapere!
grazie in anticipo
Python:
#poker da migliorare
#devo trovare delle librerie per il poker
#ancora da implementare chips call raise all-in e tutto quello che riguarda le puntate
#devo mettere i semi alle carte al posto delle lettere
import random, time
#mazzo
global mazzo
mazzo = ['AP', '2P', '3P', '4P', '5P', '6P', '7P', '8P','9P', '10P', 'JP', 'QP', 'KP',
'AF', '2F', '3F', '4F', '5F', '6F', '7F', '8F','9F', '10F', 'JF', 'QF', 'KF',
'AC', '2C', '3C', '4C', '5C', '6C', '7C', '8C','9C', '10C', 'JC', 'QC', 'KC',
'AQ', '2Q', '3Q', '4Q', '5Q', '6Q', '7Q', '8Q','9Q', '10Q', 'JQ', 'QQ', 'KQ']
#i caratteri dei semi non funzionano in ascii come posso fare?
#creazione dei giocatori
def creazioneGiocatori():
global numeroGiocatori
numeroGiocatori = int(input('Numero Giocatori'))
global listaGiocatori
listaGiocatori = []
for i in range(numeroGiocatori):
listaGiocatori.append(str('Giocatore_'+str(i+1)))
print(listaGiocatori)
#distribuzione mani iniziali
def distribuzioneCarte():
global manoGiocatore
manoGiocatore = []
global listaMani
listaMani = []
for giocatore in listaGiocatori:
manoGiocatore = [giocatore]
for i in range(2):
carta = random.choice(mazzo)
manoGiocatore.append(carta)
mazzo.remove(carta)
print(manoGiocatore)
listaMani.append(manoGiocatore)
checkMano = int(input('Hai guardato bene la tua mano? 1/0?'))
while True:
if checkMano == 1:
#print(('\n'*50))
#print('.next.')
#time.sleep(4)
#print(('\n'*50))
break
else:
time.sleep(1)
checkMano = int(input('Hai guardato bene la tua mano? 1/0?'))
def fold():
for giocatore in listaGiocatori:
if giocatore != 'placeHolder':
foldCheck = int(input(str(giocatore + ' Vuoi foldare la mano? 1/0?')))
if foldCheck == 1 and giocatore != 'placeHolder':
del listaMani[listaGiocatori.index(giocatore)]
listaGiocatori.insert(listaGiocatori.index(giocatore), 'placeHolder')
listaMani.insert(listaGiocatori.index(giocatore)-1, 'placeHolder')
del listaGiocatori[listaGiocatori.index(giocatore)]
#funziona ora devo rimuovere i placeHolder per lo showdown
def flop():
global flopCheck
flopCheck = int(input('FLOP? 1/0?'))
if flopCheck == 1:
global flop
flop = []
mazzo.remove(random.choice(mazzo))
for i in range(3):
CartaFlop = random.choice(mazzo)
flop.append(CartaFlop)
mazzo.remove(CartaFlop)
print(flop)
else:
print('mano terminata')
return 0
def turn():
global turnCheck
turnCheck = int(input('TURN? 1/0?'))
if turnCheck == 1:
global turn
turn = []
mazzo.remove(random.choice(mazzo))
cartaTurn = random.choice(mazzo)
turn.append(cartaTurn)
mazzo.remove(cartaTurn)
print(flop, turn)
else:
print('mano terminata')
return 0
def river():
global riverCheck
riverCheck = int(input('RIVER? 1/0?'))
if riverCheck == 1:
global river
river = []
mazzo.remove(random.choice(mazzo))
cartaRiver = random.choice(mazzo)
river.append(cartaRiver)
mazzo.remove(cartaRiver)
print(flop, turn, river)
else:
print('mano terminata')
return 0
def showdown():
showDownCheck = int(input('SHOWDOWN? 0/1'))
if showDownCheck == 1:
for mano in listaMani:
if mano == 'placeHolder':
listaMani.remove(mano)
for mano in listaMani:
print(mano)
else:
print('mano terminata')
return 0
creazioneGiocatori()
distribuzioneCarte()
fold()
flop()
fold()
if flopCheck == 1:
turn()
fold()
if turnCheck == 1:
river()
fold()
if riverCheck == 1:
showdown()