Оставляйте здесь свои закладки

Модератор: Exinaus, shw

#21467 Exinaus 11 дек 2012, 17:08
Меня в ПМ попросили добавить рейтинг бронесайта в закладку "Общие результаты".
Но так как код вкладки может и поменяться, вдруг, я лучше напишу небольшую инструкцию как это добавить самому:

1. В папке function открываем файл rating.php и ищем вот такую функцию:
 Spoiler
Код: Выделить всё    function eff_rating($res,$lang)
    {
        foreach($res as $name => $per_stat){
            if(isset($per_stat['overall'][$lang['games_p']])){
                if($per_stat['overall'][$lang['games_p']] != 0){
                    $effect['des'] = ($per_stat['perform'][$lang['destroyed']]/$per_stat['overall'][$lang['games_p']]);
                    $effect['dem'] = ($per_stat['perform'][$lang['damage']]/$per_stat['overall'][$lang['games_p']]);
                    $effect['spo'] = ($per_stat['perform'][$lang['spotted']]/$per_stat['overall'][$lang['games_p']]);
                    $effect['def'] = ($per_stat['perform'][$lang['defend']]/$per_stat['overall'][$lang['games_p']]);
                    $effect['cap'] = ($per_stat['perform'][$lang['capture']]/$per_stat['overall'][$lang['games_p']]);
                }else{
                    $effect['des'] = 0;
                    $effect['dem'] = 0;
                    $effect['spo'] = 0;
                    $effect['def'] = 0;
                    $effect['cap'] = 0;
                }
                $effect['lvl'] = 0;
                if(isset($per_stat['tank'])){
                    $effect['lvl'] = middel_tank_lvl($per_stat['tank']);
                }
                if(count($effect) > 0){
                    $feff[$name] = 0;
                    if($effect['lvl'] != 0){
                        $feff[$name] = round($effect['dem']*(10/$effect['lvl'])*(0.15+2*$effect['lvl']/100) + $effect['des']*(0.35-2*$effect['lvl']/100)*1000 + $effect['spo']*0.2*1000 + $effect['cap']*0.15*1000 + $effect['def']*0.15*1000,2);
                    }
                }
            // <------ Вставляем код вот сюда
            }else{
                $feff[$name] = 0;
            }
        }
        return $feff;
    }


В указанное выше место добавляем вот такой код:
 Spoiler
Код: Выделить всё                //Количество сыгранных боев
                $effect['b'] = $per_stat['overall'][$lang['games_p']];
                // средний опыт за один бой
                $effect['Hp'] = $per_stat['exp'][$lang['total_exp']]/$per_stat['overall'][$lang['games_p']];
                //Среднее число побед на один бой
                $effect['P1'] = $per_stat['overall'][$lang['victories']]/$per_stat['overall'][$lang['games_p']];

                $feff['brone'][$name] = round((log($effect['b'])/10)*(($effect['Hp']*1)+($effect['dem']*($effect['P1']*2+$effect['des']*0.9+$effect['spo']*0.5+$effect['def']*0.5+$effect['cap']*0.5))),0);



2. В папке tabs открываем файл overall.php и находим вот такую строку:
 Spoiler
Код: Выделить всё                <th><?php echo $lang['eff_ret']; ?></th>

После нее добавляем:
 Spoiler
Код: Выделить всё                <th>Bronesite</th>

*Если хотите русский заголовок, убедитесь что сохраняете файл в кодировке UTF-8 without BOM или просто UTF-8

Дальше, в том же файле, находим вот такой код:
 Spoiler
Код: Выделить всё                    <td><?php if(is_numeric($eff_rating[$name])) { echo '<font color="'.$color.'">'.$eff_rating[$name].'</font>'; } else { echo '<font color="red">0</font>';} ?></td>

Сразу после него добавляем:
 Spoiler
Код: Выделить всё                    <td><?php if(is_numeric($eff_rating['brone'][$name])) { echo $eff_rating['brone'][$name]; } else { echo '<font color="red">0</font>';} ?></td>


По поводу добавления этого в стандартный модуль повторюсь: Данный рейтинг не имеет четких показательных границ, его надо рассматривать в сравнении со всеми игроками, не только в клане. Без них он не показателен. У нас такой информации нет, у бронесайта тоже (они сравнивают только с теми кто просмотрел свой рейтинг на их сайте, а не вообще всеми игроками. Хотя даже это дает намного больше информации, чем просмотр этого просто в клане). Если такая возможность появится - тогда добавим.
#21681 shw 16 дек 2012, 17:04
подозреваю, что нужна самостоятельная php страничка, что бы ее можно было inframe'ом показывать у себя на сайте
#21687 McCleod 16 дек 2012, 17:27
Exinaus писал(а):Какой блок, можно поконкретнее?

вот такой
Image 1.jpg
Image 1.jpg (13.17 КБ) Просмотров: 11865


shw писал(а):подозреваю, что нужна самостоятельная php страничка, что бы ее можно было inframe'ом показывать у себя на сайте

обойдёмся
#21810 shw 19 дек 2012, 18:47
McCleod писал(а):Только сейчас дошло что не в ту тему запостил.

В ту, в ту...
Меняем один файлик в папке ajax
файл убрал в связи с добавлением оного в релиз от 2.2.0 бета

Цифры 100% будут один в один, но звания могут быть +/-. В принципе можно было бы парсить их сайт, но тогда он ляжет =)
Т.к. звания у них привязаны к базе, где хранятся данные от 600'000+ игроков, то вполне вероятно границы между званиями через некоторое время могут сдвинуться в ту или иную сторону. И немного отличаться от текущих на вкладке, которые были получены опытным путем =)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Реклама | Adv