您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
可以检查好友列表和游戏列表中好友的VAC状态。
当前为
// ==UserScript== // @name 好友和最近游戏中显示VAC状态 // @namespace SteamVAC // @author By:Svlik QQ:122474363 // @description 可以检查好友列表和游戏列表中好友的VAC状态。 // @version 1.1 // @include http*://steamcommunity.com/*/friends/* // @grant GM_addStyle // @grant GM_xmlhttpRequest // ==/UserScript== javascript:( function(){ function getDigit(x,digitIndex){ return(digitIndex>=x.length)?"0":x.charAt(x.length-digitIndex-1)} function prefixZeros(strint,zeroCount){ var result=strint; for( var i=0;i<zeroCount;i++){result="0"+result} return result} function add(x,y){ var maxLength=Math.max(x.length,y.length); var result=""; var borrow=0; var leadingZeros=0; for( var i=0;i<maxLength;i++){ var lhs=Number(getDigit(x,i)); var rhs=Number(getDigit(y,i)); var digit=lhs+rhs+borrow;borrow=0; while(digit>=10){digit-=10;borrow++} if(digit===0){leadingZeros++} else{result=String(digit)+prefixZeros(result,leadingZeros);leadingZeros=0}} if(borrow>0){result=String(borrow)+result} return result} function getId(friend){ var steam64identifier="76561197960265728"; var miniProfileId=friend.attributes.getNamedItem("data-miniprofile").value; return add(steam64identifier,miniProfileId)} var friends=[].slice.call(document.querySelectorAll("#memberList .member_block, .friendHolder, .friendBlock")); var lookup={};friends.forEach( function(friend){ var id=getId(friend); if(!lookup[id]){lookup[id]=[]}lookup[id].push(friend)}); function setVacation(player){ var friendElements=lookup[player.SteamId];friendElements.forEach( function(friend){ var inGameText=friend.querySelector(".linkFriend_in-game"); var span=document.createElement("span");span.style.fontWeight="bold";span.style.display="block"; if(inGameText){inGameText.innerHTML=inGameText.innerHTML.replace(/<br ?\/?>/," - ")} if(player.NumberOfVACBans||player.NumberOfGameBans){ var text=""; if(player.NumberOfGameBans){text+=player.NumberOfGameBans+" 个 OW 封禁"} if(player.NumberOfVACBans){text+=(text===""?"":", ")+player.NumberOfVACBans+" 个 VAC 封禁"}text+=" "+player.DaysSinceLastBan+" 天以前.";span.style.color="rgb(255, 73, 73)";span.innerHTML=text} else{span.style.color="rgb(43, 203, 64)";span.innerHTML="此人没有被封禁记录."}friend.querySelector(".friendSmallText").appendChild(span)})} function onData(xmlHttp){ if(xmlHttp.readyState===XMLHttpRequest.DONE&&xmlHttp.status===200){ var data=JSON.parse(xmlHttp.responseText);data.players.forEach(setVacation)}} function makeApiCall(ids){ var xmlHttp= new XMLHttpRequest(); var endpointRoot="https://api.steampowered.com/ISteamUser/GetPlayerBans/v1/?key=F0FEFC817BE3323775709C26A96E9963&steamids="; var endpoint=endpointRoot+ids.join(",");xmlHttp.onreadystatechange= function(){onData(xmlHttp)};xmlHttp.open("GET",endpoint,true);xmlHttp.send()} var ids=Object.keys(lookup); while(ids.length>0){ var batch=ids.splice(0,100);makeApiCall(batch)}})();