Перейти к содержанию
Авторизация  
centrix

Правка Модуля Статистика (stress)

Рекомендуемые сообщения

Доброго времени суток. Есть веб-обвязка на движке стресса, работает замечательно. Хотелось бы добавить в общую статистику две строчки:

Hellbound points и Hellbound level. Все эти данные можно взять в таблице hellbound (hb_points, hb_level). Так вот что дописать в модуль статистики?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какую ты сборку указал в настройке стресс веба? Что бы знать в каком файле тебе править скрипт.

И ещё если можно дай мне sql запрос на добавление таблицы hellbound, а то у меня таких столбцов и в помине нету.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В настройке - L2Dream (может, ее там и нет по умолчанию. Мне один товарищ поделился собственной наработкой для ядра дрима)

 

Таблица ХБ имеет такую структуру

DROP TABLE IF EXISTS `hellbound`;
CREATE TABLE IF NOT EXISTS `hellbound` (
 `name` INT UNSIGNED NOT NULL DEFAULT 0,
 `hb_points` INT UNSIGNED NOT NULL DEFAULT 0,
 `hb_level` INT UNSIGNED NOT NULL DEFAULT 1,
 `unlocked` INT UNSIGNED NOT NULL DEFAULT 0,
 `dummy` INT UNSIGNED NOT NULL DEFAULT 0,
 PRIMARY KEY  (`name`,`hb_points`,`hb_level`,`unlocked`,`dummy`)
) ENGINE=MyISAM AVG_ROW_LENGTH=26 CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем всё достаточно просто и все изменения выполняются в несколько шагов. И так поехали:

1) Добавляем запросы.

Открываем файл \inc\l2db\l2j_l2Dream.php (отвечает за все запросы сайта, если нужно для других сборок, то просто открываем соответствующий файл). Находим строчку:

	"getCountDusk" => "
	SELECT count(0) 
	FROM seven_signs 
	WHERE cabal='dusk'",

И добавляем ниже:

	"HellboundLevel" => "
	SELECT hb_level 
	FROM hellbound",

"HellboundPoints" => "
	SELECT hb_points
	FROM hellbound",

Этим самым мы создали запросы, которые будут брать необходимые данные.

 

2) Вывод статистика.

Открываем файл \engine\stat.php (на будущее - в данном файле находятся все основные функции движка) и находим строчку:

list($count_Dusk) = $gdb[$_serv_id]->fetch_array($gdb[$_serv_id]->query($gdb[$_serv_id]->_parse_query($qList[$l2db_gs]["getCountDusk"])));

После неё вставляем:

list($Hellbound_level) = $gdb[$_serv_id]->fetch_array($gdb[$_serv_id]->query($gdb[$_serv_id]->_parse_query($qList[$l2db_gs]["HellboundLevel"])));
list($Hellbound_points) = $gdb[$_serv_id]->fetch_array($gdb[$_serv_id]->query($gdb[$_serv_id]->_parse_query($qList[$l2db_gs]["HellboundPoints"])));

 

Находим:

$tpl->set_var("{duskpc}", $count_Dusk_p);

Вставляем ниже:

$tpl->set_var("{hb_level}", $Hellbound_level);
$tpl->set_var("{hb_points}", $Hellbound_points);

Этим самым мы создали основную функцию вывода информации.

 

3) Добавляем данные в шаблон.

Открываем файл \templates\имя_шаблона\statistic.tpl и ищем строчку (стандартный шаблон):

<tr><td class="l2left">Dusk (сумрак):</td>		<td class="l2right">{dusk} ({duskpc}%)</td></tr>

Ниже вставляем:

<tr><td class="l2left">Уровень ХеллБоунд:</td>		<td class="l2right">{hb_level}</td></tr>
<tr><td class="l2left">Очки ХеллБоунд:</td>		<td class="l2right">{hb_points}</td></tr>

Сейчас мы добавили вывод информации в шаблоне.

 

Всё, теперь можно зайти на сайт и полюбоваться новым фичам.

 

Если что-то не получилось, выкладываю измененный файлы.

 

Хотелось бы отметить что это лишь один из немногих способов добавления функционала, но на мой взгляд он самый оптимальный и полностью сохраняет структуру движка.

stress.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все, получилось) Спасибо за помощь!)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...