def try_launch(self, c, tl, skills=[]): p = self.ilet.actor act = ActionStageLaunchCard(p, tl, c) if act.can_fire(): self.ilet.set_result(skills=skills, cards=[c], players=tl) return True return False
def apply_action(self): src, tgt = self.source, self.target g = Game.getgame() pl = [p for p in g.players if not p.dead and p is not src] p, rst = ask_for_action(self, pl, ('cards', 'showncards'), [], timeout=6) if not p: ttags(src)['assisted_attack_disable'] = True return False (c, ), _ = rst g.process_action( ActionStageLaunchCard(src, [tgt], AssistedAttackCard.wrap([c], src))) return True
def is_valid(self): src, tgt = self.source, self.target act = ActionStageLaunchCard(src, [tgt], AttackCard()) disabled = ttags(src)['assisted_attack_disable'] return not disabled and act.can_fire()