call23re

Find Items In Trades

Oct 26th, 2019
561
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. let targets = [20573078, 416846000, 439984665]; // list of items to search for
  2. let checkBothSides = true; // when false it only checks your side, when true it checks both
  3.  
  4. function getTrade(sessionId) {
  5.     let data = new FormData();
  6.     data.append('TradeID', sessionId);
  7.     data.append('cmd', 'pull');
  8.     return new Promise(async (resolve, reject) => {
  9.         let response = await fetch('https://www.roblox.com/trade/tradehandler.ashx', {
  10.             method: 'POST',
  11.             body: data,
  12.             headers: {
  13.                 'X-CSRF-TOKEN': Roblox.XsrfToken.getToken()
  14.             }
  15.         });
  16.         response = await response.json();
  17.         response = JSON.parse(response.data);
  18.         resolve(response);
  19.     });
  20. };
  21.  
  22. function getTrades(startIndex) {
  23.     return new Promise(async (resolve, reject) => {
  24.         let response = await fetch('https://www.roblox.com/My/money.aspx/getmyitemtrades', {
  25.             method: 'POST',
  26.             body: JSON.stringify({startindex: startIndex, statustype: "inbound"}),
  27.             headers: {
  28.                 'X-CSRF-TOKEN': Roblox.XsrfToken.getToken(),
  29.                 'Content-Type': 'application/json; charset=UTF-8'
  30.             }
  31.         });
  32.         response = await response.text();
  33.         response = JSON.parse(response);
  34.         response = response.d.replace('/\/g', '');
  35.         response = JSON.parse(response);
  36.         resolve(response);
  37.     });
  38. };
  39.  
  40. function mark(index) {
  41.     index += 1;
  42.     let rows = document.getElementsByClassName('datarow');
  43.     rows[index].style.color = "red";
  44. };
  45.  
  46. async function check(startIndex) {
  47.     let trades = await getTrades(startIndex);
  48.     for (let index in trades.Data) {
  49.         index = Number(index);
  50.         let trade = JSON.parse(trades.Data[index]);
  51.         let tradeInfo = await getTrade(trade.TradeSessionID);
  52.         for (let item of tradeInfo.AgentOfferList[1].OfferList) {
  53.             let id = item.ItemLink.match(/\d/g).join('');
  54.             if (targets.indexOf(Number(id)) > -1) {
  55.                 mark(startIndex + index);
  56.             };
  57.         };
  58.         if (checkBothSides) {
  59.             for (let item of tradeInfo.AgentOfferList[0].OfferList) {
  60.                 let id = item.ItemLink.match(/\d/g).join('');
  61.                 if (targets.indexOf(Number(id)) > -1) {
  62.                     mark(startIndex + index);
  63.                 };
  64.             };
  65.         };
  66.     };
  67. };
  68.  
  69. function run() {
  70.     let index = 0;
  71.     check(index);
  72.     let button = document.getElementsByClassName('btn-control btn-control-small')[0];
  73.     button.addEventListener('click', function() {
  74.         index += 20;
  75.         check(index);
  76.     });
  77. };
  78.  
  79. run();
Advertisement
Add Comment
Please, Sign In to add comment