Projet avancée #1

Open
opened 3 days ago by MecEnKravate · 2 comments
Owner
There is no content yet.
Poster
Owner

py import random as rd

class Monstre:
def init(self, nom = 'Aucun', dsc = '???' , img=None, obj=None)->None:
self.nom = nom
self.description = dsc
self.image = img
self.objet = obj
self.force = rd.randint(1,4)
self.agilite = rd.randint(1,4)
self.vie = rd.randint(10,50)
self.courage = rd.randint(1,10)

def get_description(self:'Monstre') -> str:
    return self.description

def get_carac(self:'Monstre') -> str:
    return f"{self.nom} , ATK={self.force} , AGI={self.agilite} , PV={self.vie} , C={self.courage}"

def subir_degats(self :"Monstre" , degats : int)->None:
    if degats > 0 :
        self.vie = self.vie - degats
        if self.vie < 0 :
            self.vie = 0

def est_hs(self:'Monstre') -> bool:
    return self.vie <= 0

class Player:
def init(self, nom = 'Aucun', niveau = 1 , img=None)->None:
self.nom = nom
self.lv = niveau
self.image = img
self.vie_max = 20 * self.lv
self.vie = self.vie_max
self.force = 1 * self.lv
self.agilite = 1 * self.lv
self.lieux_precedents = []
self.lieu = None

 def get_carac(self:'Player') -> str:
    return f"{self.nom} , ATK={self.force} , AGI={self.agilite} , PV={self.vie}"
   
 def est_hs(self:'Player') -> bool:
     return self.vie <= 0
        
 def subir_degats(self :"Player" , degats : int)->None:
    if degats > 0 :
        self.vie = self.vie - degats
        if self.vie > 0 :
            self.vie = 0
    
 def combattre(self :'Player' , adversaire: 'Monstre')-> tuple:
   self.force + rd.randint(1 , 6) + rd.randint(1 , 6)
   Monstre.force + rd.randint(1 , 6) + rd.randint(1 , 6)
   if self.force == Monstre.force :
       subir_degats(1)
       subir_degats('Monstre' , 1)
       
 def soigner(self: 'Personnage' , soins : int)-> None:
     self.vie = self.vie + soins
     if self.vie > self.vie_max :
         self.vie = self.vie_max

class Lieu:
def init(self, nom, dsc, img=None) -> None:
self.nom = nom
self.dsc = dsc
self.img = img
self.nord = None
self.sud = None
self.ouest = None
self.est = None
self.occupant = None
self.objets = None
self.actionsupp = None

def decrirelieu(self):
    reponse = self.dsc
    if self.occupant:
        reponse = reponse + f"\nLa salle contient également : {self.occupant.get_description()}"
    return reponse

if name == 'main' :
a = Monstre('squelette' , 'il sert à rien sah')
b = Player('Djibril',1,None)
entree = Lieu('Entrée', "Une entrée délabrée et poussiéreuse. Une porte entrouverte se trouve à l'est")
cuisine = Lieu("Cuisine", "Tout est très bien rangé dans cette cuisine. Un étrange plat mijote sur le feu. Une porte mène à l'ouest.")
entree.est = cuisine
cuisine.ouest = entree

> py import random as rd class Monstre: def __init__(self, nom = 'Aucun', dsc = '???' , img=None, obj=None)->None: self.nom = nom self.description = dsc self.image = img self.objet = obj self.force = rd.randint(1,4) self.agilite = rd.randint(1,4) self.vie = rd.randint(10,50) self.courage = rd.randint(1,10) def get_description(self:'Monstre') -> str: return self.description def get_carac(self:'Monstre') -> str: return f"{self.nom} , ATK={self.force} , AGI={self.agilite} , PV={self.vie} , C={self.courage}" def subir_degats(self :"Monstre" , degats : int)->None: if degats > 0 : self.vie = self.vie - degats if self.vie < 0 : self.vie = 0 def est_hs(self:'Monstre') -> bool: return self.vie <= 0 class Player: def __init__(self, nom = 'Aucun', niveau = 1 , img=None)->None: self.nom = nom self.lv = niveau self.image = img self.vie_max = 20 * self.lv self.vie = self.vie_max self.force = 1 * self.lv self.agilite = 1 * self.lv self.lieux_precedents = [] self.lieu = None def get_carac(self:'Player') -> str: return f"{self.nom} , ATK={self.force} , AGI={self.agilite} , PV={self.vie}" def est_hs(self:'Player') -> bool: return self.vie <= 0 def subir_degats(self :"Player" , degats : int)->None: if degats > 0 : self.vie = self.vie - degats if self.vie > 0 : self.vie = 0 def combattre(self :'Player' , adversaire: 'Monstre')-> tuple: self.force + rd.randint(1 , 6) + rd.randint(1 , 6) Monstre.force + rd.randint(1 , 6) + rd.randint(1 , 6) if self.force == Monstre.force : subir_degats(1) subir_degats('Monstre' , 1) def soigner(self: 'Personnage' , soins : int)-> None: self.vie = self.vie + soins if self.vie > self.vie_max : self.vie = self.vie_max class Lieu: def __init__(self, nom, dsc, img=None) -> None: self.nom = nom self.dsc = dsc self.img = img self.nord = None self.sud = None self.ouest = None self.est = None self.occupant = None self.objets = None self.actionsupp = None def decrirelieu(self): reponse = self.dsc if self.occupant: reponse = reponse + f"\nLa salle contient également : {self.occupant.get_description()}" return reponse if __name__ == '__main__' : a = Monstre('squelette' , 'il sert à rien sah') b = Player('Djibril',1,None) entree = Lieu('Entrée', "Une entrée délabrée et poussiéreuse. Une porte entrouverte se trouve à l'est") cuisine = Lieu("Cuisine", "Tout est très bien rangé dans cette cuisine. Un étrange plat mijote sur le feu. Une porte mène à l'ouest.") entree.est = cuisine cuisine.ouest = entree >
Poster
Owner

La séance du 22/11/2024 ma permit de commencer la classe Lieu (j'ai bien avancé)
Il faut que je finisisse la méthode de combat
et j'ai ENFIN fini la méthode de soin

La séance du 22/11/2024 ma permit de commencer la classe Lieu (j'ai bien avancé) Il faut que je finisisse la méthode de combat et j'ai ENFIN fini la méthode de soin
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.