您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Market Framework
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/34365/225102/Market%20requester.js
// ==UserScript== // @name Market requester // @version 0.5 // @description Market Framework // @author A Meaty Alt // @match http://fairview.deadfrontier.com/onlinezombiemmo/index.php?page=35 // @require https://greasyfork.org/scripts/32927-md5-hash/code/MD5%20Hash.js?version=225078 // @grant none // ==/UserScript== var allStats; function loadAllStats(){ return new Promise(function(resolve){ $.get("https://fairview.deadfrontier.com/onlinezombiemmo/dfdata/get_allstats.php?printvars=1", function(result){ allStats = result; resolve(); }); }); } function codeNameToPublicName(codeName){ return new Promise((resolve) => { if(codeName.indexOf("ammo") > -1){ resolve(ammoSwitch(codeName)); } if(codeName.indexOf("_cooked") > -1){ var uncookedCodeName = codeName.replace("_cooked", ""); resolve("Cooked " + codeNameToPublicName(uncookedCodeName)); } if(allStats){ var patternItemNumber = new RegExp(codeName+"\&(.*?)_"); var itemNumber = allStats.match(patternItemNumber)[1]; var patternItem = new RegExp(itemNumber+"_name=(.*?)\&"); resolve(allStats.match(patternItem)[1]); } else{ loadAllStats() .then(() => { var patternItemNumber = new RegExp(codeName+"\&(.*?)_"); var itemNumber = allStats.match(patternItemNumber)[1]; var patternItem = new RegExp(itemNumber+"_name=(.*?)\&"); resolve(allStats.match(patternItem)[1]); }); } }); function ammoSwitch(codeName){ if(codeName == "32ammo") return ".32"; else if(codeName == "35ammo") return ".35"; else if(codeName == "35ammo") return ".35"; else if(codeName == "357ammo") return ".357"; else if(codeName == "38ammo") return ".38"; else if(codeName == "40ammo") return ".40"; else if(codeName == "45ammo") return ".45"; else if(codeName == "50ammo") return ".50"; else if(codeName == "55ammo") return ".55"; else if(codeName == "55rifleammo") return "5.5"; else if(codeName == "75rifleammo") return "7.5"; else if(codeName == "9rifleammo") return "9mm r"; else if(codeName == "127rifleammo") return "12.7"; else if(codeName == "14rifleammo") return "14mm"; else if(codeName == "20gaugeammo") return "20 g"; else if(codeName == "16gaugeammo") return "16 g"; else if(codeName == "12gaugeammo") return "12 g"; else if(codeName == "10gaugeammo") return "10 g"; else if(codeName == "grenadeammo") return "grenade"; else if(codeName == "heavygrenadeammo") return "y grenade"; } } function browseItem(params, itemName){ return new Promise((resolve, reject) => { var tradezone = params.match(/tradezone=(.*?)\&/)[1]; $.post("http://meaty.dfprofiler.com/browsemarketplace.php?function=browseMarket", "tradezone="+tradezone+"&search="+itemName+"&category=0", (response) => { if(response[0]) resolve(response.slice(1, response.length)); else reject(response[1]); }); }); } function getLowestPrice(params, itemName){ return new Promise((resolve, reject) => { var tradezone = params.match(/tradezone=(.*?)\&/)[1]; $.post("http://meaty.dfprofiler.com/browsemarketplace.php?function=browseForCheapest", "tradezone="+tradezone+"&search="+itemName+"&category=0", (response) => { resolve(response); }); }); } function sellItem(pageTime, params, itemCode, invPosition, myAmount){ return new Promise((resolve, reject) => { codeNameToPublicName(itemCode) .then((itemName) => { getLowestPrice(params, itemName) .then((price) => { var priceToSell = Math.round(price*myAmount - 10); var sc = params.match(/sc=(.*?)\&/)[1]; var userId = params.match(/userID=(.*?)\&/)[1]; var hashedPassword = params.match(/password=(.*?)\&/)[1]; var postBody = "&pagetime="+pageTime+"&templateID=undefined&sc="+sc+"&creditsnum=0&buynum=0&renameto=&expected_itemprice=-1&expected_itemtype2=&expected_itemtype="+itemCode+"&itemnum2=0&itemnum="+invPosition+"&priceToSell="+price+"&action=newsell&userID="+userId+"&password="+hashedPassword; $.post("https://fairview.deadfrontier.com/onlinezombiemmo/inventory_new.php", "hash="+hash(postBody)+"&"+postBody, (response) => { if(response) resolve(); else reject(); }); }); }); }); }