Приветствую друзья,
Решил создать такую тему, чтобы собрать все необходимые скрипты для сайта сервера Aion - это могут быть всевозможные хаки, модули для CMS, а так же просто куски кода, которые станут полезными для вас и вашего сайта.
Начну с небольшого скрипта, который позволит вывести текущий уровень персонажа, при этом вам не потребуется прописывать опыт и уровни в код как это требовалось
в прошлом предлагаемом мною варианте, достаточно поместить вместе со скриптом файл
player_experience_table.xml, который доступен по адресу:
Цитата:
AL-Game\data\static_data\
|
Код класса PlayerInfo:
PHP код:
/**
* Класс PlayerInfo
* @author PROGRAMMATOR <admin@zone-game.info>
* @link http://forum.zone-game.info/showthread.php?t=10110
* @copyright http://zone-game.info
*/
class PlayerInfo
{
/**
* Конструктор класса PlayerInfo
*/
public function __construct() {
// здесь может быть ваш код ;)
}
/**
* Метод определения текущего уровня персонажа
* @param <int> $experience количество exp
* @return <int> текущий уровень
*/
public function getCurrentLevel($experience) {
$expList = $this->getPlayerExperienceTable();
$maxLevel = sizeof($expList) - 1;
if ($experience >= $expList[$maxLevel]) {
return $maxLevel;
}
for ($level = 0; $level < $maxLevel; $level ++) {
if ($experience > $expList[$level] and $experience < $expList[$level + 2]) {
return (($experience - $expList[$level]) > ($expList[$level + 1] - $experience) ? $level + 1 : $level);
}
}
}
/**
* Метод разбора XML файла player_experience_table.xml
* @return <array> собранный массив $level => $exp
*/
private function getPlayerExperienceTable() {
$xml = simplexml_load_file(realpath(dirname(__FILE__)).'/player_experience_table.xml');
foreach ($xml->exp as $key => $value) {
$playerExperienceTable[] .= $value;
}
return $playerExperienceTable;
}
}
Использовать его очень просто, вначале сохраняете весь код в файл, например PlayerInfo.class.php и в необходимом месте подключаете его:
PHP код:
require_once 'PlayerInfo.class.php';
И соответственно выводим текущий уровень персонажа:
PHP код:
$playerInfo = new PlayerInfo();
echo $playerInfo->getCurrentLevel('здесь_количество_опыта');
На этом пока все, остальное по вашим просьбам. То есть в этой теме вы можете попросить написать скрипт, который будет полезен не только вам, но и другим участникам нашей
Зоны. Сразу немного всяких "НО":
Цитата:
- Не пишу хаки и модули для CMS Joomla.
- Могу отказаться от написания не прокомментировав причину\ы.
- Не пишу CMS, системы доната, панели управления.
|
Вообщем только разумные просьбы, за вас всю работу делать не буду, это уж точно.