您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Beta version of a fishing reward logging script. Features coming soon: Webhooks!
当前为
// ==UserScript== // @name !!GC - Fishing Logger // @namespace Grundo's Cafe // @match https://www.grundos.cafe/water/fishing/ // @grant none // @version .2 // @license MIT // @author Cupkait // @description Beta version of a fishing reward logging script. Features coming soon: Webhooks! // ==/UserScript== //Last updated: December 21, 2023 const getPetLevelsAsync = fetch("/quickref/") .then(response => { if (!response.ok) { throw new Error(`Network response was not ok: ${response.statusText}`); } // Do nothing. }) .then(html => { const tempElement = document.createElement('div'); tempElement.innerHTML = html; const petList = tempElement.querySelector('#quickref_petlist').children; const petArray = {}; $(petList).each(function () { const petrefName = $(this).find('a').eq(0).attr('href').match(/_name=(.*?)$/)[1]; const petFishingLevel = $(this).find('span').eq(12).text().match(/Fishing : (.*?)$/)[1]; petArray[petrefName] = petFishingLevel; }); return petArray; }) .catch(error => { //Do Nothing }); getPetLevelsAsync.then(petLevels => { const fishContent = document.querySelector('div#page_content > main'); const welcomeText = fishContent.children[1].innerText; const patientText = fishContent.children[2].innerText; const petCount = document.querySelectorAll('main > div > div'); const petName = document.querySelector('div#userinfo > a').href; if (welcomeText.startsWith('Welcome to the') || patientText.startsWith('Nothing!')) { console.log("Nothing to log here... it looks like no one went fishing."); } else { if (petCount.length === 0) { // One Pet const content = $("#page_content"); const userInfo = $("#userinfo"); const petName = userInfo.find("a").eq(2).text(); const userName = /user=(.*?)"/g.exec(document.body.innerHTML)[1]; const coolDown = content.find("strong").eq(0).text(); const itemName = fishContent.querySelector("img").alt; const itemImage = fishContent.querySelector("strong").text; let petLevel = ' '; // Default value const levelUp = content.find("p").eq(2).text().match(/to (.*?)!/)[1]; try { if (!isNaN(levelUp)) { // If levelUp is a number, subtract 1 to get petLevel petLevel = parseInt(levelUp, 10) - 1; } } catch (error) { petLevel = petLevels[petName]; } const logResponse = `https://docs.google.com/forms/d/e/1FAIpQLSdBhJS1NSxHCmy32BqH0DEdQRJci1IVPOWUFcaothsiZjXu-w/formResponse?usp=pp_url&entry.886049257=${userName}&entry.343654154=${petName}&entry.1922136733=${petLevel}&entry.693447328=${levelUp}&entry.881968876=${itemName}&entry.303510013=${coolDown}`; fetch(logResponse); } else { $(".flex.center-items.big-gap").each(function () { const petName = $(this).find("strong").eq(0).text(); const userName = /user=(.*?)"/g.exec(document.body.innerHTML)[1]; const coolDown = $(this).find("strong").eq(1).text(); const petImage = $(this).find("img").eq(0).attr("src"); const itemImage = $(this).find("img").eq(1).attr("src"); const itemName = $(this).find("p").eq(0).text().match(/ a (.*?)!/)[1]; let petLevel = ' '; // Default value const levelUp = $(this).find("p").eq(1).text().match(/to (.*?)!/)[1]; try { if (!isNaN(levelUp)) { // If levelUp is a number, subtract 1 to get petLevel petLevel = parseInt(levelUp, 10) - 1; } } catch (error) { petLevel = petLevels[petName]; } const logResponse = `https://docs.google.com/forms/d/e/1FAIpQLSdBhJS1NSxHCmy32BqH0DEdQRJci1IVPOWUFcaothsiZjXu-w/formResponse?usp=pp_url&entry.886049257=${userName}&entry.343654154=${petName}&entry.1922136733=${petLevel}&entry.693447328=${levelUp}&entry.881968876=${itemName}&entry.303510013=${coolDown}`; fetch(logResponse); }); } } });