refactoring for player entities