def executerAction(self, action, ibdd):
     ''' Execute l'action, avec la base de donnée ibdd '''
     import joueurs
     j = joueurs.JoueurPossible(self.num, ibdd)
     func = getattr(Jeu, action.func)
     if func.peut_etre_appelee:
         return Jeu.func(j,*action.params)
     return False
 def helper(*args, **kwargs):
     import joueurs
     j = joueurs.JoueurPossible(args[0].num)
     if not j.doit_defausser_general():
         f(*args, **kwargs)
         return True
     else:
         raise ActionNightError(ActionNightError.DOIT_DEFAUSSER)
예제 #3
0
 def en_position_echange(self, bdd=REDIS):
     ''' Vérifie que le bateau est sur un emplacement où il peut échanger avec une terre : un port ou une colonie cotière'''
     import joueurs
     i1 = self.position.int1
     i2 = self.position.int2
     col1 = Colonie.getColonie(i1, bdd)
     col2 = Colonie.getColonie(i2, bdd)
     j = joueurs.JoueurPossible(self.joueur, bdd)
     return ((col1 != 0 and col1.joueur == self.joueur) or
             (col2 != 0 and col2.joueur == self.joueur) or i1.isPort()
             or i2.isPort()) and j.aColoniseTerre(self.position.getTerre())