AMX MOD X
Вторник, 11.12.2018, 14:45:19



Приветствую Вас Гость | RSS
[ Главная ] [ Проблемы с русификацией - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » Проблемы с русификацией (Не выводит > 256 русских букв)
Проблемы с русификацией
oberon47Дата: Среда, 02.06.2010, 19:12:06 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 4
Репутация: 0
Статус: Не в сети
Хочу русифицировать мод . Проблема, что не выводит меню > 256 символов ( на английском этот порог превышается запросто)

Code
// The header
   new MenuText[2048] = "";
   formatex ( MenuText, charsmax( MenuText ), "\y%L \w^n",id,"Select_Skill", side+1, p_data[id][AVAILABLE_SKILL] ); //IDDQD
   // We have to save the side for checking keys later
   p_data[id][SKILL_SIDE] = side;
     
   // Here we save if the skill is an ultimate
   new bool:b_IsUltimate = false;
     
   // Calculate the side with the skills on side
   side *= MAX_SKILLS_ONSIDE;
     
   new i, KEY = 0;   
   for ( i = side; i < MAX_SKILLS; ++i )
   {
    // Detect if the skill is an ultimate
    b_IsUltimate = SKILL_is_ultimate( i, true );
      
    // This skill is available. Add a key to press for it
    if ( p_data[id][PLAYER_LVL] >= Skill_REQLevel[i] && !b_IsUltimate )
    {
     // Add every skill to the menu
     formatex ( MenuText, charsmax( MenuText ), "%s\r%d. \w%L - %d/%d^n", MenuText, ( i+1 - side ),id, Skill_Names[i], p_data_skill[id][i], Skill_Max_Points[i] ); //IDDQD
      
     // we count it for the valid keys
     KEY++;
    }
      
    // It's an available ultimate
    else if ( p_data[id][PLAYER_LVL] >= Skill_REQLevel[i] && b_IsUltimate )
    {
     // Add every ultimate to the menu
     formatex ( MenuText, charsmax( MenuText ), "%s\r%d. \w%L - %d/%d \y(bind key %s)^n", MenuText, ( i+1 - side ),id, Skill_Names[i], p_data_skill[id][i], Skill_Max_Points[i], Ultimate_Bindings[i] );//IDDQD
       
     // we count it for the valid keys
     KEY++;
    }
      
    // Unavailable skill / ultimate
    else   
    {
     // Add every skill / ultimate to the menu
     formatex ( MenuText, charsmax( MenuText ), "%s\d%d. %L - %d/%d (lvl %d )^n", MenuText, ( i+1 - side ),id, Skill_Names[i], p_data_skill[id][i], Skill_Max_Points[i], Skill_REQLevel[i] );//IDDQD
       
     // We have to count this key
     KEY++;
    }
      
    // The page is full
    if ( ( i + 1 - side ) == MAX_SKILLS_ONSIDE )
    {
     break;
    }
   }
     
   // Add the next page menupoint
   //formatex ( MenuText, charsmax( MenuText ), "%s^n\w9. Next Page^n", MenuText, ( i+2 - side ) );   
   formatex( MenuText, charsmax( MenuText ), "%s^n\r9. \w%L    ^n ", MenuText, id,"NEXT_PAGE" );  //IDDQD
        
   // We add the exit menupoint
   //formatex ( MenuText, charsmax( MenuText ), "%s^n\w0. Exit^n", MenuText );
   formatex( MenuText, charsmax( MenuText ), "%s^n\r0. \w%L    ^n ", MenuText, id,"EXIT_SKILL" );  //IDDQD
     
   // Create the keys
   static PRESSKEY;
   for ( i = 0; i < KEY; ++i )
   {
    PRESSKEY |= (1<<i);
   }
     
   // Add exit & next page button
   PRESSKEY |= (1<<9) | (1<<8);
     
    //client_print( id, print_chat, "%L",id, "skillsinfo" , side+1 );  //IDDQD
      
   // Show the player the menu
   show_menu ( id, PRESSKEY, MenuText, 25, "HandleSkill" );
     
   return;
}

Так же если делать обращение к файлам хелпника, то встречается такое же ограничение
Code
// Show attribs help
public MOTD_ShowAttribsHelp( id )
{
   static FilePath[1024]; //IDDQD
   get_configsdir( FilePath, charsmax( FilePath ) );
     
   // Add the place to the motd file
   add( FilePath, charsmax( FilePath ), "/uwc3ng/gamehelp/uwc3ng_attribs.htm" );
     
   // Is the file there?
   if ( !file_exists( FilePath ) )
   {
    log_amx( "[ERROR] Can't find %s", FilePath );
      
    return;
   }
     
   // Show the motd
   show_motd( id, FilePath, "UWC3NG Attribute Information!" );
     
   return;
}

Помогите знающие! Мод нуждается в глобальном описании и это ограничение просто убивает

З.Ы. Посмотрел тут темы. Ребята сразу менюшки пишут на русском не обращаясь к lang библиотекам. Это как? кодировку меняете? тогда у меня выдает ошибку error 10 invalid ...

Сообщение отредактировал oberon47 - Среда, 02.06.2010, 19:45:52
 
PomanoBДата: Среда, 02.06.2010, 20:50:15 | Сообщение # 2
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Репутация: 70
Статус: Не в сети
Это ограничение не обойти, английских влезает в два раза больше тк на один русский символ приходится в два раза больше байт (2 байта) чем на 1 английский

В дальнейшем просьба создавать темы только в новом форуме


http://romanov4400.mybrute.com
 
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » Проблемы с русификацией (Не выводит > 256 русских букв)
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2018