您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Autobuys 20 random lottery ticket links on neopets
- // ==UserScript==
- // @name Neopets Lottery Autobuyer
- // @namespace shiftasterisk
- // @version 0.4
- // @description Autobuys 20 random lottery ticket links on neopets
- // @author shiftasterisk
- // @match http://www.neopets.com/games/lottery.phtml
- // @include https://code.jquery.com/jquery-3.1.1.min.js
- // @grant none
- // ==/UserScript==
- $('input[type="submit"][value="Buy a Lottery Ticket!"]').parent().append("<input id='buyTwenty' type='button' value='Buy 20 Quick Picks'>");
- $('input[type="submit"][value="Buy a Lottery Ticket!"]').parent().parent().parent().append("<div id='linkContainer'></div>");
- var numberOfTickets = 20;
- var tickets = [];
- $('#buyTwenty').click(function() {
- alert("Auto buying tickets, just wait for the page to refresh (about 20 seconds)");
- tickets = [];
- $("#linkContainer").empty();
- selectTickets();
- buyTickets();
- });
- function buyTickets() {
- for (x = 0; x < tickets.length; x++) {
- url = 'http://www.neopets.com/games/process_lottery.phtml?one=' + tickets[x][0] + '&two=' + tickets[x][1] + '&three=' + tickets[x][2] + '&four=' + tickets[x][3] + '&five=' + tickets[x][4] + '&six=' + tickets[x][5];
- $(document).queue('tickets', createTicket(url));
- }
- $(document).queue('tickets', function() {
- console.log("finished buying tickets");
- location.reload();
- });
- $(document).dequeue('tickets');
- }
- function createTicket(ticket) {
- return function(next) {
- buyTicket(ticket, next);
- };
- }
- function buyTicket(ticket, next) {
- setTimeout(function() {
- $.ajax({
- url: ticket,
- async: false,
- success: function(result) {
- console.log("bought ticket");
- }
- });
- next();
- }, 1000);
- }
- function selectTickets() {
- var ticketsAdded = 0;
- while (ticketsAdded < numberOfTickets) {
- currentTicket = [];
- for (y = 0; y < 6; y++) {
- currentTicket = addNumberToTicket(currentTicket);
- }
- if (!isDuplicateTicket(currentTicket)) {
- tickets.push(currentTicket);
- ticketsAdded++;
- console.log("totalTickets - " + ticketsAdded);
- } else {
- currentTicket = [];
- }
- }
- }
- function addNumberToTicket(currentTicket) {
- var lotteryNumber = Math.round(Math.random() * 29) + 1;
- console.log(currentTicket);
- console.log(lotteryNumber);
- if (currentTicket.includes(lotteryNumber)) {
- console.log("duplicate number - going in again");
- currentTicket = addNumberToTicket(currentTicket);
- } else {
- currentTicket.push(lotteryNumber);
- }
- return currentTicket;
- }
- function isDuplicateTicket(currentTicket) {
- for (x = 0; x < tickets.length; x++) {
- if (JSON.stringify(currentTicket.sort()) === JSON.stringify(tickets[x].sort())) {
- console.log("duplicate ticket");
- return true;
- }
- }
- return false;
- }