::GOG Links::

Adds links for GOG store to gameplay videos without youtubers comments and direct search on Gog-games for free clean download.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         ::GOG Links::
// @namespace    masterofobzene
// @author       masterofobzene
// @version      1.9
// @description  Adds links for GOG store to gameplay videos without youtubers comments and direct search on Gog-games for free clean download.
// @require      https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js
// @match        *://www.gog.com/*/game/*
// @homepage     https://github.com/masterofobzene/UserScriptRepo
// @icon         https://www.gog.com/favicon.ico
// @run-at       document-end
// @grant        none
// @license      GNU GPLv3
// ==/UserScript==

var pirateLinks = [
    {
        url: "https://gog-games.to/?search=",
        urlSpecial: "",
        title: "Search on GoG-Games"
    },
    {
        url: "https://www.youtube.com/results?search_query=",
        urlSpecial: " gameplay no commentary",
        title: "Gameplay Video"
    }
];

var storePages = [
    {
        // Matches any two-letter language code in the URL
        url: /^https:\/\/www\.gog\.com\/[a-z]{2}\/game\//,
        title: "GOG"
    }
];

var storePageResult = "";

storePages.forEach((e) => {
    if (e.url.test(document.URL)) {
        storePageResult = e.title;
    }
});

console.log("Domain Match: ", storePageResult);

var appName = "";

switch (storePageResult) {
    case "GOG":
        appName = document.getElementsByClassName("productcard-basics__title")[0].textContent;
        pirateLinks.forEach((e) => {
            $("button.cart-button")[0].parentElement.parentElement.append(
                rigGOG(e.url + encodeURIComponent(appName) + e.urlSpecial, e.title)
            );
        });
        break;
}

function rigGOG(href, innerHTML) {
    let element = document.createElement("a");
    element.target = "_blank";
    element.style = "margin: 5px 0 5px 0 !important; padding: 5px 10px 5px 10px;";
    element.classList.add("button", "button--big", "cart-button", "ng-scope");
    element.href = href;
    element.innerHTML = innerHTML;
    return element;
}