Ok, reduced number of current_character.calculate() without the logic error