Recreated player.js