![]() |
Показать все 10 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Вывод текста из resource\modname_english.txt (https://hlfx.ru/forum/showthread.php?threadid=1392)
Вывод текста из resource\modname_english.txt
При выводе данных кодов (Н-р #AM_Test) в консоль или в чат все выводится правильно.
Но при выводе в HUD сообщение наблюдаются непонятные косяки - выводится спрайт фонт-файла. (тексты в titles.txt), при создании в титлах ссылки вида #AM_Test в худе выводится #AM_Test (как ни странно)
__________________
Сайт поддержки кодеров на AMX Mod X
В худ выводится то, что есть в titles.txt
__________________
Тогда вылазиет вот такая хрень
__________________
Сайт поддержки кодеров на AMX Mod X
Это обычный немодифицированный халф-лайф? Не встречался с таким багом. И resource\modname_english.txt у меня нет - я с WON-версией исключительно работаю.
__________________
Ну эт у меня в адреналине так (СоХЛ кастом билд 1.0)
Добавлено 02-07-2008 в 17:46:
Решил проблему из поста 3.
Отчет о проделанной работе:
Причиной данного бреда было то, что движок криво считывал символы русской раскладки в кодировке ANSI. Фактически вместо нужного символа было код_символа-256. Что я и профиксил. Возможно это можно было сделать проще, но меня устраивает и так
hud_redraw.cpp
int CHud _:_:_ DrawHudString(int xpos, int ypos, int iMaxX, char *szIt, int r, int g, int b )
{
// draw the string until we hit the null character or a newline character
//ConsolePrint("DrawHudString\n");
for ( ; *szIt != 0 && *szIt != '\n'; szIt++ )
{
int next ;
if (*szIt >= 0) // Проверка на ошибку считывания
{
next= xpos + ChWidth( *szIt );
}
else
{
next= xpos + ChWidth( *szIt + 256 );
}
if ( next > iMaxX )
return xpos;
TextMessageDrawChar( xpos, ypos, *szIt, r, g, b );
xpos = next;
}
return xpos;
}
inline int TextMessageDrawChar( int x, int y, int number, int r, int g, int b )
{
//
// alternative font in font.spr
//
if (! CVAR_GET_FLOAT ("hud_altfont"))
return gEngfuncs.pfnDrawCharacter( x, y, number, r, g, b );
if (number == '\n' || number == '\r' || !number)
return 0;
wrect_t char_rect;
if (number == 1) number = 255;
if (number >= 0) // Проверка на ошибку считывания
{
char_rect.left = (number % 16) * 16;
char_rect.top = (int)floor(number / 16.0f) * 16;
char_rect.right = char_rect.left + 16;
char_rect.bottom = char_rect.top + 16;
}
else
{
char_rect.left = ((number + 256) % 16) * 16;
char_rect.top = (int)floor((number + 256) / 16.0f) * 16;
char_rect.right = char_rect.left + 16;
char_rect.bottom = char_rect.top + 16;
}
HSPRITE hspr = SPR_Load( "sprites/font.spr" );
SPR_Set(hspr, r, g, b );
SPR_DrawAdditive(0, x, y, &char_rect);
return 1;
}
__________________
Сайт поддержки кодеров на AMX Mod X
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Ух ты, код прям как в хлфх
__________________
XaeroX предполагаю, что это одно из самых очевидных решений.
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Scrama, может я написал название не правильно , это тот билд который я скачал с твоего сайта
__________________
Сайт поддержки кодеров на AMX Mod X
Ага. Просто кастом билды - это дядьмишины, начинались с 1.3, вроде, а это revisionbuild. Как бы предполагалось, что там вообще ничего нового не будет, только багфикс. Кстати, по поводу багов я потом тебе постучусь - осенью, может быть, вторую версию сделаем.
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Временная зона GMT. Текущее время 13:53. | Показать все 10 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024