-
-
Save GravenilvecTV/9ee31bc10ba662f6b04774cecdd7003f to your computer and use it in GitHub Desktop.
from model.player import Player | |
from model.weapon import Weapon | |
knife = Weapon("Couteau", 3) | |
player1 = Player("Graven", 20, 3) | |
# donne un couteau faisant 3 dégats au joueur ! | |
player1.set_weapon(knife) | |
player2 = Player("Bob", 20, 5) | |
player1.attack_player(player2) | |
print(player1.get_pseudo(), "attaque", player2.get_pseudo()) | |
print("Bienvenue au joueur", player1.get_pseudo(), "/ Points de vie:", player1.get_health(), "/ Attaque:", player1.get_attack_value()) | |
print("Bienvenue au joueur", player2.get_pseudo(), "/ Points de vie:", player2.get_health(), "/ Attaque:", player2.get_attack_value()) |
class Player: | |
def __init__(self, pseudo, health, attack): | |
self.pseudo = pseudo | |
self.health = health | |
self.attack = attack | |
self.weapon = None | |
print("Bienvenue au joueur", pseudo, "/Points de vie: ", health, "/ Attaque", attack) | |
def get_pseudo(self): | |
return self.pseudo | |
def get_health(self): | |
return self.health | |
def get_attack_value(self): | |
return self.attack | |
def damage(self, damage): | |
self.health -= damage | |
def attack_player(self, target_player): | |
damage = self.attack | |
# si le joueur a une arme | |
if self.has_weapon(): | |
# ajoute les dégats de l'arme au point d'attaque du joueur | |
damage += self.weapon.get_damage_amount() | |
target_player.damage(damage) | |
# méthode pour changer l'arme du joueur | |
def set_weapon(self, weapon): | |
self.weapon = weapon | |
# méthode pour verifier si le joueur a une arme | |
def has_weapon(self): | |
return self.weapon is not None |
class Weapon: | |
def __init__(self, name, damage): | |
self.name = name | |
self.damage = damage | |
def get_name(self): | |
return self.name | |
def get_damage_amount(self): | |
return self.damage |
Voilà mon code ^^ (sinon t'a mis apprendre le java dans le titre du git)
Main.py
from model.player import Player
from model.weapon import Weapon
player1 = Player("YaY", 20, 3)
player2 = Player("Graven", 20, 3)
Knife = Weapon("Couteau", 5)
player1.set_weapon(Knife)
player1.attack_player(player2)
print(player1.get_pseudo(), "attaque", player2.get_pseudo(), "!")
print(player1.get_pseudo(), ": ", player1.get_healt(), " pv / ", player2.get_pseudo(), ": ", player2.get_healt(), "pv")
Player.py
class Player:
def __init__(self, pseudo, healt, attack, weapon=None):
self.pseudo = pseudo
self.healt = healt
self.attack = attack
self.weapon = weapon
print("Bienvenue au joueur: ", self.pseudo, "/ points de vie: ", self.healt, "/ attaque: ", self.attack)
def get_pseudo(self):
return self.pseudo
def get_healt(self):
return self.healt
def get_attack_value(self):
return self.attack
def set_weapon(self, weapon):
self.weapon = weapon
def damage(self, damage):
self.healt -= damage
def attack_player(self, target_player):
if self.weapon != None:
self.attack += self.weapon.damage
target_player.damage(self.attack)
Weapon.py
class Weapon:
def __init__(self, name, damage):
self.name = name
self.damage = damage
def get_name(self):
return self.name
def get_damage(self):
return self.name
Persos je sais déjà coder en python mais tes vidéos sont super et les TP j'en raffole pour l'idée moi g tout fait en un fichier car flemme de faire des modules. Ce fut du 10min ou 6 jsp donc c du bordel deso d'avance mais ca marche. Voici mon code:
class Weapon:
def init(self, name, damage):
self.name = name
self.damage = damage
print("La nouvelle arme", name, "a été créée avec succès et possède", damage, "points de dégâts")
def get_weapon_damage(self):
return self.damage
def get_weapon_name(self):
return self.name
class Player:
def init(self, pseudo, pv, pa):
self.pseudo = pseudo
self.pv = pv
self.pa = pa
self.weapon = None
print("Bienvenue au joueur", pseudo, "/ PV:", pv, "/ PA:", pa)
def set_weapon(self, weapon):
self.weapon = weapon
def get_weapon_attributes(self):
if self.weapon:
w_dmg = self.weapon.get_weapon_damage()
w_name = self.weapon.get_weapon_name()
return w_name, w_dmg
else:
return None, None
def get_pseudo(self):
return self.pseudo
def dammage(self, dammage):
self.pv -= dammage
def dmg_player(self, target):
if self.weapon != None:
w_dmg = self.weapon.get_weapon_damage()
dammage = self.pa + w_dmg
else:
dammage = self.pa
target.dammage(dammage)
def get_pv(self):
return self.pv
couteau = Weapon("couteau", 5)
baton = Weapon('baton', 3)
Player1 = Player("Marc", 10, 1)
Player2 = Player("Antonin", 10, 3)
Player1.set_weapon(baton)
Player2.set_weapon(couteau)
print(Player1.get_weapon_attributes())
Player1.dmg_player(Player2)
print(Player2.get_pv())
Moi g concaténée les deux atack (arme et initial) mais on peut simplement mettre l'arme même ci c plus logic de conter comme les dgt init comme la force du gars
Bonjour à tous, voici ma version :
Weapon.py
# Création de la classe d'arme
class Weapon:
def __init__(self, name, damage):
self.name = name
self.damage = damage
def get_name(self):
return self.name
def get_damage_amount(self):
return self.damage
Player.py
# Création de la classe du joueur
class Player :
def __init__(self, pseudo, health, attack):
self.pseudo = pseudo
self.health = health
self.attack = attack
self.weapon = None
print("Bienvenue au joueur {} / Vie : {} / Attaque : {}".format(pseudo, health, attack))
def get_pseudo(self):
return self.pseudo
def get_health(self):
return self.health
def get_attack(self):
return self.attack
def damage(self, damage):
self.health -= damage
print("Aie... vous venez de subir {} points de dégâts !".format(damage))
def attack_player(self, target_player):
damage = self.attack
# Si le joueur à une arme
if self.has_weapon():
# Ajout des points d'attaque de l'arme au joueur
damage += self.weapon.get_damage_amount()
target_player.damage(damage)
# Méthode pour changer l'amre du joueur
def set_weapon(self, weapon):
self.weapon = weapon
def get_weapon_name(self):
if self.weapon is not None:
return self.weapon.get_name()
else:
return "Aucune arme"
# Méthode pour vérifier si le joueur à une arme
def has_weapon(self):
return self.weapon is not None
Main.py
# Importations des librairies
from models.Player import Player
from models.Weapon import Weapon
# Création des armes
knife = Weapon("Couteau", 8)
pistol = Weapon("Pistolet", 10)
# Création des joueurs
player1 = Player("Pcommander", 20, 2)
player2 = Player("Tcommander", 20, 2)
# Attribution des armes aux joueurs
player1.set_weapon(knife)
player2.set_weapon(pistol)
# Attaque du P1 sur P2
player1.attack_player(player2)
print("{} attaque {}".format(player1.get_pseudo(),player2.get_pseudo()))
# Affichages des caractéristiques après attaque
print("Bienvenue au joueur {} / Vie : {} / Attaque : {} / Arme : {}".format(player1.get_pseudo(), player1.get_health(), player1.get_attack(), player1.get_weapon_name()))
print("Bienvenue au joueur {} / Vie : {} / Attaque : {} / Arme : {}".format(player2.get_pseudo(), player2.get_health(), player2.get_attack(), player2.get_weapon_name()))
Bonjour OriginalNPC ...
difficile de te répondre sans ton code ... dans mon code ...
les Objets
je l'affiche avec la commande print
pour afficher que le nom de l'arme
attention le code n'est pas complet ... ce sont les lignes pour afficher le nom de l'arme du joueur 1 .