Browse Source

Terminé

master
GUILLAUME Baptiste 12 months ago
parent
commit
1d7348e026
  1. 67
      JDR_SQL.py

67
JDR_SQL.py

@ -5,7 +5,7 @@ import time
#Création de la table Personnage
conn = sqlite3.connect('JeuDeRole.db')
c = conn.cursor()
c.execute('''CREATE TABLE if not exists Perso(num_joueur INT, nom TEXT, pdv INT, exp INT, categorie TEXT)''')
c.execute('''CREATE TABLE if not exists Perso (nom TEXT PRIMARY KEY, pdv INT, exp INT, categorie TEXT)''')
conn.commit()
class Personnage:
@ -79,17 +79,23 @@ P1 = Personnage(nomP1, catP1)
P2 = Personnage(nomP2, catP2)
J1 = (1, nomP1, 20, 1, catP1)
J2 = (2, nomP2, 20, 1, catP2)
J1_1 = (20, 1, catP1, nomP1)
J2_1 = (20, 1, catP2, nomP2)
J1_2 = (nomP1, 20, 1, catP1)
J2_2 = (nomP2, 20, 1, catP2)
liste = c.execute("SELECT nom FROM Perso")
if nomP1 in liste :
c.execute("UPDATE Perso SET num_joueur = (?), nom = (?), pdv = (?), exp = (?), categorie = (?)", J1)
c.execute("UPDATE Perso SET num_joueur = (?), nom = (?), pdv = (?), exp = (?), categorie = (?)", J2)
conn.commit()
if (nomP1,) in liste :
c.execute("UPDATE Perso SET pdv = (?), exp = (?), categorie = (?) WHERE nom = (?)", J1_1)
else:
c.execute("INSERT INTO Perso VALUES (?, ?, ?, ?)", J1_2)
conn.commit()
if (nomP2,) in liste:
c.execute("UPDATE Perso SET pdv = (?), exp = (?), categorie = (?) WHERE nom = (?)", J2_1)
else:
c.execute("INSERT INTO Perso VALUES (?, ?, ?, ?, ?)", J1)
c.execute("INSERT INTO Perso VALUES (?, ?, ?, ?, ?)", J2)
c.execute("INSERT or REPLACE INTO Perso VALUES (?, ?, ?, ?)", J2_2)
conn.commit()
#https://stackoverflow.com/questions/35415469/sqlite3-unique-constraint-failed-error
print("-----------------------------")
while P1.pdv > 0 and P2.pdv > 0:
@ -101,24 +107,24 @@ while P1.pdv > 0 and P2.pdv > 0:
print(nomP1, "attaque", nomP2, "!!!", nomP2,"vient de perdre", -perte_pdv, "point(s) de vie.")
P2.change_pdv(perte_pdv)
if P2.pdv > 0:
pdv2 = (P2.pdv)
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 2", (pdv2,))
pdv2 = (P2.pdv, nomP2,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv2)
conn.commit()
else:
pdv2 = 0
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 2", (pdv2,))
pdv2 = (0, nomP2,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv2)
conn.commit()
else:
perte_pdv = -randint(1,4)
print(nomP2, "arrive à se défendre de l'attaque de", nomP1,"!!!", nomP1,"vient de perdre", -perte_pdv, "point(s) de vie.")
P1.change_pdv(perte_pdv)
if P1.pdv > 0:
pdv1 = (P1.pdv)
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 1", (pdv1,))
pdv1 = (P1.pdv, nomP1,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv1)
conn.commit()
else:
pdv1 = 0
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 1", (pdv1,))
pdv1 = (0, nomP1,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv1)
conn.commit()
P1.affiche_caracteristiques()
P2.affiche_caracteristiques()
@ -126,9 +132,6 @@ while P1.pdv > 0 and P2.pdv > 0:
if P1.pdv > 0 and P2.pdv <= 0:
P1.change_exp(1)
print("Le joueur", nomP1, "a gagné.")
valeur = 0
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 1", (valeur,))
conn.commit()
break
elif P1.pdv <= 0 and P2.pdv > 0:
P2.change_exp(1)
@ -136,10 +139,11 @@ while P1.pdv > 0 and P2.pdv > 0:
break
print("-----------------------------")
print("-----------------------------------")
if P1.pdv > 0 and P2.pdv > 0:
input("~~~Veuillez appuyer sur Entrée~~~")
print(" ")
print("-----------------------------------")
print(" ")
print("---Phase 2 du tour (", nomP2,"attaque)---")
@ -150,24 +154,24 @@ while P1.pdv > 0 and P2.pdv > 0:
print(nomP2, "attaque", nomP1, "!!!", nomP1,"vient de perdre", -perte_pdv, "point(s) de vie.")
P1.change_pdv(perte_pdv)
if P1.pdv > 0:
pdv1 = (P1.pdv)
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 1", (pdv1,))
pdv1 = (P1.pdv, nomP1,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv1)
conn.commit()
else:
pdv1 = 0
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 1", (pdv1,))
pdv1 = (0, nomP1,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv1)
conn.commit()
else:
perte_pdv = -randint(1,4)
print(nomP1, "arrive à se défendre de l'attaque de", nomP2, "!!!", nomP2,"vient de perdre", -perte_pdv, "point(s) de vie.")
P2.change_pdv(perte_pdv)
if P2.pdv > 0:
pdv2 = (P2.pdv)
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 2", (pdv2,))
pdv2 = (P2.pdv, nomP2,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv2)
conn.commit()
else:
pdv2 = 0
c.execute("UPDATE Perso SET pdv = (?) WHERE num_joueur = 2", (pdv2,))
pdv2 = (0, nomP2,)
c.execute("UPDATE Perso SET pdv = (?) WHERE nom = (?)", pdv2)
conn.commit()
P1.affiche_caracteristiques()
P2.affiche_caracteristiques()
@ -178,9 +182,10 @@ while P1.pdv > 0 and P2.pdv > 0:
P2.change_exp(1)
print("Le joueur", nomP2, "a gagné.")
print("-----------------------------")
print("-----------------------------------")
if P1.pdv > 0 and P2.pdv > 0:
input("~~~Veuillez appuyer sur Entrée~~~")
print("-----------------------------------")
print(" ")
conn.close()
Loading…
Cancel
Save