Steam Game Search Links

Добавляет ссылки для поиска по трекерам в Steam

  1. // ==UserScript==
  2. // @name Steam Game Search Links
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.0
  5. // @description Добавляет ссылки для поиска по трекерам в Steam
  6. // @author MrYogurt & LeMaxime
  7. // @match https://store.steampowered.com/*
  8. // @grant GM_addStyle
  9. // @license MIT
  10. // ==/UserScript==
  11.  
  12. (function () {
  13. "use strict";
  14.  
  15. const buttonsContainer = document.createElement("div");
  16. buttonsContainer.style.display = "flex";
  17. buttonsContainer.style.alignItems = "center";
  18. buttonsContainer.style.flexWrap = "wrap";
  19. buttonsContainer.style.width = "100%";
  20. buttonsContainer.style.minHeight = "36px";
  21. buttonsContainer.style.padding = "8px 0px 8px 0px";
  22.  
  23. const gameNameElement = document.getElementById("appHubAppName");
  24.  
  25. if (gameNameElement) gameNameElement.appendChild(buttonsContainer);
  26.  
  27. function createButton(searchLink, buttonText, tooltipText, iconPath) {
  28. const linkButton = document.createElement("a");
  29. linkButton.href = searchLink;
  30. linkButton.setAttribute("target", "_blank");
  31.  
  32. const img = new Image();
  33. img.src = iconPath;
  34. img.alt = buttonText;
  35. img.style.width = "64px";
  36. img.style.height = "36px";
  37. img.style.objectFit = "contain";
  38. img.style.backgroundColor = "#171d25";
  39. img.style.borderRadius = "4px";
  40. img.style.padding = "8px";
  41.  
  42. linkButton.appendChild(img);
  43. linkButton.title = tooltipText;
  44. linkButton.style.marginRight = "10px";
  45. buttonsContainer.appendChild(linkButton);
  46. }
  47.  
  48. const formattedGameName = document.getElementById("appHubAppName").textContent.trim().toLowerCase().replace(/'/g, "").replace(/_/g, " ");
  49.  
  50. const new1SiteSearchLink = `https://rutracker.org/forum/tracker.php?nm=${formattedGameName}`;
  51. createButton(new1SiteSearchLink, "Rutracker", "Поиск по Rutracker.org", "https://static.rutracker.cc/logo/logo-3.svg");
  52.  
  53. const new2SiteSearchLink = `https://rutor.info/search/0/0/100/0/${formattedGameName}`;
  54. createButton(new2SiteSearchLink, "Rutor", "Поиск по Rutor.info", "https://polit.ru/media/photolib/2013/08/26/rutor_1444831134.png");
  55.  
  56. const new3SiteSearchLink = `https://cs.rin.ru/forum/search.php?keywords=${formattedGameName}&terms=any&author=&sc=1&sf=titleonly&sk=t&sd=d&sr=topics&st=0&ch=300&t=0&submit=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA`;
  57. createButton(new3SiteSearchLink, "CS.RIN.RU", "Поиск по cs.rin.ru", "https://torrentfreak.com/images/cs-rin-ru-e1586936958961.png");
  58.  
  59. const new4SiteSearchLink = `https://online-fix.me/index.php?do=search&subaction=search&story=${formattedGameName}`;
  60. createButton(new4SiteSearchLink, "Online Fix", "Поиск по Online Fix", "https://i.imgur.com/WAXRAUw.png");
  61.  
  62. const new5siteSearchLink = `https://www.skidrowreloaded.com/?s=${formattedGameName}&x=0&y=0`;
  63. createButton(new5siteSearchLink, "Skidrow", "Поиск на Skidrow", "https://i.imgur.com/sfzB2DE.png");
  64.  
  65. const new6siteSearchLink = `https://fitgirl-repacks.site/?s=${formattedGameName}`;
  66. createButton(new6siteSearchLink, "FitGirl", "Поиск по FitGirl", "https://i.imgur.com/GOFbweI.png");
  67.  
  68. const new7SiteSearchLink = `https://steamrip.com/?s=${formattedGameName}`;
  69. createButton(new7SiteSearchLink, "SteamRIP", "Поиск по SteamRIP", "https://i.imgur.com/tmvOT86.png");
  70.  
  71. const new8SiteSearchLink = `https://dodi-repacks.site/?s=${formattedGameName}`;
  72. createButton(new8SiteSearchLink, "Dodi", "Поиск по Dodi", "https://i.imgur.com/g71t1Ge.png");
  73.  
  74. const new9SiteSearchLink = `https://gload.to/?s=${formattedGameName}`;
  75. createButton(new9SiteSearchLink, "Gload", "Поиск по Gload", "https://gload.to/logo.png");
  76. })();