您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Mousehunt data collection tool for avilible labyrinth doors
当前为
- // ==UserScript==
- // @name MH: Labyrinth Door Data Collector
- // @author Warden Slayer - Warden Slayer#2302
- // @namespace https://greasyfork.org/en/users/227259-wardenslayer
- // @version 1.0.9
- // @description Mousehunt data collection tool for avilible labyrinth doors
- // @include https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js
- // @include http://www.mousehuntgame.com/*
- // @include https://www.mousehuntgame.com/*
- // @grant GM_setClipboard
- // ==/UserScript==
- $(document).ready(function() {
- buildCopyButton();
- });
- function buildCopyButton() {
- if ($(".copyButtonContainer").length > 0) return;
- var copyButtonContainer = document.createElement("div");
- copyButtonContainer.classList.add("copyButtonContainer");
- var hudLocation = $(".hudLocationContent.labyrinth");
- //Copy Button
- var copyButton = document.createElement("button");
- copyButton.id = "copyButton";
- copyButton.innerText = "Copy to Clipboard";
- copyButton.addEventListener("click", copyData);
- copyButtonContainer.appendChild(copyButton);
- hudLocation.after(copyButtonContainer);
- $(".copyButtonContainer").css({
- float: "right"
- });
- }
- function copyData() {
- var lastStep = $(".labyrinthHUD-hallway-padding").children().last();
- if ($(lastStep).hasClass("labyrinthHUD-hallway-tile active") || $(lastStep).hasClass("labyrinthHUD-hallway-tile locked")) {
- return;
- } else {
- var fealtyClues = $(".labyrinthHUD-clueDrawer-clue.y").find(".labyrinthHUD-clueDrawer-quantity").text();
- var techClues = $(".labyrinthHUD-clueDrawer-clue.h").find(".labyrinthHUD-clueDrawer-quantity").text();
- var scholarClues = $(".labyrinthHUD-clueDrawer-clue.s").find(".labyrinthHUD-clueDrawer-quantity").text();
- var treasureClues = $(".labyrinthHUD-clueDrawer-clue.t").find(".labyrinthHUD-clueDrawer-quantity").text();
- var farmingClues = $(".labyrinthHUD-clueDrawer-clue.f").find(".labyrinthHUD-clueDrawer-quantity").text();
- var deadEndClues = $(".labyrinthHUD-clueDrawer-clue.m").find(".labyrinthHUD-clueDrawer-quantity").text();
- var allDoors = $(".labyrinthHUD-doorContainer").children();
- //Add flag to denote shuffling
- var journalText = $(".journaltext");
- var journalArray = journalText.toArray(0);
- var shuffleFlag = parseJournal(journalArray);
- //Parse Doors
- var doorOne = $(allDoors).first();
- var doorThree = $(allDoors).last();
- var doorTwo = $(allDoors).not(doorOne).not(doorThree);
- var doorOneData = parseDoor(doorOne)
- var doorOneObj = new doorOption(doorOneData.doorLength,doorOneData.doorQuality,doorOneData.doorType);
- var doorTwoData = parseDoor(doorTwo)
- var doorTwoObj = new doorOption(doorTwoData.doorLength,doorTwoData.doorQuality,doorTwoData.doorType);
- var doorThreeData = parseDoor(doorThree)
- var doorThreeObj = new doorOption(doorThreeData .doorLength,doorThreeData.doorQuality,doorThreeData.doorType);
- var resultsArray = [fealtyClues,
- techClues,
- scholarClues,
- treasureClues,
- farmingClues,
- deadEndClues,
- doorOneObj.length,
- doorOneObj.quality,
- doorOneObj.type,
- doorTwoObj.length,
- doorTwoObj.quality,
- doorTwoObj.type,
- doorThreeObj.length,
- doorThreeObj.quality,
- doorThreeObj.type,
- shuffleFlag
- ];
- let results = resultsArray.join()
- console.log(results)
- GM_setClipboard(results)
- }
- }
- function parseDoor(door) {
- var doorString = door.find(".labyrinthHUD-door-name-padding").text();
- var doorArray = doorString.split(/\s+/);
- var doorLength = doorArray[0];
- var doorQuality = doorArray[1];
- var doorType = doorArray[2];
- //shorten door length
- if (doorLength == "Long") {
- doorLength = "L";
- } else if (doorLength == "Medium") {
- doorLength = "M";
- } else {
- doorLength = "S";
- }
- //shorten door quality
- if (doorQuality == "Epic") {
- doorQuality = "E";
- } else if (doorQuality == "Superior") {
- doorQuality = "S";
- } else {
- doorQuality = "P";
- }
- //shorten door type
- if (doorType == "Fealty") {
- doorType = "Y";
- } else if (doorType == "Tech") {
- doorType = "H";
- } else if (doorType == "Scholar") {
- doorType = "S";
- } else if (doorType == "Treasury") {
- doorType = "T";
- } else if (doorType == "Farming") {
- doorType = "F";
- } else {
- doorType = "M";
- }
- return {doorLength,doorQuality,doorType}
- }
- function parseJournal(array){
- var shuffleFlag = 0;
- array.forEach(function(elements) {
- var text = $(elements).text();
- if (text.includes("grinding whirr")) {
- shuffleFlag = 1;
- } else {
- }
- })
- return shuffleFlag;
- }
- function doorOption(length, quality, type) {
- this.length = length;
- this.quality = quality;
- this.type = type;
- }