您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Transfer your collection to Gwentify
当前为
- // ==UserScript==
- // @name Gwent Tracker to Gwentify Collection
- // @version 0.2
- // @description Transfer your collection to Gwentify
- // @author spokomaciek
- // @match http://www.gwent-tracker.com/*
- // @match http://gwentify.com/collection-manager/
- // @grant GM_getValue
- // @grant GM_setValue
- // @require http://code.jquery.com/jquery-1.12.4.min.js
- // @require https://greasyfork.org/scripts/2199-waitforkeyelements/code/waitForKeyElements.js?version=6349
- // @namespace https://greasyfork.org/users/133522
- // ==/UserScript==
- (function() {
- 'use strict';
- function addslashes( str ) {
- return (str + '').replace(/[\\"']/g, '\\$&').replace(/\u0000/g, '\\0');
- }
- function addCollection() {
- if (GM_getValue('transfer') == 'true') {
- console.log('Adding to collection');
- var cards = JSON.parse(GM_getValue('cards', '{}'));
- GM_setValue('transfer', 'false');
- var cardsD = {};
- cards.forEach(function(val) {
- if (cardsD[val] === undefined) {
- cardsD[val] = 1;
- }
- else {
- cardsD[val] += 1;
- }
- });
- console.log(JSON.stringify(cardsD));
- for (var key in cardsD) {
- var card = $("div[data-name=\'" + addslashes(key) + "\' i]");
- if (card.attr('data-ownership') === 'owned') {
- var amnt = Number($("div[data-name=\'" + addslashes(key) + "\' i][data-ownership='owned'] .cm-card-ct").text());
- if (amnt <= cardsD[key]) {
- for (var i = 0; i < cardsD[key] - amnt; ++i) {
- card.click();
- }
- }
- else {
- for (var i = 0; i < amnt - cardsD[key]; ++i) {
- var element = document.querySelector("div[data-name=\'" + addslashes(key) + "\']");
- element.dispatchEvent(new CustomEvent('contextmenu'));
- }
- }
- }
- else {
- for (var i = 0; i < cardsD[key]; ++i) {
- card.click();
- }
- }
- }
- }
- }
- function transfer() {
- console.log("Bookmarklet starting");
- var cards = $(".name").text().split('\n').map(function(u) {return u.trim().toUpperCase();}).filter(function(u) {return u !== "";});
- GM_setValue('transfer', 'true');
- GM_setValue('cards', JSON.stringify(cards));
- window.location.assign("http://gwentify.com/collection-manager/");
- }
- if (location.href.match(/gwent-tracker/)) {
- $('body').append('<input type="button" value="Transfer collection" id="transferBtn">');
- $("#transferBtn").css("position", "fixed").css("top", 0).css("left", 0);
- $('#transferBtn').click(function() {
- transfer();
- });
- }
- else {
- waitForKeyElements(".db-card", addCollection);
- }
- })();