Quest Table - Kappa Mod

Adds a column to quest tables that show whether task is Kappa or not

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         Quest Table - Kappa Mod
// @namespace    quest-eft-gamepedia
// @version      0.21
// @description  Adds a column to quest tables that show whether task is Kappa or not
// @author       PlatinumLyfe
// @match        https://escapefromtarkov.gamepedia.com/Quests
// @match        https://escapefromtarkov.fandom.com/wiki/Quests
// @grant        GM_addStyle
// @grant        GM_addElement
// @grant        GM_xmlhttpRequest
// @grant        none
// @require      https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js
// ==/UserScript==

(function() {
    // We find the quests tables on the Quests page (there is one table for each trader)
    $('.mw-parser-output .wikitable').each(function(idx, itm) { 
        // In each Table we:

        // Add a column heading for Kappa AFTER Quest
        $(itm).find('tr:nth-child(2) th:first-child').after('<th>Kappa</th>');

        // Find each row in the table ('tr' aka tablerow element)
        $(itm).find('tr').each(function (idxi, tr) {

            // Find each table header cell in the tablerow
            $(tr).find('th').each(function(id, th) {
                var thx = $(th);

                if (!thx.attr('colspan')) {
                    // If this isn't a cell that has a column span
                    thx.find('a').each(function(i, a) {
                        // Find each hyperlink (so we can get the subpages off the wiki)
                        window.jQuery.get($(a).attr('href')).then(function (data) {
                            // Load the sub-pages for each task and find the table on the right that has whether it is kappa or not
                            thx.after($('<td>' + $(data).find('.mw-parser-output .va-infobox-group:nth-child(3) tr:last-child .va-infobox-content').html() + '</td>'));
                            // We insert it into the table
                        });
                    });
                } else if (thx.attr('colspan') == 10) {
                    // If this is the big column span cell that says things like "Prapor's quests", "Therapists Quests", etc.
                    // We need to make it go one bigger to accomodate the added Kappa cells
                    thx.attr('colspan', '11');
                }
            });
        });
    });
})();