Exemple #1
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            signal_msg = ugettext_noop("downgraded to level {level}")
            signals.addActivity.send(
                sender=None,
                user_from=player,
                user_to=player,
                message=signal_msg,
                arguments=dict(level=level),
                game=game,
            )
        else:
            amount = calculate("level-gold", level=level)
            signal_msg = ugettext_noop("upgraded to level {level} and received {amount} gold")
            score(player, None, "level-gold", level=level)
            signals.addActivity.send(
                sender=None,
                user_from=player,
                user_to=player,
                message=signal_msg,
                arguments=dict(level=level, amount=amount["gold"]),
                game=None,
            )
        player.level_no = level
        player.save()
Exemple #2
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)

    if level == player.level_no:
        return

	arguments = dict(level=level)
    if level < player.level_no:
        action_msg = 'level-downgrade'
        signal_msg = ugettext_noop("downgraded to level {level}")
		this_game = game
	else:
        action_msg = 'level-upgrade'
        # Check if the user has previously reached this level
        if level > player.max_level:
            # Update the maximum reached level
            player.max_level = level
            # Offer the corresponding amount of gold
            score(player, None, 'level-gold', external_id=level, level=level)

            signal_msg = ugettext_noop("upgraded to level {level} and received {amount} gold")
            amount = calculate('level-gold', level=level).get('gold', 0)
            arguments['amount'] = amount
        else:
            # The user should not receive additional gold
            signal_msg = ugettext_noop("upgraded back to level {level}")
		this_game = None

	signals.addActivity.send(sender=None, user_from=player,
                            user_to=player, message=signal_msg,
                            arguments=dict(level=level),
                            game=game, action=action_msg)
Exemple #3
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            amount = calculate('level-gold', level=player.level_no).get('gold', 0)
            action_msg = 'gold-lost'
            signal_msg = ugettext_noop("downgraded to level {level} and lost {amount} gold")
            rollback(player, None, 'level-gold', external_id=player.level_no)
            signals.addActivity.send(sender=None, user_from=player,
                                user_to=player, message=signal_msg,
                                arguments=dict(level=level, amount=amount),
                                game=game, action=action_msg)
        else:

            amount = calculate('level-gold', level=level)
            # Check if the user has previously reached this level
            if level > player.max_level:
                # Update the maximum reached level
                player.max_level = level
                # Offer the corresponding amount of gold
                score(player, None, 'level-gold', external_id=level, level=level)
            else:
                # The user should not receive additional gold
                amount['gold'] = 0
            signal_msg = ugettext_noop("upgraded to level {level} and received {amount} gold")
            action_msg = 'gold-won'
            signals.addActivity.send(sender=None, user_from=player,
                    user_to=player, message=signal_msg,
                                arguments=dict(level=level, amount=amount['gold']),
                                game=None, action=action_msg)
        player.level_no = level
        player.save()
Exemple #4
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            amount = calculate('level-gold',
                               level=player.level_no).get('gold', 0)
            action_msg = 'gold-lost'
            signal_msg = ugettext_noop(
                "downgraded to level {level} and lost {amount} gold")
            rollback(player, None, 'level-gold', external_id=player.level_no)
            signals.addActivity.send(sender=None,
                                     user_from=player,
                                     user_to=player,
                                     message=signal_msg,
                                     arguments=dict(level=level,
                                                    amount=amount),
                                     game=game,
                                     action=action_msg)
        else:

            amount = calculate('level-gold', level=level)
            signal_msg = ugettext_noop(
                "upgraded to level {level} and received {amount} gold")
            action_msg = 'gold-won'
            score(player, None, 'level-gold', external_id=level, level=level)
            signals.addActivity.send(sender=None,
                                     user_from=player,
                                     user_to=player,
                                     message=signal_msg,
                                     arguments=dict(level=level,
                                                    amount=amount['gold']),
                                     game=None,
                                     action=action_msg)
        player.level_no = level
        player.save()
Exemple #5
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            signal_msg = ugettext_noop("downgraded to level {level}")
            signals.addActivity.send(sender=None,
                                     user_from=player,
                                     user_to=player,
                                     message=signal_msg,
                                     arguments=dict(level=level),
                                     game=game)
        else:
            amount = calculate('level-gold', level=level)
            signal_msg = ugettext_noop(
                "upgraded to level {level} and received {amount} gold")
            score(player, None, 'level-gold', level=level)
            signals.addActivity.send(sender=None,
                                     user_from=player,
                                     user_to=player,
                                     message=signal_msg,
                                     arguments=dict(level=level,
                                                    amount=amount['gold']),
                                     game=None)
        player.level_no = level
        player.save()
Exemple #6
0
def sync_user(player):
    """ Synchronise user points with database
    """
    coin = Coin.get('points')
    points = real_points(player) 
    if player.points != points and not player.magic.has_modifier('top-disguise'):
        logging.debug('%s had %d instead of %d points' % (player, player.points, points))
        player.points = points
        player.level_no = God.get_level_for_points(player.points)
        player.save()
Exemple #7
0
def sync_user(player):
    """ Synchronise user points with database
    """
    coin = Coin.get("points")
    result = History.objects.filter(user=player.user, coin=coin).aggregate(total=models.Sum("amount"))
    points = result["total"] if result["total"] is not None else 0
    if player.points != points and not player.magic.has_modifier("top-disguise"):
        logging.debug("%s had %d instead of %d points" % (player, player.points, points))
        player.points = points
        player.level_no = God.get_level_for_points(player.points)
        player.save()
Exemple #8
0
def sync_user(player):
    """ Synchronise user points with database
    """
    coin = Coin.get('points')
    result = History.objects.filter(user=player.user,coin=coin).aggregate(total=models.Sum('amount'))
    points = result['total'] if result['total'] is not None else 0
    if player.points != points:
        logging.debug('%s had %d instead of %d points' % (player, player.points, points))
        player.points = points
        player.level_no = God.get_level_for_points(player.points)
        player.save()
Exemple #9
0
def sync_user(player):
    """ Synchronise user points with database
    """
    coin = Coin.get('points')
    result = History.objects.filter(
        user=player.user, coin=coin).aggregate(total=models.Sum('amount'))
    points = result['total'] if result['total'] is not None else 0
    if player.points != points:
        logging.debug('%s had %d instead of %d points' %
                      (player, player.points, points))
        player.points = points
        player.level_no = God.get_level_for_points(player.points)
        player.save()
Exemple #10
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            signal_msg = ugettext_noop("downgraded to level {level}")
        else:
            signal_msg = ugettext_noop("upgraded to level {level}")

        signals.addActivity.send(sender=None, user_from=player,
                             user_to=player, message=signal_msg,
                             arguments=dict(level=level),
                             game=game)
        player.level_no = level
        player.save()
Exemple #11
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            signal_msg = ugettext_noop("downgraded to level {level}")
        else:
            signal_msg = ugettext_noop("upgraded to level {level}")

        signals.addActivity.send(sender=None,
                                 user_from=player,
                                 user_to=player,
                                 message=signal_msg,
                                 arguments=dict(level=level),
                                 game=game)
        player.level_no = level
        player.save()
Exemple #12
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            amount = calculate('level-gold',
                               level=player.level_no).get('gold', 0)
            action_msg = 'gold-lost'
            signal_msg = ugettext_noop(
                "downgraded to level {level} and lost {amount} gold")
            rollback(player, None, 'level-gold', external_id=player.level_no)
            signals.addActivity.send(sender=None,
                                     user_from=player,
                                     user_to=player,
                                     message=signal_msg,
                                     arguments=dict(level=level,
                                                    amount=amount),
                                     game=game,
                                     action=action_msg)
        else:

            amount = calculate('level-gold', level=level)
            # Check if the user has previously reached this level
            if level > player.max_level:
                # Update the maximum reached level
                player.max_level = level
                # Offer the corresponding amount of gold
                score(player,
                      None,
                      'level-gold',
                      external_id=level,
                      level=level)
            else:
                # The user should not receive additional gold
                amount['gold'] = 0
            signal_msg = ugettext_noop(
                "upgraded to level {level} and received {amount} gold")
            action_msg = 'gold-won'
            signals.addActivity.send(sender=None,
                                     user_from=player,
                                     user_to=player,
                                     message=signal_msg,
                                     arguments=dict(level=level,
                                                    amount=amount['gold']),
                                     game=None,
                                     action=action_msg)
        player.level_no = level
        player.save()
Exemple #13
0
def update_points(player, game):
    level = God.get_level_for_points(player.points)
    if level != player.level_no:
        if level < player.level_no:
            amount = calculate('level-gold', level=player.level_no).get('gold', 0)
            action_msg = 'gold-lost'
            signal_msg = ugettext_noop("downgraded to level {level} and lost {amount} gold")
            rollback(player, None, 'level-gold', external_id=player.level_no)
            signals.addActivity.send(sender=None, user_from=player,
                                user_to=player, message=signal_msg,
                                arguments=dict(level=level, amount=amount),
                                game=game, action=action_msg)
        else:

            amount = calculate('level-gold', level=level)
            signal_msg = ugettext_noop("upgraded to level {level} and received {amount} gold")
            action_msg = 'gold-won'
            score(player, None, 'level-gold', external_id=level, level=level)
            signals.addActivity.send(sender=None, user_from=player,
                    user_to=player, message=signal_msg,
                                arguments=dict(level=level, amount=amount['gold']),
                                game=None, action=action_msg)
        player.level_no = level
        player.save()