Добро пожаловать на форум, Гость, это ваша панель
  • Страница 1 из 1
  • 1
Форум Perfect Soft » Моды и AMX Скриптинг CS 1.6 » CSSB War3FT MOD » Как поменять цвет выбора расы? (срочно помощь)
Как поменять цвет выбора расы?
Huh
Дата: Четверг, 15.03.2012, 23:57 | Сообщение # 1
офлайн

  • Сообщения: 58
  • Награды: 4
  • Замечания:
 
у меня на Орк и Хамелеон (свои расы сделал из них)

очень сильно настроены и т.д. сделал их только для админов
как при выборе /changerace
сделать, чтобы именно эти расы были выделены красным цветом?
 
SMaster
Дата: Пятница, 16.03.2012, 00:05 | Сообщение # 2
офлайн

  • Сообщения: 2189
  • Награды: 46
  • Замечания:
 
В menus.inl в фунции public MENU_ChangeRace( idUser, iRaceXP[MAX_RACES] )
менять нужно.

Поставь дополнительные условия именно для своих рас.


Наша группа вконтакте http://vk.com/nano_world_cs

Контакты:
ICQ 607786179
Skype xonahead

 
Huh
Дата: Пятница, 16.03.2012, 00:09 | Сообщение # 3
офлайн

  • Сообщения: 58
  • Награды: 4
  • Замечания:
 
что именно менять?

Добавлено (16.03.2012, 00:09)
---------------------------------------------
мне только надо 9 и 3 расу.
просто если я сделаю

// Get our race names
for ( i = 0; i < get_pcvar_num( CVAR_wc3_races ); i++ )
{
lang_GetRaceName( i + 1, idUser, szRaceName[i], 63 );
}

pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\R%L", LANG_PLAYER, "MENU_SELECT_RACE" );

то красным цветом будут выделены все расы

 
SMaster
Дата: Пятница, 16.03.2012, 00:15 | Сообщение # 4
офлайн

  • Сообщения: 2189
  • Награды: 46
  • Замечания:
 
Вот пример для Хамелеона.

Code

// Function will display the changerace menu
public MENU_ChangeRace( idUser, iRaceXP[MAX_RACES] )
{
   
  new szRaceName[MAX_RACES+1][64], i, pos, iKeys = 0, szMenu[512], szXP[16];

  // Get our race names
  for ( i = 0; i < get_pcvar_num( CVAR_wc3_races ); i++ )
  {
   lang_GetRaceName( i + 1, idUser, szRaceName[i], 63 );
  }

  pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "%L", LANG_PLAYER, "MENU_SELECT_RACE" );

  // Then add the experience column
  if ( get_pcvar_num( CVAR_wc3_save_xp ) )
  {
   pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\R%L^n^n", LANG_PLAYER, "MENU_WORD_EXPERIENCE" );
  }
  else
  {
   //pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "^n^n" );
   pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "^n" );
  }

  // Build the changerace menu (for every race)
  for ( i = 0; i < get_pcvar_num( CVAR_wc3_races ); i++ )
  {
   num_to_str( iRaceXP[i], szXP, 15 );
    
   // Add the "Select a Hero" message if necessary
   if ( i == 4 )
   {
    pos += format( szMenu[pos], charsmax(szMenu)-pos, "%L", LANG_PLAYER, "SELECT_HERO" );
   }
    
   // User's current race
   if ( i == p_data[idUser][P_RACE] - 1 )
   {
    if(i == 8)
     pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\r%d. %s\r\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );
    else
     pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\d%d. %s\d\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );    

    iKeys |= (1<<i);
   }

   // Race the user wants to change to
   else if ( i == p_data[idUser][P_CHANGERACE] - 1 )
   {
    pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\r%d. %s\r\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );

    iKeys |= (1<<i);
   }

   // All other cases
   else
   {
    /*
    new iRaceLimit = get_pcvar_num( CVAR_wc3_race_limit );
    new bool:bAllowRace = true;

    if ( iRaceLimit > 0 )
    {
     new iTotal[MAX_RACES];

     // Get how many people are using each race
     new iPlayers[32], iNumPlayers, i, iTarget;
     get_players( iPlayers, iNumPlayers );

     for ( i = 0; i < iNumPlayers; i++ )
     {
      iTarget = iPlayers[i];

      if ( iTarget != idUser && p_data[iTarget][P_RACE] > 0 && p_data[iTarget][P_RACE] <= get_pcvar_num( CVAR_wc3_races ) )
      {
       iTotal[p_data[iTarget][P_RACE]]++;
      }
     }
      
     // Now if we have more races selected than iRaceLimit provides us with, then we need to increase iRaceLimit
     while ( HLPR_TotalUsingRaces( iTotal ) > iRaceLimit * get_playersnum() )
     {
      iRaceLimit++;
     }

     // Check to see if there was an increase that was necessary
     if ( iRaceLimit > get_pcvar_num( CVAR_wc3_race_limit ) )
     {
      WC3_Log( true, "Error, increase wc3_race_limit to at least %d", iRaceLimit );
     }

     if ( iTotal[i+1] >= iRaceLimit )
     {
      bAllowRace = false;

     }
    }*/

    new bool:bAllowRace = true;

    // Check to see if the user can choose this race (are there too many of this race?)
    if ( bAllowRace )
    {
     if(i == 8)
      pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\r%d. %s\r\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );
     else
      pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\w%d. %s\y\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );     

     iKeys |= (1<<i);
    }

    // If not, display the race, but don't give them a key to press
    else
    {
     pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\d%d. %s\y\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );
    }
   }

  }

  iKeys |= (1<<i);
   
  // This is needed so we can make the Auto-Select option "0" if the number of races is 9
  if ( get_pcvar_num( CVAR_wc3_races ) == 9 )
  {
   i = -1;
  }

  pos += format( szMenu[pos], charsmax(szMenu)-pos, "%L", idUser, "SELECT_RACE_FOOTER", i + 1 );
   
  // Add a cancel button to the bottom
  if ( get_pcvar_num( CVAR_wc3_races ) != 9 )
  {
   iKeys |= (1<<9);

   pos += format( szMenu[pos], charsmax(szMenu)-pos, "^n\d0. %L", idUser, "WORD_CANCEL" );
  }
   
  // Show the menu to the user!
  show_menu( idUser, iKeys, szMenu, -1 );

  return;
}


if(i == 8)
pos += formatex( szMenu[pos], charsmax(szMenu)-pos, "\r%d. %s\r\R%s^n", i + 1, szRaceName[i], ( (get_pcvar_num( CVAR_wc3_save_xp )) ? szXP : " " ) );

И есть условие чтобы другой цвет был.
Для Орка так же нужно подогнать.

if(i == 8) поменяй на if(i == 8 || i == 3)
думаю получишь 2 расы красным цветом.


Наша группа вконтакте http://vk.com/nano_world_cs

Контакты:
ICQ 607786179
Skype xonahead

 
Huh
Дата: Пятница, 16.03.2012, 01:26 | Сообщение # 5
офлайн

  • Сообщения: 58
  • Награды: 4
  • Замечания:
 
если просто ставить if(i == 8)
то 9 раса показывается красным!
если if(i == 8 || i == 3)
то 9 и 4 !
тоесть переменную надо ставить на 1 меньше чем есть сама раса!

Добавлено (16.03.2012, 01:26)
---------------------------------------------
в общем так, спасибо SMaster
if(i == 8) - красным цветом 9 раса
if(i == 7)- красным цветом 8 раса
if(i == 0) - красным цветом 1 раса
if(i == 2) - красным цветом раса ОРК


Сообщение отредактировал Huh - Пятница, 16.03.2012, 14:26
 
KATANA
Дата: Воскресенье, 30.03.2014, 17:09 | Сообщение # 6
офлайн

  • Сообщения: 48
  • Награды: 0
  • Замечания:
 
а как поменять цвет полностью всего меню в зеленый?

Skype: S_KATANA_S

P.S. Нечего не продаю, нечего не пишу (не умею)
 
KILLER7x7
Дата: Воскресенье, 30.03.2014, 22:23 | Сообщение # 7
офлайн

  • Сообщения: 94
  • Награды: 4
  • Замечания:
 
KATANAСвойства и оформление меню.Как изменть цвет меню, изменить кнопки exit на выход и другое.

killer7x7_ua



 
KATANA
Дата: Понедельник, 31.03.2014, 17:45 | Сообщение # 8
офлайн

  • Сообщения: 48
  • Награды: 0
  • Замечания:
 
KILLER7x7, спасибо

Skype: S_KATANA_S

P.S. Нечего не продаю, нечего не пишу (не умею)
 
Форум Perfect Soft » Моды и AMX Скриптинг CS 1.6 » CSSB War3FT MOD » Как поменять цвет выбора расы? (срочно помощь)
  • Страница 1 из 1
  • 1
Поиск: