#from __future__ import unicode_literals # -*- coding: utf-8 -*- from __future__ import division import os from PyQt4.QtCore import * from PyQt4.QtGui import * from Pion import Pion from Forme import Forme from outilsSvg import * import regles class Combattant(Pion): """combattant sur un plateau de combat""" def __init__(self, parent=None): super(Combattant, self).__init__() #caracs self.id = None self.taille = 2 self.depMarche = regles.valeurDefaut("depMarche") self.depNage = regles.valeurDefaut("depNage") self.depEscalade = regles.valeurDefaut("depEscalade") self.depVol = regles.valeurDefaut("depVol") self.saut = regles.valeurDefaut("saut") self.attaques = [] #liste des attaques pre-parametrees du pion self.listeAttributs = regles.listeAttributs() self.inventaire = {} self.details = {} self.notes = "" #caracs liees au combat: self.etat = "" self.deplacementRestant = 0 def listeAttributs(self): return self.listeAttributs def listeAttaques(self): return self.attaques def ajouterAuPlateau(self, plateau): self.plateau = plateau super(Combattant, self).ajouterAuPlateau(self.plateau) self.majEtiquette() def hoverEnterEvent(self, event): """evenement lors du survol de la souris (en entree)""" if (self.plateau.pionSelectionne() == None and self.plateau.modeActif == "standard") or self.plateau.modeActif == "pionSupprimer": self.surbrillance(True, 0.4) self.plateau.combattantSurvol(self.numero) event.ignore() def hoverLeaveEvent(self, event): """evenement lors du survol de la souris (en entree)""" self.surbrillance(False) self.plateau.combattantSurvol(None) def mousePressEvent(self, event): """evenement lors du clic souris""" super(Pion, self).mousePressEvent(event) if event.button() == 1: #sur clic gauche accepte = self.plateau.pionClique(self.numero) if accepte: event.accept() else: event.ignore() def mouseDoubleClickEvent(self, event): """evenement lors du clic souris""" super(Pion, self).mouseDoubleClickEvent(event) if event.button() == 1: #sur clic gauche accepte = self.plateau.pionDoubleClic(self.numero) if accepte: event.accept() else: event.ignore()