Пропуск пунктов меню

-=Batista=-

Просвященный
Сообщения
304
Реакции
88
Всем привет. В плагине basevotes есть голосование за карту. Нужно сделать так, чтобы пропускались номера 1, 2 и 3. Иначе во врем голосования за карту выбирается не сама карта, а оружие
 

R1KO

fuck society
Сообщения
9,460
Реакции
7,799
  • Команда форума
  • #5
исходники
 

diller110

Добрая душа
Сообщения
353
Реакции
278
Перед 290 строкой в файле votemap.sp
PHP:
for (new i = 0; i < map_count; i++)
	{
		GetArrayString(g_map_array, i, map_name, sizeof(map_name));
		menu.AddItem(map_name, map_name);
	}
можешь добавить строки
PHP:
menu.AddItem("none", "ITEMDRAW_SPACER", ITEMDRAW_SPACER);
, но не уверен, что это ни на что больше не повлияет.
 

-=Batista=-

Просвященный
Сообщения
304
Реакции
88
Перед 290 строкой в файле votemap.sp
PHP:
for (new i = 0; i < map_count; i++)
	{
		GetArrayString(g_map_array, i, map_name, sizeof(map_name));
		menu.AddItem(map_name, map_name);
	}
можешь добавить строки
PHP:
menu.AddItem("none", "ITEMDRAW_SPACER", ITEMDRAW_SPACER);
, но не уверен, что это ни на что больше не повлияет.

Мне нужен не активный нумерованный пункт
 

Tallanvor

НЕ ПИШУ я плагины!!! И не правлю! И ваще...
Сообщения
1,352
Реакции
554
-=Batista=-, поставь и настрой UMC и забудь об этой головной боли.
Да, протрахаешься несколько дней, пока вкуришь все конфиги (хотя можно вполне пользоваться и дефолтной сборкой, отредактировав под себя лишь главный конфиг)
Но поверь - это самый лучший и полный плагин для руления картами.

И да - он берёт на себя также и голосовалку из админ-меню.
 

-=Batista=-

Просвященный
Сообщения
304
Реакции
88
-=Batista=-, поставь и настрой UMC и забудь об этой головной боли.
Да, протрахаешься несколько дней, пока вкуришь все конфиги (хотя можно вполне пользоваться и дефолтной сборкой, отредактировав под себя лишь главный конфиг)
Но поверь - это самый лучший и полный плагин для руления картами.

И да - он берёт на себя также и голосовалку из админ-меню.

Хотелось бы, кончено, не так кардинально :(
 

Tallanvor

НЕ ПИШУ я плагины!!! И не правлю! И ваще...
Сообщения
1,352
Реакции
554
-=Batista=-, тогда жди с моря погоды, что могу ещё сказать.....
 

Tallanvor

НЕ ПИШУ я плагины!!! И не правлю! И ваще...
Сообщения
1,352
Реакции
554
-=Batista=-, тогда ловите оба кусок исходника с UMC, который как раз за это отвечает:

PHP:
Handle:BuildVoteMenu(Handle:vote_items, const String:title[], VoteHandler:callback)
{
    new bool:verboseLogs = GetConVarBool(cvar_logging);

    if (verboseLogs)
        LogUMCMessage("VOTE MENU:");

    //Begin creating menu
    new Handle:menu = (GetConVarBool(cvar_valvemenu))
        ? CreateMenuEx(GetMenuStyleHandle(MenuStyle_Valve), Handle_VoteMenu,
                       MenuAction_DisplayItem|MenuAction_Display)
        : CreateMenu(Handle_VoteMenu, MenuAction_DisplayItem|MenuAction_Display);

    SetVoteResultCallback(menu, callback); //Set callback
    SetMenuExitButton(menu, false); //Don't want an exit button.
        
    //Set the title
    SetMenuTitle(menu, title);
    
    //Keep track of slots taken up in the vote.
    new blockSlots = GetConVarInt(cvar_block_slots);
    new voteSlots = blockSlots;
    
    if (GetConVarBool(cvar_novote))
    {
        SetMenuOptionFlags(menu, MENUFLAG_BUTTON_NOVOTE);
        voteSlots++;
        
        if (verboseLogs)
            LogUMCMessage("1: No Vote");
    }
    
    DEBUG_MESSAGE("Setup slot blocking.")
    //Add blocked slots if...
    //    ...the cvar for blocked slots is enabled.
    AddSlotBlockingToMenu(menu, blockSlots);
    
    new size = GetArraySize(vote_items);
    
    //Throw an error and return nothing if...
    //    ...the number of items in the vote is less than 2 (hence no point in voting).
    if (size <= 1)
    {
        DEBUG_MESSAGE("Not enough items in the vote. Aborting.")
        LogError("VOTING: Not enough maps to run a map vote. %i maps available.", size);
        CloseHandle(menu);
        return INVALID_HANDLE;
    }
    new Handle:voteItem;
    decl String:info[MAP_LENGTH], String:display[MAP_LENGTH];
    for (new i = 0; i < size; i++)
    {
        voteSlots++;
        
        voteItem = GetArrayCell(vote_items, i);
        GetTrieString(voteItem, "info", info, sizeof(info));
        GetTrieString(voteItem, "display", display, sizeof(display));
        
        AddMenuItem(menu, info, display);
        
        if (verboseLogs)
            LogUMCMessage("%i: %s (%s)", voteSlots, display, info);
    }
    
    DEBUG_MESSAGE("Setting proper pagination.")
    SetCorrectMenuPagination(menu, voteSlots);
    DEBUG_MESSAGE("Vote menu built successfully.")
    return menu; //Return the finished menu.
}

//Adds slot blocking to a menu
AddSlotBlockingToMenu(Handle:menu, blockSlots)
{
    //Add blocked slots if...
    //    ...the cvar for blocked slots is enabled.
    if (blockSlots > 3)
        AddMenuItem(menu, NOTHING_OPTION, "", ITEMDRAW_SPACER);
    if (blockSlots > 0)
        AddMenuItem(menu, NOTHING_OPTION, "Slot Block Message 1", ITEMDRAW_DISABLED);
    if (blockSlots > 1)
        AddMenuItem(menu, NOTHING_OPTION, "Slot Block Message 2", ITEMDRAW_DISABLED);
    if (blockSlots > 2)
        AddMenuItem(menu, NOTHING_OPTION, "", ITEMDRAW_SPACER);
    if (blockSlots > 4)
        AddMenuItem(menu, NOTHING_OPTION, "", ITEMDRAW_SPACER);
}
 

Похожие темы

Сверху Снизу