$nickname = $playerData['nickname']; $account_id = $playerData['account_id']; if ($playerData['clan_id'] != null) { $data = json_decode($api->clanInfo($playerData['clan_id']), true); $clanData = $data['data'][$playerData['clan_id']]; } $tankstats = json_decode(file_get_contents("tanks.json"), true); //Tank Stats is Tank Information (example tank name/tier and so on) $vehicledata = json_decode($api->realAccountVehicles($account_id), true)['data'][$account_id]; //Player's Tanks $exp_json = json_decode(file_get_contents("exp16.json"), true); //Expected value for WN8 //Calculate statistics $statistics = $playerData['statistics']['all']; $statistics['win_rate'] = round($statistics['wins'] / $statistics['battles'], 4) * 100; $statistics['wn8'] = calcWN8($vehicledata, $playerData, $exp_json); $statistics['avg_tier'] = getTier($vehicledata, $playerData, $tankstats); $statistics['avg_dmg'] = $statistics['damage_dealt'] / $statistics['battles']; $statistics['kdr'] = $statistics['frags'] / ($statistics['battles'] - $statistics['survived_battles']); // $statistics['global_rating'] = $playerData['global_rating']; //NA, TR: 1001651922 // wn7 /*$battles_wn7 = $statistics['battles']; $e = 2.71828; $win_rate = $statistics['win_rate']; $def = $statistics['dropped_capture_points'] / $statistics['battles']; $spot = $statistics['spotted'] / $statistics['battles']; $damage = $statistics['avg_dmg']; $frags = $statistics['frags'] / $statistics['battles']; $tier = $statistics['avg_tier'];
foreach ($members as $name => $member) { $member_tanks = array(); if (count(@$member['data']) > 0) { foreach ($member['data'] as $key => $tank) { $tank_id = $tank['tank_id']; $tank_name = $tank_dictionary[$tank_id]['name_i18n']['enUS']; if (!array_key_exists($tank['tank_id'], $exp_values)) { continue; } $exp_data = $exp_values[$tank['tank_id']]; $tank = $tank['all']; $battles = $tank['battles']; if ($battles == 0) { continue; } $wn8 = calcWN8($tank, $exp_data); $tank_tier = $tank_dictionary[$tank_id]['tier']; $tanks_overall[$tank_name][] = array('player' => $name, 'tank_id' => $tank_id, 'name' => $tank_name, 'tier' => $tank_tier, 'winrate' => round($tank['wins'] / $battles, 3) * 100, 'avg_dmg' => round($tank['damage_dealt'] / $battles), 'avg_exp' => $tank['battle_avg_xp'], 'hitrate' => $tank['hits_percents'], 'damage_dealt' => $tank['damage_dealt'], 'battles' => $battles, 'wn8' => round($wn8)); } } } foreach ($tanks_overall as $tankname => $tank_players) { usort($tanks_overall[$tankname], "compare"); $total_dmg = 0; $battles = 0; if (!array_key_exists($tankname, $tank_tops)) { $tank_tops[$tankname] = array('winrate' => 0, 'avg_dmg' => 0, 'avg_exp' => 0, 'hitrate' => 0, 'damage_dealt' => 0, 'battles' => 0, 'wn8' => 0); } foreach ($tank_players as $player_stats) { $total_dmg += $player_stats['damage_dealt']; $battles += $player_stats['battles'];