SG User Steam Level

Shows steam level of SG user in their profile page.

  1. // ==UserScript==
  2. // @name SG User Steam Level
  3. // @namespace https://steamcommunity.com/id/Ruphine/
  4. // @version 1.2.3
  5. // @description Shows steam level of SG user in their profile page.
  6. // @author Ruphine
  7.  
  8. // @match *://www.steamgifts.com/user/*
  9. // @connect ruphine.esy.es
  10. // @require https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js
  11. // @grant GM_xmlhttpRequest
  12. // ==/UserScript==
  13.  
  14. var styles = "<link rel='stylesheet' type='text/css' href='https://steamcommunity-a.akamaihd.net/public/shared/css/shared_global.css?v=Kh4iVpODIZtA'>";
  15. $("head").append(styles);
  16.  
  17. const link = "http://ruphine.esy.es/steamgifts/sgsteamlevel.php?steamid=";
  18. getUserLevel(getSteamID());
  19.  
  20. function getSteamID()
  21. {
  22. var profile = $(".sidebar__shortcut-inner-wrap a")[0].href;
  23. // http://steamcommunity.com/profiles/76561198152694723
  24. var pattern = /(\d){0,20}$/; //get digit with length between 0-20 characters
  25. var steamid = pattern.exec(profile)[0];
  26.  
  27. return steamid;
  28. }
  29.  
  30. function getUserLevel(steamid)
  31. {
  32. GM_xmlhttpRequest({
  33. method: "GET",
  34. timeout: 10000,
  35. url: link+steamid,
  36. onload: function(data)
  37. {
  38. // { "response": { "player_level": 35 } }
  39. var level = JSON.parse(data.responseText).response.player_level;
  40. showLevel(level);
  41. }
  42. });
  43. }
  44.  
  45. function showLevel(level)
  46. {
  47. var spanLevel = document.createElement("span");
  48. // spanLevel.classList.add("friendPlayerLevelNum");
  49. spanLevel.innerHTML = level;
  50.  
  51. var divLevel = document.createElement("div");
  52. divLevel.classList.add("friendPlayerLevel");
  53. $(divLevel).append(spanLevel);
  54.  
  55. if(level < 100)
  56. {
  57. var level_1 = Math.floor(level/10) * 10; //level 35 becomes 30
  58. divLevel.classList.add("lvl_" + level_1);
  59. }
  60. else
  61. {
  62. var level_1 = Math.floor(level % 100 / 10) * 10; // level 235 becomes 30
  63. var level_2 = Math.floor(level/100) * 100; // level 235 becomes 200
  64. divLevel.classList.add("lvl_" + level_2);
  65. divLevel.classList.add("lvl_plus_" + level_1);
  66. }
  67.  
  68. $(".featured__heading").append(divLevel);
  69. }
  70.  
  71.  
  72.  
  73. // doesn't use this anymore, but it might come in handy later
  74. /*var styles;
  75. styles = "<style> \
  76. .friendPlayerLevel \
  77. { \
  78. display: inline-block; \
  79. font-size: 16px; \
  80. border-radius: 16px; \
  81. border: solid white 2px; \
  82. height: 28px; \
  83. width: 28px; \
  84. line-height: 28px; \
  85. text-align: center; \
  86. cursor: default; \
  87. } \
  88. .friendPlayerLevel.lvl_0 { border-color: #9b9b9b; } \
  89. .friendPlayerLevel.lvl_10 { border-color: #c02942; } \
  90. .friendPlayerLevel.lvl_20 { border-color: #d95b43; } \
  91. .friendPlayerLevel.lvl_30 { border-color: #fecc23; } \
  92. .friendPlayerLevel.lvl_40 { border-color: #467a3c; } \
  93. .friendPlayerLevel.lvl_50 { border-color: #4e8ddb; } \
  94. .friendPlayerLevel.lvl_60 { border-color: #7652c9; } \
  95. .friendPlayerLevel.lvl_70 { border-color: #c252c9; } \
  96. .friendPlayerLevel.lvl_80 { border-color: #542437; } \
  97. .friendPlayerLevel.lvl_90 { border-color: #997c52; } \
  98. .friendPlayerLevel.lvl_100, .friendPlayerLevel.lvl_200, .friendPlayerLevel.lvl_300, .friendPlayerLevel.lvl_400, .friendPlayerLevel.lvl_500, .friendPlayerLevel.lvl_600, .friendPlayerLevel.lvl_700, .friendPlayerLevel.lvl_800, .friendPlayerLevel.lvl_900, .friendPlayerLevel.lvl_1000 \
  99. { \
  100. border: none; \
  101. border-radius: 0; \
  102. background-repeat: no-repeat; \
  103. background-position: 0 0; \
  104. font-size: 14px; \
  105. height: 32px; \
  106. width: 32px; \
  107. line-height: 32px; \
  108. } \
  109. .friendPlayerLevel.lvl_100 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_hexagons.png' ); } \
  110. .friendPlayerLevel.lvl_200 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_shields.png' ); } \
  111. .friendPlayerLevel.lvl_300 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_books.png' ); text-shadow: 1px 1px #1a1a1a; } \
  112. .friendPlayerLevel.lvl_400 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_chevrons.png' ); } \
  113. .friendPlayerLevel.lvl_500 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_circle2.png' ); } \
  114. .friendPlayerLevel.lvl_600 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_angle.png' ); } \
  115. .friendPlayerLevel.lvl_700 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_flag.png' ); } \
  116. .friendPlayerLevel.lvl_800 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_wings.png' ); } \
  117. .friendPlayerLevel.lvl_900 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_arrows.png' ); } \
  118. .friendPlayerLevel.lvl_1000 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_crystals.png' ); } \
  119. .friendPlayerLevel.lvl_1100 { background-image: url( 'http://steamcommunity-a.akamaihd.net/public/shared/images/community/levels_space.png' ); } \
  120. .friendPlayerLevel.lvl_plus_10 { background-position: 0 -32px; } \
  121. .friendPlayerLevel.lvl_plus_20 { background-position: 0 -64px; } \
  122. .friendPlayerLevel.lvl_plus_30 { background-position: 0 -96px; } \
  123. .friendPlayerLevel.lvl_plus_40 { background-position: 0 -128px; } \
  124. .friendPlayerLevel.lvl_plus_50 { background-position: 0 -160px; } \
  125. .friendPlayerLevel.lvl_plus_60 { background-position: 0 -192px; } \
  126. .friendPlayerLevel.lvl_plus_70 { background-position: 0 -224px; } \
  127. .friendPlayerLevel.lvl_plus_80 { background-position: 0 -256px; } \
  128. .friendPlayerLevel.lvl_plus_90 { background-position: 0 -288px; } \
  129. </style>";
  130. $("head").append(styles);*/

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址