def mourir(self, adversaire=None, recompenser=True): """La mort d'un PNJ signifie sa destruction.""" try: self.script["meurt"]["avant"].executer(pnj=self, salle=self.salle, adversaire=adversaire) except InterrompreCommande: Personnage.mourir(self, adversaire=adversaire, recompenser=recompenser) else: Personnage.mourir(self, adversaire=adversaire, recompenser=recompenser) self.script["meurt"]["apres"].executer(pnj=self, salle=self.salle, adversaire=adversaire) cadavre = importeur.objet.creer_objet(importeur.objet.prototypes[ "cadavre"]) cadavre.pnj = self.prototype self.salle.objets_sol.ajouter(cadavre) importeur.hook["pnj:meurt"].executer(self, adversaire) # Gain d'XP if adversaire and self.gain_xp and recompenser: xp = importeur.perso.gen_niveaux.grille_xp[self.niveau][1] xp = xp * self.gain_xp / 100 adversaire.gagner_xp("combat", xp) importeur.pnj.supprimer_PNJ(self.identifiant)
def mourir(self, adversaire=None, recompenser=True): Personnage.mourir(self, adversaire, recompenser) self.cpt_mort = 0