Refactored player's update method