Browse Source

Terminé (+ quelques ajouts)

master
GUILLAUME Baptiste 10 months ago
parent
commit
984d4a1d3f
  1. 72
      JDR_SQL.py

72
JDR_SQL.py

@ -1,6 +1,5 @@
from random import randint from random import randint
import sqlite3 import sqlite3
import time
#Création de la table Personnage #Création de la table Personnage
conn = sqlite3.connect('JeuDeRole.db') conn = sqlite3.connect('JeuDeRole.db')
@ -15,36 +14,54 @@ class Personnage:
self.exp = 1 self.exp = 1
self.cat = cat self.cat = cat
if self.cat == "guerrier": if self.cat == "guerrier":
self.inv = ["épée", "potion"] self.inv = "épée"
elif self.cat == "magicien": elif self.cat == "magicien":
self.inv = ["bâton", "potion"] self.inv = "bâton"
elif self.cat == "voleur": elif self.cat == "voleur":
self.inv = ["dague", "potion"] self.inv = "dague"
elif self.cat == "elfe": elif self.cat == "elfe":
self.inv = ["arc", "potion"] self.inv = "arc"
elif self.cat == "orc":
self.inv = "masse"
elif self.cat == "invocateur":
self.inv = "livre d'invocation"
elif self.cat == "loup-garou":
self.inv = "griffes"
def jet_attaque(self): def jet_attaque(self):
attaque = randint(1,20) attaque = randint(1,20)
if self.cat == "guerrier": if self.cat == "guerrier":
attaque = attaque + self.exp*10 attaque = attaque + self.exp*7
elif self.cat == "mage": elif self.cat == "mage":
attaque = attaque + self.exp*10 attaque = attaque + self.exp*7
elif self.cat == "voleur": elif self.cat == "voleur":
attaque = attaque + self.exp*3 attaque = attaque + self.exp*3
elif self.cat == "elfe": elif self.cat == "elfe":
attaque = attaque + self.exp*5
elif self.cat == "orc":
attaque = attaque + self.exp*9
elif self.cat == "invocateur":
attaque = attaque + self.exp*6
elif self.cat == "loup-garou":
attaque = attaque + self.exp*8 attaque = attaque + self.exp*8
return attaque return attaque
def jet_defense(self): def jet_defense(self):
defense = randint(1,20) defense = randint(1,20)
if self.cat == "guerrier": if self.cat == "guerrier":
defense = defense + self.exp*10 defense = defense + self.exp*6
elif self.cat == "mage": elif self.cat == "mage":
defense = defense + self.exp*10 defense = defense + self.exp*8
elif self.cat == "voleur": elif self.cat == "voleur":
defense = defense + self.exp*3 defense = defense + self.exp*4
elif self.cat == "elfe": elif self.cat == "elfe":
defense = defense + self.exp*8 defense = defense + self.exp*5
elif self.cat == "orc":
defense = defense + self.exp*6
elif self.cat == "invocateur":
defense = defense + self.exp*5
elif self.cat == "loup-garou":
defense = defense + self.exp*6
return defense return defense
def change_pdv(self, nb_pdv): def change_pdv(self, nb_pdv):
@ -69,33 +86,22 @@ class Personnage:
nomP1 = input("Joueur 1, quel est votre nom ?: ") nomP1 = input("Joueur 1, quel est votre nom ?: ")
nomP2 = input("Joueur 2, quel est votre nom ?: ") nomP2 = input("Joueur 2, quel est votre nom ?: ")
catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur, elfe, orc, invocateur et loup-garou: ")
while not catP1 in ["guerrier", "mage", "voleur","elfe"]: while not catP1 in ["guerrier", "mage", "voleur","elfe", "orc","invocateur", "loup-garou"]:
catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur, elfe, orc, invocateur et loup-garou: ")
catP2 = input("Joueur 2, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") catP2 = input("Joueur 2, choisissez votre catégorie entre guerrier, mage, voleur, elfe, orc, invocateur et loup-garou :")
while not catP2 in ["guerrier", "mage", "voleur","elfe"]: while not catP2 in ["guerrier", "mage", "voleur","elfe", "orc", "invocateur", "loup-garou"]:
catP2 = input("Joueur 2, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") catP2 = input("Joueur 2, choisissez votre catégorie entre guerrier, mage, voleur, elfe, orc, invocateur et loup-garou: ")
P1 = Personnage(nomP1, catP1) P1 = Personnage(nomP1, catP1)
P2 = Personnage(nomP2, catP2) P2 = Personnage(nomP2, catP2)
J1_1 = (20, 1, catP1, nomP1)
J2_1 = (20, 1, catP2, nomP2) J1 = (nomP1, 20, 1, catP1)
J1_2 = (nomP1, 20, 1, catP1) J2 = (nomP2, 20, 1, catP2)
J2_2 = (nomP2, 20, 1, catP2) c.execute("INSERT or REPLACE INTO Perso VALUES (?, ?, ?, ?)", J1)
liste = c.execute("SELECT nom FROM Perso") c.execute("INSERT or REPLACE INTO Perso VALUES (?, ?, ?, ?)", 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 or REPLACE INTO Perso VALUES (?, ?, ?, ?)", J2_2)
conn.commit() conn.commit()
#https://stackoverflow.com/questions/35415469/sqlite3-unique-constraint-failed-error
print("-----------------------------") print("-----------------------------")
while P1.pdv > 0 and P2.pdv > 0: while P1.pdv > 0 and P2.pdv > 0:

Loading…
Cancel
Save