Просмотр полной версии : [www] CSWOWD (форк)
Автор проекта: Chestr (DiSlord)
Решил поднять форк этого проекта, т.к. автор, к сожалению, уже давненько не занимается сайтом. В первую очередь внёс несколько своих давнишних патчей (читайте чейнджлог).
Главная страница форка: http://code.google.com/p/cswowd-fork
SVN: http://cswowd-fork.googlecode.com/svn/trunk
Внимание! На форке представлена только папка cswowd с оригинального SVN, поэтому скули и картинки качайте с родного репозитория проекта!!!
Дополнительные файлы можете найти тут, в этой теме. Постараюсь переносить все полезности в аттач первого поста.
За обновление базы спеллов отдельное спасибо Konctantin и TOM_RUS!
Обновление таблиц от NeatElves: http://ytdb.ru/attachment.php?attachmentid=357&d=1265198304
Feel the Power
09.12.2009, 00:02
Также под вопросом введение странички правил при регистрации. Т.е. при регистрации вылазит окошечко с правилами. Необходимо прочитать его, поставить галку, нажать на кнопку и только в том случае, если галка поставлена - появится форма регистрации.
Ваши мысли по этому поводу?
Моё мнение:
Страничка с правилами нужна (для особо умных игроков, которые выискивают любую лазейку). Ну или в крайнем случае её можно сделать опциональной.
NeatElves
09.12.2009, 00:57
Что сразу вспомнил, - в копилку:
Index: cswowd/include/functions.php
================================================== =================
--- cswowd/include/functions.php (revision 340)
+++ cswowd/include/functions.php (working copy)
@@ -1223,9 +1223,9 @@
function getAllowableClass($mask)
{
global $gClassType;
- $mask&=0x5DF;
+ $mask&=0x5FF;
// Return zero if for all class (or for none
- if ($mask == 0x5DF OR $mask == 0)
+ if ($mask == 0x5FF OR $mask == 0)
return 0;
return getListFromArray_1($gClassType, $mask);
}
Index: cswowd/module/show/show_quest.php
================================================== =================
--- cswowd/module/show/show_quest.php (revision 340)
+++ cswowd/module/show/show_quest.php (working copy)
@@ -95,7 +95,7 @@
echo "<a style='float: right;' href=\"?s=q&ZoneID=".$quest['ZoneOrSort']."\">".getAreaName($quest['ZoneOrSort'])."</a>";
else
echo "<a style='float: right;' href=\"?s=q&SortID=".(-$quest['ZoneOrSort'])."\">".getQuestSort(-$quest['ZoneOrSort'])."</a>";
- echo "$lang[quest_level] $quest[QuestLevel]</td></tr>";
+ echo "<br>$lang[quest_level] $quest[QuestLevel]</td></tr>";
echo "<tr><td>$lang[obtained_at_level] $quest[MinLevel]</td></tr>";
@@ -111,6 +111,8 @@
renderReqCollect($quest['ReqItemId2'],$quest['ReqItemCount2'],$q_status?$q_status['itemcount2']:0);
renderReqCollect($quest['ReqItemId3'],$quest['ReqItemCount3'],$q_status?$q_status['itemcount3']:0);
renderReqCollect($quest['ReqItemId4'],$quest['ReqItemCount4'],$q_status?$q_status['itemcount4']:0);
+ renderReqCollect($quest['ReqItemId5'],$quest['ReqItemCount5'],$q_status?$q_status['itemcount5']:0);
+ renderReqCollect($quest['ReqItemId6'],$quest['ReqItemCount6'],$q_status?$q_status['itemcount6']:0);
}
###
### Рек убить
не помешали бы комментарии как на вовхеде, помнится давно в оригинальной теме были патчи и страницу новостей, а также ввести шкурку Дмитрия "Айдин", оригинальная и отлично работает)
Дмитрий "Айдин"
09.12.2009, 07:44
Я готовлю пару обновленных шкурок, так что они там будут )
не помешали бы комментарии как на вовхеде, помнится давно в оригинальной теме были патчи и страницу новостей, а также ввести шкурку Дмитрия "Айдин", оригинальная и отлично работает)
Шкурка будет, а вот комментарии... У меня старого патча нет, а самому мне написать комменты - слабо =)))
Вечером внесу фикс NeatElves (внесено).
Комментарии:
http://paste2.org/p/554017
Применять из папки module.
Файл comments/show_comments.php должен быть в кодировке UTF-8.
SQL в базу:
CREATE TABLE `wowd_comments` (
`id` int(11) NOT NULL auto_increment,
`type` int(11) NOT NULL,
`entry` int(11) NOT NULL,
`comment` text NOT NULL,
`name` varchar(16) NOT NULL,
`date` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
Вид легко изменяется в вышеназванном файле.
За говнокод не пинайте, строчил буквально на коленке :D
PS патч для сорцов из репозитория cswowd, на свн форка не могу попасть
Комментарии:
http://paste2.org/p/554017
Применять из папки module.
Файл comments/show_comments.php должен быть в кодировке UTF-8.
SQL в базу:
CREATE TABLE `wowd_comments` (
`id` int(11) NOT NULL auto_increment,
`type` int(11) NOT NULL,
`entry` int(11) NOT NULL,
`comment` text NOT NULL,
`name` varchar(16) NOT NULL,
`date` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
Вид легко изменяется в вышеназванном файле.
За говнокод не пинайте, строчил буквально на коленке :D
PS патч для сорцов из репозитория cswowd, на свн форка не могу попасть
Пара вопросов:
1) Комменты оставляют любые юзеры или только зареганые?
2) На каких старицах?
== я не смотрел ещё патч ==
3) Почему не можешь попасть на форк (ну вообще - это не проблема, что патч на оригинальные сорсы - накатятся легко)?
1. Любые
2. /*
Comments:
1 - items
2 - npcs
3 - spells
4 - quests
5 - gobjects
6 - faction
7 - itemsets
*/
3. Вчера не мог, выдавалась ошибка 404, сейчас нормально. Вечером проверю под форк.
Плёхо... Удалять, тоже нет возможности, как я понимаю? Надо думать дальше тогда =)
У себя делал таблицу респауна рар мобов + отображение неотреспавненных мобов на карте поинтами других цветов. Надо?
У себя делал таблицу респауна рар мобов + отображение неотреспавненных мобов на карте поинтами других цветов. Надо?
Ты выкладывай, а дальше рассмотрим ;)
P.S: В связи с большим завалом - внесением очередных правок займусь на выходных.
Пара вопросов в тему:
1) Надо ли делать вкладку с отображением ентри для разных сложностей для моба?
2) Ну и до сих пор жду комментов вот этого:
Далее планирую добавить отображение класса моба в подсказке о нём (а также на его странице), отображение его урона, возможно, времени его репавна, а также информацию о его скрипте. Также под вопросом введение странички правил при регистрации. Т.е. при регистрации вылазит окошечко с правилами. Необходимо прочитать его, поставить галку, нажать на кнопку и только в том случае, если галка поставлена - появится форма регистрации.
Всё можно сделать ОПЦИОНАЛЬНО (т.е. с возможностью включения/отключения в конфиге)!
Респаун тут, конечно просто как 5 копеек. Второе на сонный мозг найти не могу. Кстати, вижу вы тут про комментарии говорите, могу помочь их сделать древовидными с оцениванием.
Респаун тут, конечно просто как 5 копеек. Второе на сонный мозг найти не могу. Кстати, вижу вы тут про комментарии говорите, могу помочь их сделать древовидными с оцениванием.
Если честно, не вижу никакого смысла в оценивании комеентариев =)
Лучше бы их сделать по логину и выбору перса - вот это стоящее дело...
Оказываеся!!!
rev.337
Исправление формулы чистого дамага + отображение класса моба - автор KiriX
Отображение типа скрипта моба (евентАИ, СД2, генерик) - автор KiriX
Так что не нуждается во внесении =)
Сразу хочу сказать, что для меня CSWOWD - прежде всего удобный инструмент просмотра, поиска по базе и возможность сделать первые выводы о баг-репорте.
Поэтому под вопросом добавление следующего:
1) Фазы НПС (чтобы сразу было видно в какой он фазе)
2) Отображение дамаг-мультипликатора
Ваши мысли по сему поводу (опять-таки - всё это можно сделать опциональным)?
Сделано...
Если честно, не вижу никакого смысла в оценивании комеентариев =)
Лучше бы их сделать по логину и выбору перса - вот это стоящее дело...
А я вижу, пример тому вовхеад. Полезные комментарии имеют больший рейтинг и выделяются на основе основных, оттуда игрокам проще черпать нужную информацию. ( Они сначала зелененькое читать будут, лишь потом начнут серое читать - и то не факт ). Но если продолжать идею все опции через конфиг - то и это туда вынести можно.
По логину и выбора перса - можно. Сегодня начну делать.
Нужно повспоминать свои старые мысли относительно cswowd.
1) Отображение top достижений ( по очкам/великие подвиги ).
2) Незначительное дополнение в армори - информация по хонору/ап. Вообще наверно стоило бы переделать отображение репутации, как вкладку в параметрах чара и туда же хонор засунуть.
3) В поиске, пример того же чара при вводе % - выводятся все записи. Возможно стоит какие ограничения по поиску сделать.
Там есть зачаток личного кабинета user_kabinet.php - может развить эту тему? Было бы солидно иметь свой кабинет, а не использовать сторонние..
Там есть зачаток личного кабинета user_kabinet.php - может развить эту тему? Было бы солидно иметь свой кабинет, а не использовать сторонние..
Зачаток есть и на mangos.ru даже есть пачт с использованием этого зачатка в качестве разрешения на написания комментов.
Правда патч уже очень "лохматый"...
Зачаток есть и на mangos.ru даже есть пачт с использованием этого зачатка в качестве разрешения на написания комментов.
Правда патч уже очень "лохматый"...
Да мелковатый "зародышь" кабинета согласен - но идентификация есть, остальное дописать по своим потребностям может каждый в принципе.
Подскажите в чем может быть проблема - перестал отображаться список онлайна - не могу понять почему, хотя до этого работал исправно. Сейчас вот такая картинка. Код 1-1 с вашего репозитория. Отображается только общая цифра онлайна сверху, а список не выводится.
Rage Hunter
15.12.2009, 14:06
А как на счет обновления под версию 3.2.2 ?
BombermaG
15.12.2009, 17:06
Да мелковатый "зародышь" кабинета согласен - но идентификация есть, остальное дописать по своим потребностям может каждый в принципе.
Подскажите в чем может быть проблема - перестал отображаться список онлайна - не могу понять почему, хотя до этого работал исправно. Сейчас вот такая картинка. Код 1-1 с вашего репозитория. Отображается только общая цифра онлайна сверху, а список не выводится.
Рестартни апатч.
По поводу ошибки - скорее всего несоответствие версий БД...
По поводу обновы под 3.2.2 - спеллы имеются ввиду. Тут хз - в этом неоспоримый мастер Chestr, сомневаюсь, что у меня получится...
У меня есть улучшенный "топ",т.е. в нем топ по силе,уму,защите и т.д.
Правда делал за 5 мин и много говнокода,т.е. нет локализации а русский язык забит в самом коде.
Нужно?
У меня есть улучшенный "топ",т.е. в нем топ по силе,уму,защите и т.д.
Правда делал за 5 мин и много говнокода,т.е. нет локализации а русский язык забит в самом коде.
Нужно?
Выкладывай - будет время - рассмотрю =)
http://paste2.org/p/565154
Ах да,там еще отдельный топ для 1-19 лвлов..
Зы у нас для 1-19 доп бонусы и т.п.
ЗЫ Очень бы хотелось видеть инфу для разработчиков в базе знаний,т.е. в спелле допустим смотреть эффект,ауры,все спелы с такой же иконкой,тот же спелл других ранков и т.п.
http://paste2.org/p/565154
Ах да,там еще отдельный топ для 1-19 лвлов..
Зы у нас для 1-19 доп бонусы и т.п.
ЗЫ Очень бы хотелось видеть инфу для разработчиков в базе знаний,т.е. в спелле допустим смотреть эффект,ауры,все спелы с такой же иконкой,тот же спелл других ранков и т.п.
Сорри, сейчас времени на проект совсем нет =(
Эффекты спеллов и так можно смотреть (правда данные устарели). В остальном (даже как разработчик базы, пусть сейчас и отошёл от дел) не вижу смысла. Выберите спелл - он выведет вам всех мобов, которые его кастуют... И зачем все спеллы с одной иконкой - не вижу смысла никакого (хотя сделать это проще простого)...
По поводу обновы под 3.2.2 - спеллы имеются ввиду. Тут хз - в этом неоспоримый мастер Chestr, сомневаюсь, что у меня получится...
Возможно скоро будет обнвление до 3.2.2 я написал уже конвертор dbc->sql, теперь переношу все данные из dbc которые хранятся в скриптах (локлизация), в базу. Наверное до нового года залью апдейт.
Возможно скоро будет обнвление до 3.2.2 я написал уже конвертор dbc->sql, теперь переношу все данные из dbc которые хранятся в скриптах (локлизация), в базу. Наверное до нового года залью апдейт.
DiSlord, вы можете просмотреть патчи, которые добавлены в форк. Я сейчас реализовал просмотр мобов в дрёгих сложностях (difficulty_entry), код кривоват, но уж как умею, очень нравится Ваш сайт =)
NeatElves
01.01.2010, 23:50
Правка разных типов евентаи(иначе выводит "сд2"):
Index: cswowd/include/creature_table.php
================================================== =================
--- cswowd/include/creature_table.php (revision 340)
+++ cswowd/include/creature_table.php (working copy)
@@ -78,6 +78,12 @@
if ($npc['ScriptName']=="" && $npc['AIName']=="") {$npcscr='No script';}
else if ($npc['AIName']=="EventAI" && $npc['ScriptName']=="") {$npcscr='EventAI';}
+ else if ($npc['AIName']=="NullAI" && $npc['ScriptName']=="") {$npcscr='NullAI';}
+ else if ($npc['AIName']=="AggressorAI" && $npc['ScriptName']=="") {$npcscr='AggressorAI';}
+ else if ($npc['AIName']=="ReactorAI" && $npc['ScriptName']=="") {$npcscr='ReactorAI';}
+ else if ($npc['AIName']=="GuardAI" && $npc['ScriptName']=="") {$npcscr='GuardAI';}
+ else if ($npc['AIName']=="PetAI" && $npc['ScriptName']=="") {$npcscr='PetAI';}
+ else if ($npc['AIName']=="TotemAI" && $npc['ScriptName']=="") {$npcscr='TotemAI';}
else if ($npc['ScriptName']=="generic_creature") {$npcscr='Caster';}
else if ($npc['ScriptName']<>"" && $npc['AIName']=="EventAI") {$npcscr='EventAI + SD2';}
else {$npcscr='SD2';}
NeatElves
09.01.2010, 19:12
На скорую руку, будет писать в заголовке квеста принадлежность:
Сосуды Вечности
<Рейд>
Сторона: Обе
Index: cswowd/lang/lang.en.php
================================================== =================
--- cswowd/lang/lang.en.php (revision 340)
+++ cswowd/lang/lang.en.php (working copy)
@@ -200,6 +200,7 @@
# Quest info
'one_of_this_items' => 'One of this items',
'obtained_at_level' => 'Obtained at level',
+'required_races' => 'Side:',
'quest_level' => 'Quest level:',
'provided' => 'Provided:',
'provided_desc' => 'Provided item:',
@@ -516,6 +517,21 @@
'find_faction'=>'Search Faction',
'faction_name'=>'Faction name',
+# Race
+'required_races1101' => 'Alliance',
+'required_races690' => 'Horde',
+'required_races0' => 'Both',
+'required_races1' => 'Human',
+'required_races2' => 'Orc',
+'required_races4' => 'Dwarf',
+'required_races8' => 'Night Elf',
+'required_races16' => 'Undead',
+'required_races32' => 'Tauren',
+'required_races64' => 'Gnome',
+'required_races128' => 'Troll',
+'required_races512' => 'Blood Elf',
+'required_races1024' => 'Draenei',
+
);
?>
Index: cswowd/lang/lang.ru.php
================================================== =================
--- cswowd/lang/lang.ru.php (revision 340)
+++ cswowd/lang/lang.ru.php (working copy)
@@ -204,6 +204,7 @@
// Quest info
'one_of_this_items' => 'Одна из этих вещей',
'obtained_at_level' => 'Доступен с уровня',
+'required_races' => 'Сторона:',
'quest_level' => 'Уровень квеста:',
'provided' => 'Выдается:',
'provided_desc' => 'Эта вещь выдается когда принят квест.',
@@ -223,7 +224,7 @@
'Rew_money' => 'Деньги:',
'Rew_XP' => 'Опыт:',
'Rew_reputation' => 'Репутация:',
-'cast_spell' => 'Скастут:',
+'cast_spell' => 'Скастуют:',
'learn_spell' => 'Обучат спеллу:',
'Rew_item' => 'Вещи:',
'item_sel_and' => ' + ',
@@ -509,7 +510,7 @@
# Search Itemset dialog
'set_find'=>'Поиск набора',
-'set_not_found'=>'Нфбор не найден',
+'set_not_found'=>'Нaбор не найден',
'set_name'=>'Название',
# Search Area dialog
@@ -521,6 +522,20 @@
'find_faction'=>'Поиск фракции',
'faction_name'=>'Название',
+# Race
+'required_races1101' => 'Альянс',
+'required_races690' => 'Орда',
+'required_races0' => 'Обе',
+'required_races1' => 'Человек',
+'required_races2' => 'Орк',
+'required_races4' => 'Дварф',
+'required_races8' => 'Ночной эльф',
+'required_races16' => 'Нежить',
+'required_races32' => 'Таурен',
+'required_races64' => 'Гном',
+'required_races128' => 'Тролль',
+'required_races512' => 'Кровавый эльф',
+'required_races1024' => 'Дреней',
);
?>
Index: cswowd/module/show/show_quest.php
================================================== =================
--- cswowd/module/show/show_quest.php (revision 340)
+++ cswowd/module/show/show_quest.php (working copy)
@@ -88,6 +88,33 @@
echo "<TR><TD class=head>$quest[Title]";
if ($quest['Type'])
echo "<br><FONT size=-3><".getQuestType($quest['Type'])."></FONT>";
+ if ($quest[RequiredRaces] == 1)
+ echo "<br>$lang[required_races] $lang[required_races1]</td></tr>";
+ if ($quest[RequiredRaces] == 2)
+ echo "<br>$lang[required_races] $lang[required_races2]</td></tr>";
+ if ($quest[RequiredRaces] == 4)
+ echo "<br>$lang[required_races] $lang[required_races4]</td></tr>";
+ if ($quest[RequiredRaces] == 8)
+ echo "<br>$lang[required_races] $lang[required_races8]</td></tr>";
+ if ($quest[RequiredRaces] == 16)
+ echo "<br>$lang[required_races] $lang[required_races16]</td></tr>";
+ if ($quest[RequiredRaces] == 32)
+ echo "<br>$lang[required_races] $lang[required_races32]</td></tr>";
+ if ($quest[RequiredRaces] == 64)
+ echo "<br>$lang[required_races] $lang[required_races64]</td></tr>";
+ if ($quest[RequiredRaces] == 128)
+ echo "<br>$lang[required_races] $lang[required_races128]</td></tr>";
+ if ($quest[RequiredRaces] == 512)
+ echo "<br>$lang[required_races] $lang[required_races512]</td></tr>";
+ if ($quest[RequiredRaces] == 1024)
+ echo "<br>$lang[required_races] $lang[required_races1024]</td></tr>";
+ if ($quest[RequiredRaces] == 690)
+ echo "<br>$lang[required_races] $lang[required_races690]</td></tr>";
+ if ($quest[RequiredRaces] == 1101)
+ echo "<br>$lang[required_races] $lang[required_races1101]</td></tr>";
+ if (($quest[RequiredRaces] == 0) OR ($quest[RequiredRaces] == 1791))
+ echo "<br>$lang[required_races] $lang[required_races0]</td></tr>";
+
echo "</TH></TR>";
echo '<tr><td>';
+пару опечаток
NeatElves
19.01.2010, 16:19
Вроде получилось - подогнал player_data.php под UpdateFields (поправил опечатки)
А где взять шкурку Дмитрия Айдина?
У автора :) :) :) В приват ему напиши (http://ytdb.ru/private.php?do=newpm&u=77). :) :) :)
Konctantin
29.01.2010, 19:39
в патче блок с :+ if ($quest[RequiredRaces] == 1)
+ echo "<br>$lang[required_races] $lang[required_races1]</td></tr>";
+ if ($quest[RequiredRaces] == 2)
+ echo "<br>$lang[required_races] $lang[required_races2]</td></tr>";
+ if ($quest[RequiredRaces] == 4)
+ echo "<br>$lang[required_races] $lang[required_races4]</td></tr>";
+ if ($quest[RequiredRaces] == 8)
+ echo "<br>$lang[required_races] $lang[required_races8]</td></tr>";
+ if ($quest[RequiredRaces] == 16)
+ echo "<br>$lang[required_races] $lang[required_races16]</td></tr>";
+ if ($quest[RequiredRaces] == 32)
+ echo "<br>$lang[required_races] $lang[required_races32]</td></tr>";
+ if ($quest[RequiredRaces] == 64)
+ echo "<br>$lang[required_races] $lang[required_races64]</td></tr>";
+ if ($quest[RequiredRaces] == 128)
+ echo "<br>$lang[required_races] $lang[required_races128]</td></tr>";
+ if ($quest[RequiredRaces] == 512)
+ echo "<br>$lang[required_races] $lang[required_races512]</td></tr>";
+ if ($quest[RequiredRaces] == 1024)
+ echo "<br>$lang[required_races] $lang[required_races1024]</td></tr>";
+ if ($quest[RequiredRaces] == 690)
+ echo "<br>$lang[required_races] $lang[required_races690]</td></tr>";
+ if ($quest[RequiredRaces] == 1101)
+ echo "<br>$lang[required_races] $lang[required_races1101]</td></tr>";
+ if (($quest[RequiredRaces] == 0) OR ($quest[RequiredRaces] == 1791))
+ echo "<br>$lang[required_races] $lang[required_races0]</td></tr>";
лучше заменить на :
+
+switch($quest[RequiredRaces])
+{
+ case 1: echo "<br>$lang[required_races] $lang[required_races1]</td></tr>";
+ break;
+ case 2: echo "<br>$lang[required_races] $lang[required_races2]</td></tr>";
+ break;
+ case 4: echo "<br>$lang[required_races] $lang[required_races4]</td></tr>";
+ break;
+ case 8: echo "<br>$lang[required_races] $lang[required_races8]</td></tr>";
+ break;
+ case 16: echo "<br>$lang[required_races] $lang[required_races16]</td></tr>";
+ break;
+ case 32: echo "<br>$lang[required_races] $lang[required_races32]</td></tr>";
+ break;
+ case 64: echo "<br>$lang[required_races] $lang[required_races64]</td></tr>";
+ break;
+ case 128: echo "<br>$lang[required_races] $lang[required_races128]</td></tr>";
+ break;
+ case 512: echo "<br>$lang[required_races] $lang[required_races512]</td></tr>";
+ break;
+ case 1024: echo "<br>$lang[required_races] $lang[required_races1024]</td></tr>";
+ break;
+ case 960: echo "<br>$lang[required_races] $lang[required_races690]</td></tr>";
+ break;
+ case 1101: echo "<br>$lang[required_races] $lang[required_races1101]</td></tr>";
+ break;
+ case 0:
+ case 1791: echo "<br>$lang[required_races] $lang[required_races0]</td></tr>";
+ break;
+}
+
Кот ДаWINчи
30.01.2010, 21:09
А где взять шкурку Дмитрия Айдина?
поискал у себя и не нашел. Зато откопал кучу своих "произведений". Несколько "нейтральных" шкурок выкладываю здесь. Держите, кому надо.
Заточенные под свой сервер выкладывать не буду. Незачем.... Да и не хочу клонов.
Посты 29, 30, 31, 34 внесены. Спасибо =)
Ревизия 17:
Добавлена возможность вывода 3D модели НПС на страницу НПС.
Включается/отключается в конфиге модулей. Требуется доступ в Интренет, т.к. данные для swf беруться с сайта wowhead.com
Я тут подумал, что точно таким же образом можно реализовать показ 3D модели итема + как бы примерить его на своего перса... Надо ли? =)
ToDo: Буду пытаться самостоятельно обновить базу спеллов под 3.3.0... Есть желающие помочь? =)
NeatElves
01.02.2010, 23:19
r16, связь между квестом и лутом почтой - точно `quest_template`.`entry`, а не `quest_template`.`RewMailTemplateId` ??)
Ну вот. Тестовый, неоптимизированный вариант спеллов 3.3.0. Есть лишние поля. В общем надо тестить и искать косяки. Так что Велкам! =)
Дальше надо будет обновить ещё несколько таблиц... А пока это - тестируйте и отписывайте свои впечатления =)
P.S: Заливать консолью!!!
r16, связь между квестом и лутом почтой - точно `quest_template`.`entry`, а не `quest_template`.`RewMailTemplateId` ??)
Я просто вправил ссылку на таблицу, которой уже нет, а дальше пока не копался - видишь - у меня сегодня другие планы и дела были =)
У меня идея, сам я с ява скриптами и ajax-ом в целом мало знаком, но может сделать так, 3D модели, чтобы не сразу подгружались а при открытии свое рода спойлера.
У меня обновлена таблицы талов (для калькулятора талантов) - вечером выложу.
Дальнейший обновлений по отдельным таблицам не будет - только когда (надеюсь, благодаря вам) соберём/обновим всю базу в целом.
NeatElves, тебе отдельное спасибо ;)
P.S: А откуда данные берёшь? Из ДБЦ надеюсь? =)
NeatElves
02.02.2010, 20:36
Из них, родимых..)) Вот еще бы кто выложил все 313 рус, для сравнения..))
Кот ДаWINчи
02.02.2010, 21:08
Из них, родимых..)) Вот еще бы кто выложил все 313 рус, для сравнения..))
тебе всю папку с ДБЦ 313? Сейчас организую.
NeatElves
02.02.2010, 21:12
Если можно, пожалуйста...
Кот ДаWINчи
02.02.2010, 21:19
Все что есть версии ДБЦ залил сюда (http://ftp.filekeeper.org/download/browser.php?path=kotdawinchi%2FDBCru/).
NeatElves
03.02.2010, 14:41
Повторю все сразу, там опечатки еще правил:
wowd_achievement_category
wowd_faction
wowd_faction_template
wowd_gemproperties
wowd_glyphproperties
wowd_itemset
wowd_item_ex_cost
wowd_item_random_propety
wowd_skill_line
wowd_skill_line_ability
wowd_skill_race_class_info
wowd_spell_duration
wowd_spellfocus
wowd_spellicon
wowd_talents
wowd_zones
Про кодировку не забываем...
NeatElves
03.02.2010, 16:08
wowd_random_property_points
NeatElves
04.02.2010, 20:06
wowd_item_enchantment
NeatElves
05.02.2010, 18:26
wowd_achievement
wowd_achievement_criteria
INSERT INTO `wowd_scaling_stat_distribution` VALUES
('331', '38', '3', '7', '5', '-1', '-1', '-1', '-1', '-1', '-1', '10518', '5258', '5259', '3506', '0', '0', '0', '0', '0', '0', '80'),
('332', '45', '7', '5', '43', '-1', '-1', '-1', '-1', '-1', '-1', '6153', '3997', '3997', '2629', '0', '0', '0', '0', '0', '0', '80'),
('333', '4', '7', '32', '-1', '-1', '-1', '-1', '-1', '-1', '-1', '5996', '5996', '5258', '0', '0', '0', '0', '0', '0', '0', '80'),
('334', '45', '7', '5', '6', '-1', '-1', '-1', '-1', '-1', '-1', '6153', '3997', '3997', '5259', '0', '0', '0', '0', '0', '0', '80'),
('335', '38', '7', '31', '-1', '-1', '-1', '-1', '-1', '-1', '-1', '10518', '7888', '5259', '0', '0', '0', '0', '0', '0', '0', '80'),
('336', '45', '7', '5', '6', '-1', '-1', '-1', '-1', '-1', '-1', '6153', '3997', '3997', '5259', '0', '0', '0', '0', '0', '0', '80'),
('351', '3', '38', '7', '32', '-1', '-1', '-1', '-1', '-1', '-1', '5259', '7012', '7889', '3506', '0', '0', '0', '0', '0', '0', '80'),
('352', '3', '44', '7', '38', '-1', '-1', '-1', '-1', '-1', '-1', '5259', '3506', '7889', '7012', '0', '0', '0', '0', '0', '0', '80'),
('371', '32', '31', '7', '-1', '-1', '-1', '-1', '-1', '-1', '-1', '7266', '4106', '4789', '0', '0', '0', '0', '0', '0', '0', '80');
NeatElves
06.02.2010, 01:20
Не успел под 330а, уже надо под 332..))
NeatElves
09.02.2010, 22:14
Повтор всех выложенных для 332...
Про кодировку не забываем...
з.ы. wowd_item_ex_cost - формат старый(колонку, для рейтинга команд больше 2х2, не добавлял), wowd_scaling_stat_values - добавил поля(не подключал).
з.ы.2. Тут, пока не знаю, откуда брать инфу - wowd_creature_spells, wowd_lock, wowd_rating.
з.ы.3. wowd_itemicon - без иконок даже не брался.
Как разработчик cswowd могу дать права на нынешний репозиторий
http://svn2.assembla.com/svn/cswowd
для Kirix (пиши в лс если захочешь :))
Как разработчик cswowd могу дать права на нынешний репозиторий
http://svn2.assembla.com/svn/cswowd
для Kirix (пиши в лс если захочешь :))
если Kirix разрешит залью все сделаные его изменения на свн
NeatElves
12.02.2010, 13:02
r13, опечатка:
заменить
case 960: echo "<br>$lang[required_races] $lang[required_races690]</td></tr>";
на
case 690: echo "<br>$lang[required_races] $lang[required_races690]</td></tr>";
Кот ДаWINчи
12.02.2010, 13:04
если Kirix разрешит залью все сделаные его изменения на свн
не торопись. сперва нужно проверить всю проделанную работу в этой теме, а потом уже заливать.
Сорри давно не заходил, да как то до обнов руки все не доходят, сделал давно (еще перед новым годом) экстрактор в бд для 3.2.2
как пользоваться думаю поймете..
ЗЫ экстрактится куча других таблиц (они нужны но в новой версии вовд)
также не извлекается wowd_creature_spells - это таблица по спеллам существ когдато мне ее дал дерека, а ее он получал из дампов.
ЗЗЫ dbc файлы как и для spell_work должны быть в папке dbc.
ЗЗЫЫ если скажете какая версия dbc актуальна в данный момент и выложите их постараюсь доделать экстрактор для нее. Ну в крайнем случае выложу исходники. К большому сожалению я не следил за этим уже давно..
Наверное gerald (http://ytdb.ru/member.php?u=1577) был бы вам благодарен за таблицы под версию 1.12.1:)
Или выложите исходники если вас не затруднит.
Файлы дбц версии 1.12.1 прилагаю.
Исходники, нужно ток подправить структуры.
Да расскомментить то что нужно извлекать.
Правка к r17 (http://code.google.com/p/cswowd-fork/source/diff?spec=svn17&r=17&format=side&path=/trunk/module/show/show_npc.php):
if ($config['3d_npc']) // Вывод 3D модели НПС
{
switch ($cr['type'])
{
case 6;
echo "<object data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='model=$cr[modelid_A]&modelType=32&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
case 7;
echo "<object data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='model=$cr[modelid_A]&modelType=32&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
default;
echo "<object data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='model=$cr[modelid_A]&modelType=8&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
}
}
PS: остаётся косяк с драконами и нежитью так как у них modelType может быть и 8 и 32.
Вывод 3D модели одежды и оружия:
Правим в module/show/show_item.php
И добавляем в module/module_cfg.php: $config['3d_item'] = 1;
//************************************************** ******************************
// Вывод 3D модели НПС
//************************************************** ******************************
if ($config['3d_item'])
{
{
global $config;
mysql_select_db($config['dbName']);
$sql = mysql_query("SELECT class FROM item_template WHERE entry = '$entry'");
$class = mysql_result($sql, 0);
$sql1 = mysql_query("SELECT subclass FROM item_template WHERE entry = '$entry'");
$subclass = mysql_result($sql1, 0);
$sql2 = mysql_query("SELECT InventoryType FROM item_template WHERE entry = '$entry'");
$invtype = mysql_result($sql2, 0);
switch ($class)
{
case 2;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=$item[displayid]&modelType=1&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
case 4;
switch ($subclass)
{
case 0;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=$item[displayid]&modelType=1&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
case 1;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 2;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 3;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 4;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 6;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=$item[displayid]&modelType=1&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
}
break;
}
}
}
PS: одежда выводится на человеке - мужчине, если не нравится меняйте model на нужное вам...
Правка к r17 (http://code.google.com/p/cswowd-fork/source/diff?spec=svn17&r=17&format=side&path=/trunk/module/show/show_npc.php):
if ($config['3d_npc']) // Вывод 3D модели НПС
{
switch ($cr['type'])
{
case 6;
echo "<object data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='model=$cr[modelid_A]&modelType=32&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
case 7;
echo "<object data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='model=$cr[modelid_A]&modelType=32&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
default;
echo "<object data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='model=$cr[modelid_A]&modelType=8&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
}
}
PS: остаётся косяк с драконами и нежитью так как у них modelType может быть и 8 и 32.
Вывод 3D модели одежды и оружия:
Правим в module/show/show_item.php
И добавляем в module/module_cfg.php: $config['3d_item'] = 1;
//************************************************** ******************************
// Вывод 3D модели НПС
//************************************************** ******************************
if ($config['3d_item'])
{
{
global $config;
mysql_select_db($config['dbName']);
$sql = mysql_query("SELECT class FROM item_template WHERE entry = '$entry'");
$class = mysql_result($sql, 0);
$sql1 = mysql_query("SELECT subclass FROM item_template WHERE entry = '$entry'");
$subclass = mysql_result($sql1, 0);
$sql2 = mysql_query("SELECT InventoryType FROM item_template WHERE entry = '$entry'");
$invtype = mysql_result($sql2, 0);
switch ($class)
{
case 2;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=$item[displayid]&modelType=1&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
case 4;
switch ($subclass)
{
case 0;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=$item[displayid]&modelType=1&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
case 1;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 2;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 3;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 4;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=humanmale&modelType=16&contentPath=ht tp://static.wowhead.com/modelviewer/&blur=1&equipList=$invtype,$item[displayid]' name='flashvars'>
</object>";
break;
case 6;
echo "<object style='visibility: visible;' id='wowhead' data='http://static.wowhead.com/modelviewer/ModelView.swf' type='application/x-shockwave-flash' height='400' width='600'>
<param value='high' name='quality'>
<param value='always' name='allowscriptaccess'>
<param value='false' name='menu'>
<param name='wmode' value='transparent'>
<param value='#181818' name='bgcolor'>
<param value='model=$item[displayid]&modelType=1&contentPath=http://static.wowhead.com/modelviewer/&blur=1' name='flashvars'>
</object>";
break;
}
break;
}
}
}
PS: одежда выводится на человеке - мужчине, если не нравится меняйте model на нужное вам...
Спасибо, постараюсь добавить в ближайшее время. О проблеме типов я знал, но не было времени поправить...
Что касается оружия, спасибо за базовую реализацию, только я думаю, что стоит предоставить выбор пола и расы "манекена" пользователю =)
Правка для ревизии 17 не катит. С моделью 7 есть кричеры, которые отображаются и которые не хотят. Для 6 аналогично. Надо как-то по другому делить...
askorbin
27.02.2010, 11:58
извините за флуд, но где можно найти иконки для итемов под 3.3.2? или экстрактер
Konctantin
27.02.2010, 12:05
Total Commander + mpq plugin + XnView
или написать самому
Правка для ревизии 17 не катит.
Про шестую я упоминал, а баг с седьмой заметил уже после написания.
На вовхеде похоже мобу дополнительно выставляется значение если он гуманоид.
Для примера:
Ан'кахарский паук (http://ru.wowhead.com/?npc=30178) и Барнс <Конферансье> (http://ru.wowhead.com/?npc=16812)
Оба имеют тип 6=нежить. Но у Барнс'а в коде страницы для просмотра флеша содержится дополнительное значение
Ан'кахарский паук
ModelViewer.show({ type: 1, typeId: 30178, displayId: 28078 })
Барнс <Конферансье>
ModelViewer.show({ type: 1, typeId: 16812, displayId: 16616, humanoid: 1 })
Кот ДаWINчи
28.02.2010, 00:06
Total Commander + mpq plugin + XnView
или написать самому
Для тех, кто как я воспользовался этим набором программ и получил себе все картинки вещей под 3.3.2, необходимо обновить данные в wowd_itemicon.
ловите, но предупреждаю, что некоторые сеты остануться "под вопросом", т.к. информации о них нет в базе YTDB.
Про шестую я упоминал, а баг с седьмой заметил уже после написания.
На вовхеде похоже мобу дополнительно выставляется значение если он гуманоид.
Для примера:
Ан'кахарский паук (http://ru.wowhead.com/?npc=30178) и Барнс <Конферансье> (http://ru.wowhead.com/?npc=16812)
Оба имеют тип 6=нежить. Но у Барнс'а в коде страницы для просмотра флеша содержится дополнительное значение
Ан'кахарский паук
ModelViewer.show({ type: 1, typeId: 30178, displayId: 28078 })
Барнс <Конферансье>
ModelViewer.show({ type: 1, typeId: 16812, displayId: 16616, humanoid: 1 })
Есть идеи какую проверку можно замутить? Например, узнать что возвращает нам флэш в случае того или иного значения modelType?
Ревизии 341-342
+ Добавлен вывод типа скрипта в талице НПС
+ Единая функция вывода всплывающих тултипов
+ Единый метод кэширования полученых данных из SQL
+ Возможность вывода точки на карте по координатам:
+ Вывод данных из spell_taret_position
+ Вывод положения игрока на новых картах
+ Вывод Входа и выходи из инстанса
+ Вывод данных из spell_script_target
+ Вывод heroic имен мобов
+ Переход на версию 3.2.2
+ Большинство данных из кода перенесно в таблицы (что упростит переход на новые ревизии)
+ Калькулятор талантов не зависит теперь от вручную набитых данных
+ Переписан (очередной раз) функционал работы вывода карт
+ Переписаны js скрипты
+ Уменьшен размер
+ Возможность динамически подгружать и выполнять скрипт
+ Единый метод кэширования подгружнных данных
+ Единый способ обработки ссылок
+ Исправлена работа подсказо в IE
+ Переписан скрипт lightbox - позволяет подгрузить не только картинку
+ Карты теперь выводятсячерез lightbox (появляется модальное окошко с картой)
+ В армури сделано разбиение на страницы (подгружаются по мере необходимости)
+ Вывод инстансов днные где находится инстанс берутся по id зоны, добавлено кэширование
+ Добавлено описание инстансов на русском языке
+ При выводе фракции - вывод за убийство каких суеств ее дают и предел
+ Вывод в какую группу входит существо (kredit) при выводе NPC
+ Генерируемый HTML код приведен в соответствии с DTD HTML 4.01 Frameset
+ Добавлены методы лога SQL запросов
+ Локализация
+ Много других мелких фисксов
http://ru-mangos.ru/showthread.php?t=30
В списке скилов чара ссылка на конкретный скил чара выглядит так:
http://localhost/?skill=186&guid=$guid
Исправляем на
http://localhost/?skill=186&guid=1
@@ -77,7 +77,7 @@
// if ($skill['icon'] > 1)
// $ico = '<img src='.getSpellIcon($skill['icon']).'>';
// echo '<td class=skill_ico>$ico</td>';
- echo '<td class=skill_name><A href="?skill='.$skill['id'].'&guid=$guid">'.$skill['Name'].'</td>';
+ echo '<td class=skill_name><A href="?skill='.$skill['id'].'&guid='.$guid.'">'.$skill['Name'].'</td>';
echo '<td class=skill_bar><div class=skill_bar><b class=s1 style="width: '.$pct.'%;"></b><span>'.$text.'</span></div></td>';
echo '</tr>';
}
vBulletin® v3.8.4, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot