player: updated constructor