def run_func(self, qui, func, *args, **kwargs): """ Lance la fonction func avec les paramètres données chez les participants concernés """ logger.info(u"run_func: {}".format(func)) if not type(qui) is list: raise ValueError(le2mtrans(u"The arg must be of type list")) yield (utiltwisted.forAll(qui, func, *args, **kwargs))
def add_offer(self, player_id, offer_info): offer = ADGroupOffer(player_id, offer_info, ( datetime.now() - self.current_period.start_time).total_seconds()) self.le2msrv.gestionnaire_base.ajouter(offer) self.current_period.AD_offers.append(offer) self.le2msrv.gestionnaire_graphique.infoclt( "{} - {}".format(self, offer)) yield (forAll(self.get_players(), "inform_player_about_offer", offer.to_dict()))
def remote_send_message(self, message): logger.debug(u"{} send_message {}".format(self.joueur, message)) self._tcserver.onglet_messages.add(u"{}: {}".format(self.joueur, message)) self.events.append( EventsTC( self._currentsequence, self.currentperiod.TC_period, pms.EVENT_MESSAGE, message=message, messagetype=pms.MSG_ENVOYE, ) ) yield (twu.forAll(self.othergroupmembers, "display_message", self, message))
def add_transaction(self, transaction_info, offer_1, offer_2): transaction = ADGroupTransaction(transaction_info, ( datetime.now() - self.current_period.start_time).total_seconds()) self.le2msrv.gestionnaire_base.ajouter(transaction) self.current_period.AD_transactions.append(transaction) self.le2msrv.gestionnaire_graphique.infoclt( "{} - {}".format(self, transaction)) yield ( forAll(self.get_players(), "inform_player_about_transaction", transaction.to_dict())) yield self.remove_offer(offer_1) yield self.remove_offer(offer_2) logger.debug("add_transaction: {}".format(transaction))
def run_step(self, step_name, step_participants, step_function, *args, **kwargs): """ Lance l'étape donnée, cad: - affiche le nom de l'étape sur la liste client - lance la fonction step_function avec les paramètres donnés chez les participants concernés - affiche la fin d'étape sur la liste serveur """ logger.info(u"run_step: {}".format(step_name)) self._le2msrv.gestionnaire_graphique.infoclt(step_name.upper(), fg="gray") self._le2msrv.gestionnaire_graphique.set_waitmode(step_participants) yield (utiltwisted.forAll(step_participants, step_function, *args, **kwargs)) self._le2msrv.gestionnaire_graphique.infoserv(u"Ok {}".format(step_name), fg="green") self._le2msrv.gestionnaire_base.enregistrer()
def run_step(self, step_name, step_participants, step_function, *args, **kwargs): """ Lance l'étape donnée, cad: - affiche le nom de l'étape sur la liste client - lance la fonction step_function avec les paramètres donnés chez les participants concernés - affiche la fin d'étape sur la liste serveur """ logger.info(u"run_step: {}".format(step_name)) self._le2msrv.gestionnaire_graphique. \ infoclt(step_name.upper(), fg="gray") self._le2msrv.gestionnaire_graphique.set_waitmode(step_participants) yield (utiltwisted.forAll(step_participants, step_function, *args, **kwargs)) self._le2msrv.gestionnaire_graphique. \ infoserv(u"Ok {}".format(step_name), fg="green") self._le2msrv.gestionnaire_base.enregistrer()
def remove_offer(self, offer): yield (forAll(self.get_players(), "inform_player_about_offer_removal", offer))