1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Результаты поиска

  1. mr.Slink
  2. mr.Slink
  3. mr.Slink
  4. mr.Slink
    Сообщения профиля

    ?

    ?
    Сообщение в профиле пользователя Sneeska от mr.Slink, 9 май 2010
  5. mr.Slink
    Сообщения профиля

    ? ??????! ???????:20 ??? ???? ????????:??? 9, 1990

    ? ??????! ???????:20 ??? ???? ????????:??? 9, 1990
    Сообщение в профиле пользователя Botchal от mr.Slink, 9 май 2010
  6. mr.Slink
    Сообщение

    BB-коды

    простейший редактор bb кодов Совсем недавно во время работы над очередным проектом мне понадобился простенький редактор bb кодов. Немного подумав и поискав по гуглу, я написал свой, наверное проще уже некуда… Редактор требует для работы подключенной библиотеки Jquery. Публикую его здесь, может кому нибудь пригодится. HTML код редактора выглядит следующим образом: <div class="bb_bar"> <a href="#" alt="b">Жирный</a> <a href="#" alt="i">Курсив</a> <a href="#" alt="u">Подчеркнутый</a> <a href="#" alt='a[href=""]'>Ссылка</a> </div> <textarea id="user_text"></textarea> Естественно возможно любое количество сылок, кнопочек. то как они будут оформлены, зависит исключительно от Вашей фантазии CSS в помощь. Ниже привожу Javascript код. Который отвечает за обработку нажатия на кнопки вставки тегов. <script> $(document).ready(function(){ $('.bb_bar a').click(function() { var button_id = attribs = $(this).attr("alt"); button_id = button_id.replace(/\[.*\]/, ''); if (/\[.*\]/.test(attribs)) { attribs = attribs.replace(/.*\[(.*)\]/, ' $1'); } else attribs = ''; var start = '['+button_id+attribs+']'; var end = '[/'+button_id+']'; insert(start, end); return false; }); }); function insert(start, end) { element = document.getElementById('user_text'); if (document.selection) { element.focus(); sel = document.selection.createRange(); sel.text = start + sel.text + end; } else if (element.selectionStart || element.selectionStart == '0') { element.focus(); var startPos = element.selectionStart; var endPos = element.selectionEnd; element.value = element.value.substring(0, startPos) + start + element.value.substring(startPos, endPos) + end + element.value.substring(endPos, element.value.length); } else { element.value += start + end; } } </script>
    Сообщение от: mr.Slink, 9 май 2010 в разделе: PHP
  7. mr.Slink
  8. mr.Slink
    Тема

    BB-коды

    BB-коды Сразу оговорюсь, что лучше сделать функцию, которая будет проверять текст на BB-коды и выдавать его пользователю. Т.е. лучше хранить данные на сервере с BB-кодами, чем с HTML. Хоть времени на выдачу документа будет тратится немного больше, зато вы в любое время сможете изменить стиль для того или иногоBB-кода. И для этого не нужно будет перебирать и изменять все документы, а только одну строчку в коде. Для начала я Вас познакомлю с двумя функциями: str_replace() Синтаксис: string str_replace(string from, string to, string str) Функция str_replace() заменяет в исходной строке str одни подстроки на другие. Т.е. функция заменяет в строке str все вхождения подстроки from на to и возвращает результат. Эта функция может работать с двоичными строками. Функция, вообще говоря, нужная. К примеру, если Вы пишите что-то типа гостевой книги, форума, и хотите, чтобы в форме ввода для выделения теста можно было пользоваться стандартными тегами HTML, Вы можете с помощью этой функции заменить символы, которые Вы выбрали для форматирования на стандартные теги НТML. К примеру: $txt = str_replace("[B]","<B>",$txt); Т.е. если Вы используете для отображения текста полужирным шрифтом символы "", Вы должны их заменить на символ "<B>", используемые в НТМL. preg_replace() Синтаксис: mixed preg_replace (mixed pattern, mixed replacement, mixed subject [,int limit]) Эта функция ищет в строке subject соответствия регулярному выражению pattern, и заменяет их на replacement. Необязательного параметр limit задает число соответствий, которые надо заменить. Если этот параметр не указан, или равен -1, то заменяются все найденные соответствия. <? $str = "May 15, 2003"; $pattern = "/(\w+) (\d+), (\d+)/i"; $replacement = "1 \${1} \$3"; print preg_replace($pattern, $replacement, $str); ?> Результат: 1 May 2003 Думаю с функцией str_replace() все понятно, поэтому мы можем сразу перейти к написанию первой части нашей программы: $text = str_replace("[b]", "<b>", $text); $text = str_replace("", "</b>", $text); $text = str_replace("", "<i>", $text); $text = str_replace("", "</i>", $text); $text = str_replace("", "<u>", $text); $text = str_replace("", "</u>", $text); ... В выше приведенном коде мы заменяем BB-коды на их HTML эквиваленты. Все бы хорошо, да вот только BB-коды бывают и посложнее, например: color=#FF0000]Красный[/color] Чтобы перебрать все значения цветов (от #000000 до #FFFFFF), потребуется время, причем если делать эту проверку к каждому документу, то время загрузки документа быстро увеличивается. Как же тогда быть? Да очень просто, внимательнее вчитайтесь в эту функцию: “preg_replace()”. Кто незнаком с регулярными выражениями, советую прочитать об этом материал. $search[] = "#\[color=\# ([a-f0-9]{6})\](.*?)\[/color\]#si"; $search[] = "#\[size=([1-6]{1})\](.*?)\[/size\]#si"; $search[] = "#\[email\]([a-z0-9\._-]{1,})+@([a-z0-9\._-]{1,})+\.([a-z]{2,4})\[/email\]#si"; $search[] = "#\[email=\” ([a-z0-9\”_-]{1,})+@([a-z0-9\”_-]{1,})+\”([a-z]{2,4})\”\](.*?)\[/email\]#si"; ... $replace[] = '<font color="#\1">\2</font>'; $replace[] = '<font size="\1">\2</font>'; $replace[] = '<a href="mailto://\1@\2.\3">\1@\2.\3</a>'; $replace[] = '<a href="mailto:\1@\2.\3">\4</a>'; ... $text = preg_replace($search, $replace, $text); Разбираем выше написанный код. Создаем два массива $search и $replace. В первом записано регулярное выражение, которое ищется в тексте, а во втором на что нужно заменить соответственно. Я думаю идея понятна, так что сможете сами сделать для своего сайта любые коды, причем не только BB, но можете еще придумать и свои. Или воспользоваться вот этими: http://wackowiki.com/WackoDokumentacija/WackoSintaksis?v=xya
    Автор темы: mr.Slink, 8 май 2010, ответов - 2, в разделе: PHP
  9. mr.Slink
    Воть: [ATTACH]
    Сообщение от: mr.Slink, 4 май 2010 в разделе: PW Документация
  10. mr.Slink
    Сообщения профиля

    ???

    ???
    Сообщение в профиле пользователя PONT от mr.Slink, 4 май 2010
  11. mr.Slink
    Особенности кода: Контекстный поиск отдельных слов, введенных через пробел в строке запроса Подсветка найденных фрагментов Сортировка по цене или по наименованию Постраничный вывод, номера страниц выводятся сверху и снизу <?php // подключение к базе MySql require_once($_SERVER['DOCUMENT_ROOT'].'/config.php'); // если передан поисковый запрос if($q){ $ar_q=explode(" ", $q); $add_sql=''; for($i=0;$i<count($ar_q);$i++) $add_sql.=' ((locate("'.strtolower(addslashes($ar_q[$i])).'",lower(price.name))>0) or'. ' ("'.strtolower(addslashes($ar_q[$i])).'"=lower(price.kod_prodact))) and'; $add_sql=' WHERE'.$add_sql.' ost<>"нет"'; $add_q=($q?'&q='.urlencode($q):''); }else{ $add_sql=' WHERE ost<>"нет"'; $add_q=''; } // Общее количество информации //$count = mysql_numrows(sql('SELECT * from price '.$add_sql)); $row = mysql_fetch_assoc(sql('SELECT count(*) as counter from price '.$add_sql)); $perpage = 20; // Количество отображаемых данных из БД на одной странице $count=intval($row['counter']); // общее кол-во товаров if($count){ $pages_count = ceil($count / $perpage); // Количество страниц // Если номер страницы оказался больше количества страниц if ($page > $pages_count) $page = $pages_count; $start_pos = ($page - 1) * $perpage; // Начальная позиция, для запроса к БД $bar=link_bar($page, $count, $pages_count, 8); echo $bar; // сортировка по наименованию или цене $ord = @$_GET['ord']; if(($ord<>'name')&&($ord<>'price'))$ord='name'; if($ord=='price'){ print "<h3><a href=\"".$_SERVER['PHP_SELF'].'?page='.$page.$add_q."\">Наименование</a></h3> ↓Цена<a href='#price'><sup>*</sup></a>&nbsp;\n"; $add_q.='&ord=price'; }else print "<h3>↓Наименование</h3> <a href=\"".$_SERVER['PHP_SELF'].'?page='.$page.$add_q."&ord=price\">Цена</a>&nbsp;\n"; // Вывод информации из базы данных $result = sql('SELECT * from price '.$add_sql.' ORDER BY '.$ord.' LIMIT '.$start_pos.', '.$perpage); while ($row = mysql_fetch_assoc($result)) { $name=($q?preg_replace("/(".str_replace('/','\/',$q).")/si",'<font color=red>\\1</font>',htmlspecialchars($row['name'])):htmlspecialchars($row['name']));// Подсветка print "<h3 id='n".$row['id']."'>".$name."</h3> ".number_format($row['price'], 0, '.', ' ')." руб."; // цена } echo "&nbsp;<br clear=all />$bar<span class='it'>".($q?"Найдено по запросу":"Всего")." <b>".number_format($count, 0, '.', ' ')."</b> товаров.</span>"; }else print "<h3>По вашему запросу ничего не найдено!</h3>"; ?> Функция вывода постраничной навигации: <?php function link_bar($page, $count, $pages_count, $show_link) {global $add_q; // $show_link - это количество отображаемых ссылок; // нагляднее будет, когда это число будет парное // Если страница всего одна, то вообще ничего не выводим if ($pages_count == 1) return ''; $out=''; $begin = $page - intval($show_link / 2); // Сам постраничный вывод // Если количество отображ. ссылок больше кол. страниц if ($pages_count <= $show_link + 1) $show_dots = 'no'; // Вывод ссылки на первую страницу if (($begin > 2) && ($pages_count - $show_link > 2)) $out.='<a href="'.$_SERVER['PHP_SELF'].'?page=1'.$add_q.'" title="в начало"> &lt;&lt; </a> '; for ($j = 0; $j <= $show_link; $j++) // Основный цикл вывода ссылок { $i = $begin + $j; // Номер ссылки // Если страница рядом с началом, то увеличить цикл для того, // чтобы количество ссылок было постоянным if ($i < 1) continue; // Подобное находится в верхнем цикле if (!isset($show_dots) && $begin > 1) { $out.=' <a href="'.$_SERVER['PHP_SELF'].'?page='.($i-1).$add_q.'"><b>...</b></a> '; $show_dots = "no"; } // Номер ссылки перевалил за возможное количество страниц if ($i > $pages_count) break; if ($i == $page) $out.=' <a><b>'.$i.'</b></a> '; else $out.=' <a href="'.$_SERVER['PHP_SELF'].'?page='.$i.$add_q.'">'.$i.'</a> '; // Если номер ссылки не равен кол. страниц и это не последняя ссылка if (($i != $pages_count) && ($j != $show_link)) $out.=' ';// Разделитель ссылок // Вывод "..." в конце if (($j == $show_link) && ($i < $pages_count)) $out.=' <a href="'.$_SERVER['PHP_SELF'].'?page='.($i+1).$add_q.'"><b>...</b></a> '; } // Вывод ссылки на последнюю страницу if ($begin + $show_link + 1 < $pages_count) $out.=' <a href="'.$_SERVER['PHP_SELF'].'?page='.$pages_count.$add_q.'" title="в конец"> &gt;&gt; </a>'; return "\n".$out."\n"; } // Конец функции ?>
    Автор темы: mr.Slink, 28 апр 2010, ответов - 1, в разделе: PHP
  12. mr.Slink
    Этот пример класса строит карту сайта на основании дерева каталогов текущего сайта. Бесполезен для динамических сайтов. <?php /** * Class to generate the sitemap ( output a dir structure) * Thsi class outputs the result in XMl or displays the result on the browser * @author Rochak Chauhan */ class Sitemap { private $_dirArray = array() ; private $_fileArray = array() ; private $_dirName = '/'; private $_nameArray = array(); private static $_flag = true; private $_nodeFlag = true; private $_dom = ''; private $_root = ''; private $_fileNode = ''; private $_dirNode = ''; private $_childDirNode = ''; /** * Contruction fucntion * @param string $dirName * @return void */ public function __construct($dirName) { if (trim($dirName) != '') $this->_dirName = trim($dirName); } /** * Function to convert time in secs into mins * @param $timeInSec int * $return string */ public function convertSecToMins($timeInSec) { if( $timeInSec < 60 ) { if( $timeInSec > 1) $secString = "secs"; else $secString = "sec"; $timeTaken = "$timeInSec $secString"; } else { $seconds = ($timeInSec % 60); $minutes = ($timeInSec/60); $minutes = sprintf("%01.0f", $minutes); if( $minutes > 1) $minString = "mins"; else $minString = "min"; if( $seconds > 1) $secString = "secs"; else $secString = "sec"; $timeTaken = "$minutes $minString $seconds $secString"; } return trim($timeTaken); } /** * Function to read a directory recursively and finds a string in all the files. * it also returns the number of times a sting was found in a file * @param $path string * @return mixed */ public function readDirectory($path = '') { if (trim($path) == '') $path = $this->_dirName; $returnArray = array(); $handle = @opendir($path); while ($file = @readdir($handle) ) { if (is_dir($path.$file) && $file != "." && $file != "..") { $sub_dir = $path . $file . "/" ; array_push($this->_dirArray, $sub_dir); $this->readDirectory($sub_dir); } elseif (is_file($path.$file) && $file != "." && $file != "..") { $sub_dir = $path . $file ; array_push($this->_fileArray, $sub_dir); } } $returnArray = array($this->_dirArray, $this->_fileArray ); return $returnArray; } /** * This function generates the sitemap * @return mixed */ public function generateXmlSiteMap($writeToFile = false) { $mainArray = $this->readDirectory(''); $fileArray = $mainArray[1]; $this->startDomXml('sitemap'); for ($i=0; $i < count($fileArray); $i++) { $fileName = trim(substr(strrchr($fileArray[$i], '/'), 1)); $dirName = trim(str_replace($fileName, '', $fileArray[$i])); $this->populateArray($dirName); } $foldersInRootDir = $this->getFoldersInRootDir(); foreach ($this->_nameArray as $name=>$key) { $this->generateNodes($name, $key , $foldersInRootDir); } if ($writeToFile) { $fp = fopen('xmlOutput.xml', 'w+') or die("<B>ERROR: </B> Failed to open file for writing."); fwrite($fp, $this->_dom->saveXML()) or die("<B>ERROR: </B> Failed to write contents to the file."); fclose($fp); echo "Content written to file: <a href='xmlOutput.xml'> Click to open.</a>"; } else { return $this->_dom->saveXML(); } } /** * This function generates the nodes * @param string $name * @param array $foldersInRootDir * @param array $key * @return void */ private function generateNodes($name, $key, $foldersInRootDir) { $childDirArray = $this->getChildDir($name); /*echo "<pre>"; echo $name."<br>"; print_r($foldersInRootDir); print_r($this->_dirArray); print_r($childDirArray); echo "<HR>";*/ if (in_array($name, $foldersInRootDir)) { $this->createDirNode('dirname', $name); for ($i=0; $i < count($key); $i++) { $this->createFileNode('filenode', $key[$i]); } if (count($childDirArray)) { for ($i=0; $i < count($childDirArray); $i++) { $this->createDirNode('dirname', $childDirArray[$i], true); $this->generateNodes($childDirArray[$i], $key, $this->_dirArray); } } } } /** * This fucntion creates the instance of DOM Xml object * * @return void */ private function startDomXml($rootNodeName) { $this->_dom = new DOMDocument('1.0'); $this->_dom->formatOutput = true; $this->_root = $this->_dom->createElement($rootNodeName); $this->_root = $this->_dom->appendChild($this->_root); } /** * This function creates a dir node in the xml file * @param string $dirNode * @return void */ private function createDirNode($dirNode, $value, $isChildNode = false, $appendToChildNode = false) { if (!is_object($this->_dom)) { die ("<B>ERROR:</B> Cannot call fucntion: ".__FUNCTION__." without creating dom xml object"); } else { if ($appendToChildNode) $node = $this->_childDirNode; else $node = $this->_dirNode; if ($isChildNode) { $this->_childDirNode = $this->_dom->createElement($dirNode, $value); $this->_childDirNode = $node->appendChild($this->_childDirNode); } else { $this->_dirNode = $this->_dom->createElement($dirNode, $value); $this->_dirNode = $this->_root->appendChild($this->_dirNode); } } } /** * This function creates a file node in the xml file * @param string $fileNode * @return void */ private function createFileNode($fileNode, $value, $appendToChildNode = false) { if (!is_object($this->_dom)) { die ("<B>ERROR:</B> Cannot call fucntion: ".__FUNCTION__." without creating dom xml object"); } else { if ($appendToChildNode) { $this->_fileNode = $this->_dom->createElement($fileNode, $value); $this->_fileNode = $this->_childDirNode->appendChild($this->_fileNode); } else { $this->_fileNode = $this->_dom->createElement($fileNode, $value); $this->_fileNode = $this->_dirNode->appendChild($this->_fileNode); } } } /** * This function returns the names of the folder inside the parent dir * @param string $parentDir * @access private * @return array */ public function getChildDir($parentDir) { $returnArray = array(); foreach ($this->_dirArray as $tmp) { if (substr_count($tmp, $parentDir)) { $dirToBeAdded = substr($tmp, (strpos($tmp, $parentDir)+strlen($parentDir)) ) ; if ( trim($dirToBeAdded) != '' && substr_count($dirToBeAdded, '/') == 1) { $returnArray[] = $parentDir.$dirToBeAdded; } } } return $returnArray; } /** * This function returns the name(s) of all folders in the root/parent dir * @param string $rootdir * @return array */ private function getFoldersInRootDir() { $returnArray = array(); foreach ($this->_dirArray as $dir) { $tmpArray = explode('/', $dir); if (isset($tmpArray[1])) { if (!in_array($this->_dirName.$tmpArray[1]."/", $returnArray)) array_push($returnArray, $this->_dirName.$tmpArray[1]."/"); } } return $returnArray; } /** * This function populated the array for dir/file * @param array $dirName * @return void */ private function populateArray($dirName) { $fileArray = $this->_fileArray; for ($i=0; $i < count($fileArray); $i++) { $dirPath = substr($fileArray[$i], 0, strrpos($fileArray[$i], '/')).'/'; if (trim($dirName) == trim($dirPath)) $tempArray[] = trim(str_replace($dirPath, '', $fileArray[$i])); } $this->_nameArray[$dirName] = $tempArray; } } ?>
    Автор темы: mr.Slink, 28 апр 2010, ответов - 0, в разделе: PHP
  13. mr.Slink
    Очень часто программисты беспокоятся о качестве кода и о скорости его работы. Пользователям же важен размер загружаемых страниц. Загружая "легкие" страницы, пользователи в одном из случаев экономят время(счастливые обладатели модемов), в другом случае - траффик(ADSL). Потому рассмотрим простой пример на PHP, который позовляет корректировать исходный текст страницы, которую выводим. Для этого будем использовать стандартную функцию РНР - ob_start(). Используя эту функцию мы можем получить доступ ко всему исходному потоку, который отправляем пользователю и подкорректировать его так как нам нужно, удалив из HTML - все ненужное. Работу функции можно рассмотреть на простом примере: <?php /* передаем функции compress_page управление исходным потоком */ ob_start('compress_page'); ?> <!-- здесь весь xhtml контент --> <? /* конец управления буфером и вывод контента */ ob_end_flush(); /* функция которая избавляется от всех ненужных сочетаний символов */ function compress_page($buffer) { $search = array('/>[^S ]+/s','/[^S ]+</s','/(s)+/s'); $replace = array('>','<','1'); return preg_replace($search, $replace, $buffer); } ?> Следует отметить что при вызове функции ob_start в качестве параметра мы передаем функцию, которая будет обрабатывать исходный поток. Также чтобы очистить поток, можно воспользроваться функцией ob_end_clean. При неудачном вызове каждой их этих функций, получаем FALSE. ob_end_flush() - возвращает исходный буфер и закрывает буфферизацию. Теперь обработка исходного текста страницы легко может быть откорректирована программистом. Автор: Макагон Сергей
    Автор темы: mr.Slink, 28 апр 2010, ответов - 0, в разделе: PHP
  14. mr.Slink
    Сейчас на сайте 2 гостей и 3 новостей Смешно звучит, правда? А ведь такие уродливые сочетания встречаются на очень многих сайтах. И если в английском языке достаточно написать что-то типа day(s), byte(s) и это будет смотреться вполне нормально, то в русском языке в конструкциях "число + слово" обязательно придется учитывать склонения. Безумные извраты типа "гостя(ей)" и "новость(ей)" я даже не рассматриваю, за такое надо лишать доступа к компьютеру навсегда. Чтобы писать по-русски можно использовать следующую универсальную функцию: <?php function num2word($num,$words) { $num=$num%100; if ($num>19) { $num=$num%10; } switch ($num) { case 1: { return($words[0]); } case 2: case 3: case 4: { return($words[1]); } default: { return($words[2]); } } } ?> Параметры вызова: $num - число, $words - массив склонений нужного слова. Как формируется массив вы можете посмотреть на примерах. <?php // Гостей $num1=2; $words1=Array("гость", "гостя", "гостей"); // Новостей $num2=3; $words2=Array("новость", "новости", "новостей"); // Написать по-русски echo "Сейчас на сайте "; echo $num1." ".num2word($num1,$words1); // сколько гостей echo " и "; echo $num2." ".num2word($num2,$words2); // сколько новостей ?> Результат работы скрипта: Сейчас на сайте 2 гостя и 3 новости Чтобы было удобнее формировать массивы со склонениями, запомните ряд чисел 1-2-5, а потом мысленно подставляйте их в массив: (один "рубль", два "рубля", пять "рублей") или (одна "новость", две "новости", пять "новостей"). Автор: ManHunter
    Автор темы: mr.Slink, 28 апр 2010, ответов - 0, в разделе: PHP
  15. mr.Slink
  16. mr.Slink
  17. mr.Slink
  18. mr.Slink
    Тема

    Aion Dev Rev 93

    rev 1663 - > 1665 Increased HP of a bunch of monsters which had too low hp … specialty from me. ;-) gameserver sql fixed ( for executing) because aion unique use foreign keys … rev 1652 -> 1662 added + cleanups and a hugh glitch from unique fixed <_< 1640 -> 1651 + typos from unique fixed + cleanedup. 1652 will follow fast corrections 1635 - > 1638 added + allot cleanups and typo fixes from aion unique 1625 -> 1635 added + typo fixes from unique [84] 1598 -> 1624 added [83] rev 1598 last files added + cleanups + typo fix [82] 1584 -> 1598 added [81] rev 1581 - > 1583 added and fixed [80] rev 1561 -> 1580 added [79] rev 1550 -> 1560 implented + allot xml and java cleanups [78] 1542 - > 1549 added [77] not used imports removed [76] rev 1541 added + different memory in use output. since the one from aion uniq... [75] more xml cleanup to reduce memory usage and loading speed (more will follow) [74] rev 1532 till 1540 added. several cleanups and xmls speed up [73] this will be ower new xml style [72] - more flexible name, title, message length check in mail sending. Now it wil... some xml cleanups + added bind points for abbys [70] memory saving on game and loginserver it reduce allot memory now. more memory... [69] drops tables fixed for my friend (magenik)so you cant loadup double spawns it... 68] small typo fix. and more walker removed on static data [67] rev 1528 > 1529 added and a small fix [66] rev 1516 > 1528 implented cant test for errors now. [65] several corrections for distance, threadpool. disabled walker i want to know ... [64] rev 1513 1514 1515 added + small change for console print. and cleans [63] rev fixes my bad. we have only 1 error left its not a big deal. i will fix it... [62] till rev 1512 commited + corrctions [61] rev fix sorry guys [60] small corrections [59] removed one line because its ugly and i dont like it [58] typo on classpath corrected [57] rev 1511 added and some changes for loginserver (sorry magenik) will change ... [56] 1507 till 1510 implented [55] changed log4j console print [54] allot cleanups. corrected allot log outputs. and allot java cleaned ~fixes an... [53] Revision Fix [52] [51] updated corrected till rev 1506. [50] 1484 till 1490 implented [49] till rev 1474 till 1484 added from unique + fixes and cleans. [48] Recommended revision 47 [47] Revert Rev 45 due errors Update from rev 1471 to 1487 with our Regular Code Cleanup Godstone socketing... [45] Fixed NPE for LegionRanking [44] xml part 2 [43] most xmls cleaned out not all yet i will the rest tomorrow [42] Added Monsters Spawn for Testing Purpose [41] fix for elim tragedy quest wrong monster id to hunt [40] typo fixed [39] removed on sanctum script handeld now by script [38] [Skill engine] Open aerial effect implemented (Aerial Lockdown, Binding Rune,... [37] Manastone removal implemented [36] fixed if you attack the other race you dont lose exp when you die. [35] total exp for group fixed. (thx x-AcT for the base) [34] 2 sanctum quests added (not tested if error tell me) [33] get size of storage correctly in some packets (should fix some ArrayIndexOutO... [32] loginserver cleanedout + messages corrected + some gameserver messages corrected [31] Skill level display fix. [30] cleanout +fix for starting items not being saved [29] knownupdate task small change [28] see npc distance changed from 80 to 120 because of runspeed 200 admin command... [27] serieus those guys on aionunique are in love with tab spaces. retards [26] small correction to prevent multiple teleport task scheduling + cleanout what... [25] typo fixed for itemcount [24] more cleans [23] barring the gate work arround (thx evilgenx) [22] Recommended revision 21 (everything work perfect with lastest rev) [21] Quest Fix : Delivering Pernos's Robe http://www.aionarmory.com/quest.aspx?id=... [20] typo fixed [19] fix for decreasing items by itemid from multiple stacks in storage [18] more cleans [17] small cleanup on player [16] fixed kinah decreasing during selling of items (still unstable) [15] SVN Cleanup License Periodic Item saving [14] Added Fly in Eracus temple [13] Fixed DuelService NPE. [12] more files cleaned and corrected [11] more cleans less mem in use reduced to 60% almost now [10] missing sanctum teleport statuas added [9] SpeedHack patch (@sphinx) what this patch do: + it will prevent and disconnec... [8] New Droplist.sql added Some Abyss Drops [7] small cleanup [6] compiler fixed from 1.5 to 1.6 [5] builds blanks removed [4] more cleans [3] some small changes [2] mysql lib updated because 1.11 has some problems that are fixed in 1.12 18:33 UTC View » [1] Initial Import Скачать с depositfiles.com Скачать с mediafire.com
    Автор темы: mr.Slink, 26 апр 2010, ответов - 2, в разделе:
  19. mr.Slink
  20. mr.Slink