Топ 10
Demos Author
85 ru Toffifee
67 ru DeathClaw
64 ru Dubstep
41 ru ShoCk
40 ru xavi
36 lv BuTaMuH
32 ru RoN`
24 ua Adantoud
24 ru Lolwhat
20 ru Bibika
Навигация
Голосование
Какие мувики вы бы хотели видеть в еженедельном выпуске MOTW?
KZ (новинки)
KZ (за последние 2 года)
KZ (старше 2ух лет)
HnS
Surf
Classic (стрельба)
Другое (напишу в комментах)
Только зарегистрированные пользователи могут голосовать
Опубликовано: ru newbie
Комментарии: 12
Голосов: 75
Все голосования
Последние пользователи
ru S1m 20:13:43
lv SubSonic 18:56:18
ru aquatic 08:00:30
ru eFFecT 14:42:21
kz Konafetto 08:18:02
ru sl1wzz 13:29:01
ru Jig'SaW 07:31:40
ru XuMeRa 08:14:43
by scorpkz 03:52:22
ru swatter 18:09:25
Добро пожаловать
Нас можно найти здесь
На сайте
Пользователей: 0 (0)
Гостей: 0
Зарегистрировано: 2`819
Новичок: ru luxoflux
Максимальный онлайн: 21
Зарегистрирован: 25.04.2011
Мини-чат
Только зарегистрированные пользователи могут добавлять сообщения
14.04.2024 08:52
Q
08.04.2024 20:05
Всем ку
14.02.2024 09:56
ua hypno - Арчи, как сам? Где ты сейчас живешь? Последнее, что помню от тебя, ты перевернулся в столб на почтовой машине.
14.02.2024 09:53
Ку-ку
24.01.2024 16:49
привет старичкам
10.01.2024 22:51
uq-hns,всем привет из 2010
02.01.2024 17:06
С НОВЫМ ГОДОМ!
23.12.2023 16:12
@ddran @baptak Здарова
16.12.2023 17:10
Всем привет
14.12.2023 02:58
буду раз в год че-то писать сюда просто так) здарова, мужчины! =)
Посетите, пожалуйста, наш канал в IRC чате - #unique-kz @ QNet.
Прочитайте правила, прежде чем задать вопрос.
Перевод текста в html коде таблицы motd окна плагина статистики
Список форумов · General help · AMXX plugins/Server help · Перевод текста в html коде таблицы motd окна плагина статистики
Модераторы: ru newbie
resistance
05.03.2011 12:02
avatar
Случилась очередная проблема. Я уверен, что здесь достаточно знающих людей, которые смогут помочь, поэтому пишу именно сюда.

В общем я русифицировал некий плагин статистики Edge и Jump Bug'ов для своего сервера: перевел, скомпилировал, и залил на сервер. Ну в общем все по стандарту. Стал проверять: все замечательно, текст практически везде отображается на русском, помимо одного места...

Как и любой другой плагин статистики, этот, естественно, ведет свои топы багов, точно такие же, как и, например, топ15 на серверах классических модов, LJ's топы и т.п.

Топ, как и любой другой, делится на столбцы, так именно названия этих столбцов ("Место", "Ник", "Высота" и т.д.) не отображаются на русском языке, вместо них выводится что-то вроде кириллицы. Для наглядности - скриншот:

[link]

И это несмотря на то, что во ВСЕХ остальных местах (сообщения в чате, HUDы, лог в консоли) русскоязычные символы отображаются нормально.

Пробовал переводить посредством "словарей" - при компиляции выдает уйму ошибок (скрин):

[link]





[Теперь сами коды таблиц топов в мотд-окнах:]


Дефолтный код таблицы в исходнике, нетронутым русификацией:


new motd[2048]
        add(motd,2048,"<html><head><style>")
        add(motd,2048,"body { background-color:#000000; font-family:Tahoma; font-size:10px; color:#FFFFFF; }")
        add(motd,2048,".tabel { border-style:solid; border-width:1px; border-color:#FFFFFF; font-family:Tahoma; font-size:10px; color:#FFFFFF; }")
        add(motd,2048,".header { background-color:#292929; font-family:Tahoma; font-size:10px; color:#FFFFFF; font-weight:800; }")
        add(motd,2048,"</style></head><body>")
        add(motd,2048,"<br><br><table border=0 cellspacing=0 cellpadding=1 width=90% align=center class=tabel>")
        add(motd,2048,"<tr><td class=header width=5% align=center>#</td><td class=header width=30%>Name</td><td class=header width=15%>Distance</td><td class=header width=15%>Double</td><td class=header width=15%>Triple</td><td class=header width=20%>Total</td></tr>")



Код той же таблицы топа уже после русификации:


new motd[2048]
        add(motd,2048,"<html><head><style>")
        add(motd,2048,"body { background-color:#000000; font-family:Tahoma; font-size:10px; color:#FFFFFF; }")
        add(motd,2048,".tabel { border-style:solid; border-width:1px; border-color:#FFFFFF; font-family:Tahoma; font-size:10px; color:#FFFFFF; }")
        add(motd,2048,".header { background-color:#292929; font-family:Tahoma; font-size:10px; color:#FFFFFF; font-weight:800; }")
        add(motd,2048,"</style></head><body>")
        add(motd,2048,"<br><br><table border=0 cellspacing=0 cellpadding=1 width=90% align=center class=tabel>")
        add(motd,2048,"<tr><td class=header width=5% align=center>#</td><td class=header width=30%>Ник</td><td class=header width=15%>Высота</td><td class=header width=15%>Двойной</td><td class=header width=15%>Тройной</td><td class=header width=20%>Повторений</td></tr>")



Код после русификации и попытки перевода таблицы посредством словарей:


new motd[2048]
        add(motd,2048,"<html><head><style>")
        add(motd,2048,"body { background-color:#000000; font-size:10px; color:#FFFFFF; }")
        add(motd,2048,".tabel { border-style:solid; border-width:1px; border-color:#FFFFFF; font-size:10px; color:#FFFFFF; }")
        add(motd,2048,".header { background-color:#292929; font-size:10px; color:#FFFFFF; font-weight:800; }")
        add(motd,2048,"</style></head><body>")
        add(motd,2048,"<br><br><table border=0 cellspacing=0 cellpadding=1 width=90% align=center class=tabel>")
        add(motd,2048,"<tr><td class=header width=5% align=center>#</td><td class=header width=30%>"%L", LANG_SERVER, "EBTOP_NAME"</td><td class=header width=15%>"%L", LANG_SERVER, "EBTOP_HEIGHT"</td><td class=header width=15%>"%L", LANG_SERVER, "EBTOP_DOUBLE"</td><td class=header width=15%>"%L", LANG_SERVER, "EBTOP_TRIPPLE"</td><td class=header width=20%>"%L", LANG_SERVER, "EBTOP_TOTAL"</td></tr>")





Единственное, что менял в приведенных кодах - убирал параметр с типом шрифта (Tahoma), т.к. подумал, что проблема может быть в нем, если он не поддерживает русскоязычных символов. Но конкретно напортачить, когда стирал указание шрифта, я не мог, проверял много раз.

Облазил хренову тучу различных сайтов и форумов, но ничего по теме не нашел. И вот теперь надеюсь, что мне помогут здесь.

На всякий случай креплю сюда архивы с исходниками:

[link] - не тронутый мною исходник со всеми прибамбасами, скачанный с инета

[link] - уже русифицированный исходник

[link] - исходник, русифицированный посредством словаря вместе с самим словарем.
Последний раз редактировалось: 06.03.2011 13:36
BorJomi
05.03.2011 13:44
avatar
я конечно не уверен, но попробуй не через add() оформлять топ на примере функции show_eb(id)

вот пример функции, не знаю норм ли отображает все данны или нет просто проверь переводить на русс.

[Код]


public show_eb(id)
{
    if(get_pcvar_num(kz_ebs_enabled) && (get_pcvar_num(kz_eb_top) == 2 || get_pcvar_num(kz_eb_top) == 3))
    {
        new  buffer[2048], len

        len = formatex(buffer, 2047, "<body bgcolor=#FFFFFF><table width=100%% cellpadding=2 cellspacing=0 border=0>")
        len += formatex(buffer[len], 2047-len, "<tr  align=center bgcolor=#52697B><th width=5%%> # <th width=30%% align=left> Name <th  width=15%%> Distance <th width=15%%> Double <th width=15%%> Triple <th width=20%%> Total")
    
        new vault = nvault_open(gVAULT_E)
        if(vault != -1)
        {
            for(new i=1;i<=10;i++)
            {
                new szkey[8]
                new szreturn[256], arg1[32], arg2[32], arg3[5], arg4[5], arg5[5], arg6[5]
                format(szkey,8,"%d",i)
                nvault_get(vault,szkey,szreturn,256)
                
                if(parse(szreturn,arg1,32,arg2,32,arg3,4,arg4,4,arg5,4,arg6,4) != 0)
                {
                    while (containi(arg2, "<") != -1) replace(arg2, 63, "<", "&lt")
                    while (containi(arg2, ">") != -1) replace(arg2, 63, ">", "&gt")
                    
                    len += formatex(buffer[len], 2047-len, "<tr align=center%s><td> %d <td align=left> %s <td> %s <td> %s <td> %s <td> %s", ((i%2)==0) ? "" : " bgcolor=#A4BED6", (i+1), arg2, arg3, arg5, arg6, arg4)                
                }
            }
            nvault_close(vault)
            
            len += formatex(buffer[len], 2047-len, "</table></body>")
            show_motd(id, buffer, "Top 10 Edge Buggers")
        }
    }
    return get_pcvar_num(kz_bugs_viscmds) ? PLUGIN_CONTINUE : PLUGIN_HANDLED
}



Последний раз редактировалось: 06.03.2011 13:38
Продаю некоторые приватные плагины, такие как основной кз плаг+веб статс к нему, и другие интересные проекты borjomi-page.at.ua
resistance
05.03.2011 16:05
avatar
newbie, спасибо. Я даже не знаю, смеяться или плакать
Я надеюсь, что ты сделал, чтобы меня носом ткнуть и помочь, а не чтобы палить. Если вариант первый, то спасибо, что ткнул меня носом. Подправил... Теперь отредактируй пост, пожалуйста, да? Не надо палить пока что. Не время еще просто...

BorJomi, спасибо, попробую и отпишу...
Последний раз редактировалось: 05.03.2011 16:09
newbie
05.03.2011 17:13
avatar
у тебя не компилится из-за этого кода (вырезал часть)

<td class=header width=15%>"%L", LANG_SERVER, "EBTOP_HEIGHT"</td><td class=header width=15%>"%L", LANG_SERVER, "EBTOP_DOUBLE"</td><td class=header width=15%>"%L", LANG_SERVER, "EBTOP_TRIPPLE"</td><td class=header width=20%>"%L", LANG_SERVER, "EBTOP_TOTAL"</td></tr>")


то есть ты заканчиваешь строку, а дальше идет %L, на который компилятор правильно указывает что это ошибка

насчет русификации.. нужно поменять кодировку на windows-1251


resistance
05.03.2011 18:09
avatar
Сообщение от ru newbie:
нужно поменять кодировку на windows-1251

А ты не мог написать название какого-нибудь тхт-редактора, который позволяет сохранять в такой кодировке?
По крайней мере в AkelPad'e никакой кодировки с конкретно таким названием я не нашел, а в обычном блокноте кодировок вообще всего 4 и среди них такой тоже нету.
newbie
05.03.2011 18:39
avatar
я имею ввиду чтобы ты добавил в хтмл код описание кодировки


resistance
05.03.2011 18:40
avatar
Я все понял, сделал, исправил. Проверил - все работает.
Спасибо. Тему можно закрывать
Последний раз редактировалось: 05.03.2011 19:04
resistance
06.03.2011 13:30
avatar
А вот еще вопросик напоследок (да... знаю, что уже задолбал):
Можно ли в определенном тексте, который будет выводить плагин (например - пункт меню LJ's топа) указать размер шрифта, т.е. уменьшить выводимый текст или наоборот - увеличить? И если можно, то как?
newbie
06.03.2011 13:43
avatar
Сообщение от ru resistance:
А вот еще вопросик напоследок (да... знаю, что уже задолбал):
Можно ли в определенном тексте, который будет выводить плагин (например - пункт меню LJ's топа) указать размер шрифта, т.е. уменьшить выводимый текст или наоборот - увеличить? И если можно, то как?


Это обычные меню типо как при выборе команды? если да - то нельзя


resistance
06.03.2011 21:38
avatar
Сообщение от ru newbie:
Сообщение от ru resistance:Это обычные меню типо как при выборе команды?


Нет, я же игровой движок перебирать не собираюсь)
Я имею ввиду менюшки, вроде тех, что, например, открываются при вводе в чат команды /ljtop вашего плагина статистики.


Ну или например размер шрифтов в HUD месагах, выводимых плагинами, например - основная статистика вашего плагина, которая выводится при LJ's прыжках
Последний раз редактировалось: 07.03.2011 11:47
patrig
07.03.2011 11:15
avatar
Все верно сделал, только забыл после <html><head> добавить <meta http-equiv=^"Content-Type^" content=^"text/html; charset=utf-8^">

Пример:
add(motd,2048,"<html><head><style>")

На
add(motd,2048,"<html><head><meta http-equiv=^"Content-Type^" content=^"text/html; charset=utf-8^"><style>")

Ну и все это дело в UTF без бом

Вот тебе и русский язык в motd окне...

P.S. Юзай Notepad



Так же добавление синтаксиса PAWN линк
Последний раз редактировалось: 07.03.2011 11:24
Американский форум - Задаёшь вопрос, потом тебе отвечают.
Израильский форум - Задаёшь вопрос, потом тебе задают вопрос.
Русский форум - Задаёшь вопрос, потом тебе долго рассказывают, какой ты мудак.
resistance
07.03.2011 11:48
avatar
patrig, спасибо конечно, но я уже давно все так и сделал)
Последний раз редактировалось: 07.03.2011 11:50
resistance
08.03.2011 12:20
avatar
Ну так что? Никто не знает как изменить размер шрифта?
newbie
08.03.2011 18:10
avatar
Сообщение от ru resistance:
Ну так что? Никто не знает как изменить размер шрифта?


не думаю что это возможно