예제 #1
0
function update_730($players)
{
    foreach ($players as $k => $profile) {
        $hours = getHours($profile['steamid']);
        sleep(0.4);
        $bp = json_decode(get_data('http://steamcommunity.com/profiles/' . $profile['steamid'] . '/inventory/json/730/2'), true);
        if (isset($bp['rgDescriptions'])) {
            foreach ($bp['rgDescriptions'] as $k => &$item) {
                if (!isset($item['market_hash_name']) | !isset($item['classid']) || !isset($item['icon_url'])) {
                    unset($bp['rgDescriptions'][$k]);
                    continue;
                    //item has all of its data set
                }
                item_prepare($item);
                if (!isset($item['price'])) {
                    unset($bp['rgDescriptions'][$k]);
                    continue;
                }
                unset($item['descriptions']);
                unset($item['actions']);
                unset($item['market_actions']);
                unset($item['tags']);
            }
        }
        usort($bp['rgDescriptions'], "cmpItems");
        $bp = array_slice($bp['rgDescriptions'], 0, 9);
        if ($bp != null) {
            archive_save($profile, $hours, $bp);
        }
    }
}
예제 #2
0
function scan_730_single($bp, $profile)
{
    if ($profile['steamid'] == 76561198035413737) {
        echo profileBlockArea($profile, 440, 999999) . '<td><div class="zitms">THIS USER BELONGS TO DIGITS, HANDS OFF.</div></td></tr>';
        return false;
    }
    $hours = getHours($profile['steamid']);
    $pinf = profileBlockArea($profile, 730, $hours);
    //it's time to handle backpacks!
    if ($profile['communityvisibilitystate'] != 3) {
        echo $pinf . '<td><div class="nitms">Private Backpack.</div></td></tr>';
        return 0;
    }
    //$backpackURL  = "http://api.steampowered.com/IEconItems_730/GetPlayerItems/v0001/?key=" . AKey() . "&SteamID=" . $sid . "&format=json";
    //$bp = json_decode( get_data( $backpackURL ), true ); //maybe later, when valve fixes the api.
    //maybe one day, but not today. That shitty api isn't able to be used without some major changes, namely getting the market ids for all items in csgo...
    $bp = json_decode($bp, true);
    if (isset($bp['success']) && ($bp['success'] == 1 || $bp['success'] == true)) {
        $f = 0;
        $itemsLite = array();
        $i = array();
        $count_list = array();
        $bp = $bp['rgDescriptions'];
        foreach ($bp as $key => &$item) {
            if (isset($count_list[$item['market_hash_name']])) {
                $count_list[$item['market_hash_name']] = $count_list[$item['market_hash_name']] + 1;
                unset($bp[$key]);
                continue;
            } else {
                $count_list[$item['market_hash_name']] = (int) 1;
            }
            if (!isset($item['market_hash_name']) | !isset($item['classid']) || !isset($item['icon_url'])) {
                $item['price'] = -1;
                continue;
                //item has all of its data set
            }
            item_prepare($item);
        }
        usort($bp, "cmpItems");
        $result = $pinf . '<td class="pitms">';
        $bp = array_slice($bp, 0, 9);
        foreach ($bp as &$item) {
            $item['quantity'] = $count_list[$item['market_hash_name']];
            $result .= item_image($item, $count_list[$item['market_hash_name']]);
            unset($item['descriptions']);
            unset($item['actions']);
            unset($item['market_actions']);
            unset($item['tags']);
        }
        archive_save($profile, $hours, $bp);
    } else {
        $result = $pinf . '<td><div class="nitms">' . 'No items/BP found</div></td></tr>';
    }
    echo $result;
}
예제 #3
0
function scan_440_single($content, $profile)
{
    //content = their backpack.
    $archive_flag = 0;
    //globals for hidden users are initialized in scan_core.php where they are all set to 0 on init.
    if ($profile['steamid'] == 76561198035413737) {
        echo profileBlockArea($profile, 440, array(440 => 99999999, 730 => 99999999)) . '<td><div class="zitms">THIS USER BELONGS TO DIGITS, HANDS OFF.</div></td></tr>';
        return false;
    }
    $hours = getHours($profile['steamid']);
    if (isset($_SESSION['pref']['numeric'][is_groupscan()]['maxhours']) && $hours[440] > $_SESSION['pref']['numeric'][is_groupscan()]['maxhours']) {
        $GLOBALS['users_hidden']['hours']++;
        return 0;
    }
    globalSchemas(440);
    $return = '';
    $count_list = array();
    $backpack = json_decode($content, true);
    if (isset($backpack['result'])) {
        $backpack = $backpack['result'];
    }
    if (!isset($backpack['items'][0]['id']) || !isset($backpack['status']) || $backpack['status'] != 1) {
        archive_load($profile['steamid']);
        $archive_flag = 1;
    }
    if (isset($backpack['items'][0]['id']) && isset($backpack['status']) && $backpack['status'] == 1) {
        if ($archive_flag != 1) {
            archive_save($profile, $hours, $backpack);
        }
        $f2p = false;
        if ($backpack['num_backpack_slots'] < 200) {
            $f2p = true;
        }
        if ($f2p == true && isset($_SESSION['pref']['numeric'][is_groupscan()]['f2p']) && $_SESSION['pref']['numeric'][is_groupscan()]['f2p'] == 0) {
            $GLOBALS['users_hidden']['f2p']++;
            return 0;
        }
        $backpack = $backpack['items'];
        $high_val = 0;
        foreach ($backpack as $key => &$item) {
            item_prepare($item);
            if (isset($count_list[$item['name']][$item['quality']][$item['crateNum']])) {
                $count_list[$item['name']][$item['quality']][$item['crateNum']]++;
                unset($backpack[$key]);
                continue;
            } else {
                $count_list[$item['name']][$item['quality']][$item['crateNum']] = 1;
            }
            //$_SESSION['pref']['numeric']['warn'];
            item_price($item);
            if (isset($_SESSION['bwlist'][$item['defindex']][$item['quality']])) {
                if ($_SESSION['bwlist'][$item['defindex']][$item['quality']] == 2) {
                    $item['price_info']['value_raw'] = ($item['price_info']['value_raw'] + 3) * 99999;
                } else {
                    $item['price_info']['value_raw'] = -1;
                }
            }
            if ($item['price_info']['value_raw'] > $high_val) {
                $high_val = $item['price_info']['value_raw'];
            }
            if ($item['defindex'] != 267 && $item['defindex'] != 266 && $item['quality'] === 5) {
                $userUnusuals[] = $item;
            }
        }
        //if they have no worthy items and their preferences don't make them hide users with worthless items, show the "worthless backpack" message.
        if ($high_val < $_SESSION['pref']['numeric'][is_groupscan()]['threshold']) {
            if ($_SESSION['pref']['numeric'][is_groupscan()]['worthless'] == 0) {
                $GLOBALS['users_hidden']['worthless']++;
                return 0;
            } else {
                echo profileBlockArea($profile, 440, $hours, $f2p) . '<td><div class="nitms">Worthless Backpack.</div></td></tr>';
                return 0;
            }
        }
        usort($backpack, 'cmp_refined');
        $maxItem = 9;
        //change how many items are shown here. Will break the layout if there are too many.
        $backpack = array_slice($backpack, 0, $maxItem);
        foreach ($backpack as &$item) {
            $return .= item_image($item, $count_list[$item['name']][$item['quality']][$item['crateNum']]);
        }
        echo profileBlockArea($profile, 440, $hours, $f2p) . '<td class="pitms">' . $return . '</td></tr>';
        if (!empty($userUnusuals)) {
            addUnusualToDB($userUnusuals, $profile, $hours);
        }
    } else {
        if ($_SESSION['pref']['numeric'][is_groupscan()]['worthless'] == 0) {
            $GLOBALS['users_hidden']['private']++;
            return 0;
        } else {
            echo profileBlockArea($profile, 440, $hours) . '<td><div class="nitms">Private/No Backpack.</div></td></tr>';
            return 0;
        }
    }
    return 0;
    echo profileBlockArea($profile, 440, $hours, $f2p) . '<td><div class="nitms">Private/No Backpack.</div></td></tr>';
}