Exemplo n.º 1
0
    def start_or_resume(self, opp, rounds=settings.BATTLE_ROUNDS):
        self.battle = BattleModel.objects.get_by_user(
            user=self.engine.user.user, rounds=rounds)
        if self.battle is not None:
            return self.battle

        self.cards_per_battle = int(rounds)
        if self.engine.user.profile.energy < settings.ENERGY['new_battle']:
            return "Not enough energy. Wait until you have at least %d energy points or <span style='font-size: 13px'><a href='%s'>fill it</a> right away</span>" % (
                settings.ENERGY['new_battle'], reverse('store'))

        battle = BattleModel()
        battle.rounds = self.cards_per_battle

        if int(rounds) == 1:
            battle.new_session(self.engine.user.user, opp,
                               [random.choice(self.get_player()['drawed'])],
                               [random.choice(self.get_player(opp)['drawed'])])
        elif int(rounds) == 3:
            battle.new_session(self.engine.user.user, opp,
                               self.get_player()['drawed'],
                               self.get_player(opp)['drawed'])
        else:
            logging.critical("Unknown rounds no. %d" % int(rounds))

        self.engine.user.profile.energy -= settings.ENERGY['new_battle']
        self.engine.user.profile.save()

        self.battle = battle
        return battle
Exemplo n.º 2
0
    def start_or_resume(self, opp, rounds=settings.BATTLE_ROUNDS):
        self.battle = BattleModel.objects.get_by_user(user=self.engine.user.user, rounds=rounds)
        if self.battle is not None:
            return self.battle

        self.cards_per_battle = int(rounds)
        if self.engine.user.profile.energy < settings.ENERGY["new_battle"]:
            return (
                "Not enough energy. Wait until you have at least %d energy points or <span style='font-size: 13px'><a href='%s'>fill it</a> right away</span>"
                % (settings.ENERGY["new_battle"], reverse("store"))
            )

        battle = BattleModel()
        battle.rounds = self.cards_per_battle

        if int(rounds) == 1:
            battle.new_session(
                self.engine.user.user,
                opp,
                [random.choice(self.get_player()["drawed"])],
                [random.choice(self.get_player(opp)["drawed"])],
            )
        elif int(rounds) == 3:
            battle.new_session(self.engine.user.user, opp, self.get_player()["drawed"], self.get_player(opp)["drawed"])
        else:
            logging.critical("Unknown rounds no. %d" % int(rounds))

        self.engine.user.profile.energy -= settings.ENERGY["new_battle"]
        self.engine.user.profile.save()

        self.battle = battle
        return battle