Advertisement
Guest User

PATATE

a guest
Nov 24th, 2017
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.43 KB | None | 0 0
  1. import random
  2.  
  3. MSG_PIOCHE1 = "Voici vos deux premières cartes:"
  4. MSG_PIOCHE2 = "Voici les trois cartes du flop:"
  5. MSG_PIOCHE3 = "Voici la carte du turn:"
  6. MSG_PIOCHE4 = "Voici la carte de la river:"
  7. MSG_RECAP_CARTES = "Vous avez donc à votre disposition les cartes suivantes:"
  8. MSG_QUESTION_MISE = "Voulez-vous miser quelque chose [O/N]?"
  9. MSG_ERREUR_MISE = "Veuillez répondre par Oui ou par Non:"
  10. MSG_PARI_MISE = "Sur quel résultat voulez-vous miser [p/dp/b/s/c/f/ca/sc] ?"
  11. MSG_ERREUR_PARI = "Veuillez entrer un résultat valable : p/dp/b/s/c/f/ca/sc ?"
  12. MSG_RESTE_MISE = "Combien voulez-vous miser?"
  13. MSG_BITCOIN = "Ƀ"
  14. MSG_ERREUR_MONTANT = "Veuillez entrer un montant entier positif inférieur à "
  15. MSG_SOLDE = "Il vous reste "
  16. MSG_CONTINUER = "Voulez-vous continuer à jouer [O/N]? "
  17. MSG_FIN_1 = "Merci d'avoir joué. Vous repartez avec "
  18. MSG_FIN_2 = " Ƀ. Bye"
  19. MSG_GAIN_PARI_1 = "Votre pari"
  20. MSG_GAIN_PARI_2 = " vous a rapporté"
  21. FICHIER_PROBABILITE = "/pub/data/probabilites.txt"
  22.  
  23.  
  24.  
  25. def carte_to_string(carte):
  26. """Cree la chaine de caracteres correspondant a la carte."""
  27. symboles = [str(i+1) for i in range(10)] + ["V", "D", "R"]
  28. couleurs = ["♥", "♦", "♣", "♠"]
  29. res = symboles[carte[0] - 1] + couleurs[carte[1] - 1]
  30. return res
  31.  
  32. def creer_jeu():
  33. """Cree un jeu de cartes."""
  34. jeu = []
  35. for i in range(1, 14):
  36. for j in range(1, 5):
  37. jeu.append((i, j))
  38. return jeu
  39.  
  40. def sortir_cartes():
  41. """Creer déja un packet de 7 cartes dont les 2 premières sont celles du joueur."""
  42. carte_tiree=[]
  43. deck_final=creer_jeu()
  44. for i in range(7):
  45. b=random.randint(0,51-i)
  46. carte_tiree.append(deck_final[b])
  47. del deck_final[b]
  48. return carte_tiree
  49.  
  50. def Pair_Double_Pair_flop(v,w): #A FINIR
  51. """Traduit ce que veut dire Pair ou Double_Pair en termes de tuples sachant que v et w sont rangés et que v est la main du joueur JUSTE pour le Flop"""
  52. f=0
  53. h=0
  54. save = None
  55. for i in range(3):
  56. if v[0][0]==w[i][0]:
  57. h+=1
  58. if v[1][0]==w[i][0]: #si on sait que la première
  59. f+=1
  60. if (h==1 and f==0) or (h==0 and f==1):
  61. save="p"
  62. elif h==1 and f==1:
  63. save="dp"
  64. elif (h==2 and f==0) or (h==0 and f==2): #Brelan?
  65. save ="b"
  66.  
  67. return save
  68.  
  69. def Brelan_flop(v,w):
  70. f=0
  71. h=0
  72. save = None
  73. if v[0][0]==v[1][0]:#test du cas où le joueur a deux fois la cartes
  74. for i in range(3):
  75. if w[i][0]==v[0][0]:
  76. save= "b"
  77. else:
  78. for i in range(3):
  79. if v[0][0]==w[i][0]: #on compare la 1ere carte du joueur avec les cartes de la table
  80. f+=1
  81. elif v[1][0]==w[i][0]: #on compare la 2eme carte du joueur avec les cartes de la table
  82. h+=1
  83. if f==3 or h==3:
  84. save ="b"
  85. return save
  86.  
  87. def Suite_flop(v,w):
  88. """
  89. Dans un premier temps,ce code compare si le joueur a déja une mini-suite avec ses 2 cartes. Par après, le code compare si les cartes sur la table
  90. sont plus "petites" ou plus "grandes" que celles du joueur. Compare enfin les cartes entre-elles
  91. """
  92. h=0
  93. save = None
  94. if v[1][0]==v[0][0]+1:
  95. if w[0][0]==v[1][0]+1: #cette ligne compare la plus GRANDE carte du joueur avec la plus PETITE sur la table
  96. for i in range(2):
  97. if w[i+1][0]==w[i][0]+1: #cette ligne compte le nombre de fois que la carte(sur la table) d'après vaut celle d'avant +1
  98. h+=1
  99. if h==2: #du coup si h=3, nos 3 cartes sur la tables se suivent=> grâce au test juste avant=> on sait que toutes les cartes se suivent
  100. save="s"
  101. elif v[0][0]==w[2][0]+1: #cette ligne compare la plus PETITE carte du joueur avec la plus GRANDE sur la table (cas où les cartes du joueur sont plus grandes)
  102. for i in range(2):
  103. if w[i+1][0]==w[i][0]+1: #cette ligne compte le nombre de fois que la carte(sur la table) d'après vaut celle d'avant +1
  104. h+=1
  105. if h==2:
  106. save="s"
  107. return save
  108.  
  109. def Couleur_flop(v,w): #même symbole
  110. h=0
  111. save= None
  112. if v[1][1]==v[0][1]: #compare si le joueur a deux fois le même symbole
  113. if w[0][1]==v[0][1]: #si on veut une couleur ça implique que toutes les cartes de la table ont le même signe que la main du joueur donc la première carte de la table doit aussi respecter cette condition
  114. for i in range(2):
  115. if w[i][1]==w[i+1][1]:
  116. h+=1
  117. if h==2:
  118. save="c"
  119. return save
  120.  
  121. def Miser():
  122. """Pose toutes questions, peut-etre deviendra la fonction Game si possible"""
  123. B=100
  124. u=sortir_cartes()
  125. v=sorted(u[0:2])#carte du joueur
  126. w=sorted(u[2:5])#carte sur la table_flop
  127. x=sorted(u[2:6])#carte sur la table_turn
  128. y=sorted(u[2:7])#carte sur la table_river
  129. print(MSG_PIOCHE1 +" "+carte_to_string(v[0])+" "+carte_to_string(v[1]))
  130. b=input(MSG_QUESTION_MISE + "")
  131. if b=="O":
  132. c=input(MSG_PARI_MISE + "")
  133. if c=="p" or c=="dp" or c=="b" or c=="s" or c== "c" or c=="f" or c=="ca" or c=="sc":
  134. d=input(MSG_SOLDE + str(B)+" "+MSG_BITCOIN + " " +MSG_RESTE_MISE+" ")
  135. else:
  136. c=input(MSG_ERREUR_PARI + "")
  137. elif b=="N":pass
  138.  
  139. else:
  140. c=input(MSG_ERREUR_MISE+" ")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement