Working on the player with composition instead of inheritance