changed player class to implement interface