Русское сообщество по скриптингу

Админ меню доступ с 2-3 раунда  [Решено]

Все вопросы по работе и настройке AMXX и его плагинов.

Модератор: liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только вопросов по AMX Mod X и его плагинам.

Админ меню доступ с 2-3 раунда

Сообщение hap1zzz » 10 мар 2018, 15:33

Всем привит.ЯКак сделать чтобы некоторые функции были доступны после 2-3 раунда, я немножко пробовал делать но неудачно, меню совсем не работает. :(
1-исх.стандр
Код: Выделить всё
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <fun>
#include <fakemeta>
#include <engine>

#define PLUGIN  "AdminMenu"
#define VERSION "1.0"
#define AUTHOR  "hap1zzz"

new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0

new Weapons
[33]
new HP[33]
new Godmode[33]
new gSpawn[33]
new gMoney[33]
new Weapon[33] 

new name
[33]

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_menu("Menu 1", keys, "func_menu1")
    register_concmd("adminmenu", "AdminMenu")
        RegisterHam(Ham_Spawn, "player", "SpawnPlayer",1)
    register_event("HLTV", "round_start", "a", "1=0", "2=0")
    register_event("CurWeapon", "WeaponChange", "be", "1=1")
}

public round_start()
{
    
    for
(new id = 1;id <= get_maxplayers(); id++)
    {
        gSpawn[id] = 2
        HP
[id] = 1
        gMoney
[id] = 1
                Godmode
[id] = 1
                Weapon
[id] = 1
                Weapons
[id] = 1
    
}
}

public AdminMenu(id)
{
    static menu[650], iLen
    iLen 
= 0
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
          {
    iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\yАдмин Меню^n^n");
     }
     else
     
{
     iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\yАдмин Меню^n^n");    
     
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gSpawn[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d1. Воскреснуть: [%d]^n^n", gSpawn[id])
            keys &= ~MENU_KEY_1
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wВоскреснуть: \r[%d]^n^n", gSpawn[id])
            keys |= MENU_KEY_1
        
}
             
    
    
}
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d1. Воскреснуть: [0]^n^n", gSpawn[id])
        keys &= ~MENU_KEY_1
    
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(HP[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d2. Взять [Жизни и Броню]^n", HP[id])
            keys |= MENU_KEY_2
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wВзять \y[\rЖизни и Броню\y]^n", HP[id])
            keys |= MENU_KEY_2
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d2. Взять [Жизни и Броню]^n", HP[id])
        keys &= ~MENU_KEY_2    
    
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {    
        if
(Godmode[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d3. Взять Комплект гранат^n", Godmode[id])
            keys |= MENU_KEY_3
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wВзять Комплект гранат^n", Godmode[id])
            keys |= MENU_KEY_3
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d3. Взять Комплект гранат^n", Godmode[id])
        keys &= ~MENU_KEY_3
    
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gMoney[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Взять Деньги^n^n", gMoney[id])
            keys &= ~MENU_KEY_4
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wВзять Деньги^n^n", gMoney[id])
            keys |= MENU_KEY_4
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Взять Деньги^n^n", gMoney[id])
        keys &= ~MENU_KEY_4
    
}
    
    
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(Weapon[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Получить [Ак-47]^n", Weapon[id])
            keys |= MENU_KEY_5
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wПолучить \r[\yАк-47\r]^n", Weapon[id])
            keys |= MENU_KEY_5
        
}
    }
    else
    
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Получить [Ак-47]^n", Weapon[id])
            keys &= ~MENU_KEY_5
    
}
    
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(Weapons[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d5. Получить [М4А1]^n", Weapons[id])
            keys |= MENU_KEY_6
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \wПолучить \r[\yМ4А1\r]^n", Weapons[id])
            keys |= MENU_KEY_6
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d5. Получить [М4А1]^n", Weapons[id])
        keys &= ~MENU_KEY_6
    
}
    
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \wAmx Mod Меню^n")
        keys |= MENU_KEY_7
    
}
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d6. Amx Mod Меню^n")
        keys &= ~MENU_KEY_7
    
}
    iLen += formatex(menu[iLen], charsmax(menu) - iLen, "^n\r0. \wЗакрыть^n")
    keys |= MENU_KEY_0
    
    show_menu
(id, keys, menu, -1, "Menu 1");
    return PLUGIN_HANDLED
}
public func_menu(id, key)
{
    switch(key)
    {
        case 0:
        {
            if(gSpawn[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                ExecuteHam(Ham_CS_RoundRespawn, id)
                gSpawn[id] = gSpawn[id] -1
                AdminMenu
(id)
                get_user_name(id, name, 31)
            }
         }
        case 1:
        {
            
            if
(HP[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                        set_user_health(id, 125)
                set_user_armor(id, 50) 
                        HP
[id] = HP[id] -1
                        AdminMenu
(id)
            }
        }
        case 2:
        {
            
            if
(Godmode[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                     give_item( id, "weapon_hegrenade" )
                         give_item( id, "weapon_flashbang" )
                            give_item( id, "weapon_flashbang" )
                            give_item( id, "weapon_smokegrenade" )
                            Godmode[id] = Godmode[id] -1
                 AdminMenu
(id)     
            
}
        }
        case 3:
        {
            if(gMoney[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                cs_set_user_money(id, cs_get_user_money(id) + 16000)
                gMoney[id] = gMoney[id] -1
                AdminMenu
(id)
                get_user_name(id, name, 31)
            }
        }
        
        case 4
:
        {
            
            if
(Weapon[id] == 0)
            {
                                return PLUGIN_CONTINUE
            
}
            else
            
{
                                give_item(id,"weapon_ak47")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                                Weapon[id] = Weapon[id] -1
            
}
            AdminMenu(id)
        }
        
        case 5
:
        {
            
            if
(Weapons[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                give_item(id,"weapon_m4a1")
                give_item(id,"ammo_556nato")
                give_item(id,"ammo_556nato")
                give_item(id,"ammo_556nato")
                                Weapons[id] = Weapons[id] -1
            
}
            AdminMenu(id)
        }

        case 6:
        {
            client_cmd(id, "amxmodmenu")
        }
    }
    return PLUGIN_HANDLED
}


2-исх.Здесь я пытался что-то делать

Код: Выделить всё
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <fun>
#include <fakemeta>
#include <engine>

#define PLUGIN  "AdminMenu"
#define VERSION "1.0"
#define AUTHOR  "Dgjj"

new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0

new gRoundNum
new gRoundNum_2
new gRoundNum_3
new gRoundNum_4
new gRoundNum_5
new gRoundNum_6
new g_Maxplayers

new Weapons
[33]
new HP[33]
new Godmode[33]
new gSpawn[33]
new gMoney[33]
new Weapon[33] 

new name
[33]

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_menu("Menu 1", keys, "func_menu1")
    register_concmd("adminmenu", "AdminMenu")
    g_Maxplayers = get_maxplayers()
        RegisterHam(Ham_Spawn, "player", "SpawnPlayer",1)
    register_event("HLTV", "round_start", "a", "1=0", "2=0")
    register_event("CurWeapon", "WeaponChange", "be", "1=1")
}

public EventStartRound()
{
     gRoundNum++
     gRoundNum_2++
     gRoundNum_3++
     gRoundNum_4++
     gRoundNum_5++
     gRoundNum_6++
       
     for
(new id = 1; id <= g_Maxplayers; id++)
     {
          if(!is_user_connected(id))
               continue
                       
          if
(get_user_flags(id) & ADMIN_LEVEL_A)
          {
               set_task(0.0, "AdminMenu", id)
          }
     }
}

public EventRestartRound()
{
     gRoundNum = 0
     gRoundNum_2 
= 0
     gRoundNum_3 
= 0
     gRoundNum_4 
= 0
     gRoundNum_5 
= 0
     gRoundNum_6 
= 0
}


public round_start()
{
    
    for
(new id = 1;id <= get_maxplayers(); id++)
    {
        gSpawn[id] = 2
        HP
[id] = 1
        gMoney
[id] = 1
                Godmode
[id] = 1
                Weapon
[id] = 1
                Weapons
[id] = 1
    
}
}

public AdminMenu(id)
{
    static menu[650], iLen
    iLen 
= 0
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
          {
    iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\yАдмин Меню^n^n");
     }
     else
     
{
     iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\yАдмин Меню^n^n");    
     
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gRoundNum > 1 , gSpawn[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d1. Воскреснуть: [%d]^n^n", gSpawn[id])
            keys &= ~MENU_KEY_1
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wВоскреснуть: \r[%d]^n^n", gSpawn[id])
            keys |= MENU_KEY_1
        
}
             
    
    
}
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d1. Воскреснуть: [0]^n^n", gSpawn[id])
        keys &= ~MENU_KEY_1
    
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gRoundNum_2 > 1 , HP[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d2. Взять [Жизни и Броню]^n", HP[id])
            keys |= MENU_KEY_2
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wВзять \y[\rЖизни и Броню\y]^n", HP[id])
            keys |= MENU_KEY_2
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d2. Взять [Жизни и Броню]^n", HP[id])
        keys &= ~MENU_KEY_2    
    
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {    
        if
(gRoundNum_3 > 1 , Godmode[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d3. Взять Комплект гранат^n", Godmode[id])
            keys |= MENU_KEY_3
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wВзять Комплект гранат^n", Godmode[id])
            keys |= MENU_KEY_3
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d3. Взять Комплект гранат^n", Godmode[id])
        keys &= ~MENU_KEY_3
    
}
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gRoundNum_4 > 1 , gMoney[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Взять Деньги^n^n", gMoney[id])
            keys &= ~MENU_KEY_4
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wВзять Деньги^n^n", gMoney[id])
            keys |= MENU_KEY_4
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Взять Деньги^n^n", gMoney[id])
        keys &= ~MENU_KEY_4
    
}
    
    
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gRoundNum_5 > 1 , Weapon[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Получить [Ак-47]^n", Weapon[id])
            keys |= MENU_KEY_5
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wПолучить \r[\yАк-47\r]^n", Weapon[id])
            keys |= MENU_KEY_5
        
}
    }
    else
    
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d4. Получить [Ак-47]^n", Weapon[id])
            keys &= ~MENU_KEY_5
    
}
    
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gRoundNum_6 > 1 , Weapons[id] == 0)
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d5. Получить [М4А1]^n", Weapons[id])
            keys |= MENU_KEY_6
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \wПолучить \r[\yМ4А1\r]^n", Weapons[id])
            keys |= MENU_KEY_6
        
}
    }
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d5. Получить [М4А1]^n", Weapons[id])
        keys &= ~MENU_KEY_6
    
}
    
    if
(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \wAmx Mod Меню^n")
        keys |= MENU_KEY_7
    
}
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d6. Amx Mod Меню^n")
        keys &= ~MENU_KEY_7
    
}
    iLen += formatex(menu[iLen], charsmax(menu) - iLen, "^n\r0. \wЗакрыть^n")
    keys |= MENU_KEY_0
    
    show_menu
(id, keys, menu, -1, "Menu 1");
    return PLUGIN_HANDLED
}
public func_menu(id, key)
{
    switch(key)
    {
        case 0:
        {
            if(gRoundNum > 1 , gSpawn[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                ExecuteHam(Ham_CS_RoundRespawn, id)
                gSpawn[id] = gSpawn[id] -1
                AdminMenu
(id)
                get_user_name(id, name, 31)
            }
         }
        case 1:
        {
            
            if
(gRoundNum_2 > 1 , HP[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                        set_user_health(id, 125)
                set_user_armor(id, 50) 
                        HP
[id] = HP[id] -1
                        AdminMenu
(id)
            }
        }
        case 2:
        {
            
            if
(gRoundNum_3 > 1 , Godmode[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                     give_item( id, "weapon_hegrenade" )
                         give_item( id, "weapon_flashbang" )
                            give_item( id, "weapon_flashbang" )
                            give_item( id, "weapon_smokegrenade" )
                            Godmode[id] = Godmode[id] -1
                 AdminMenu
(id)     
            
}
        }
        case 3:
        {
            if(gRoundNum_4 > 1 , gMoney[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                cs_set_user_money(id, cs_get_user_money(id) + 16000)
                gMoney[id] = gMoney[id] -1
                AdminMenu
(id)
                get_user_name(id, name, 31)
            }
        }
        
        case 4
:
        {
            
            if
(gRoundNum_5 > 1 , Weapon[id] == 0)
            {
                                return PLUGIN_CONTINUE
            
}
            else
            
{
                                give_item(id,"weapon_ak47")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                give_item(id,"ammo_762nato")
                                Weapon[id] = Weapon[id] -1
            
}
            AdminMenu(id)
        }
        
        case 5
:
        {
            
            if
(gRoundNum_6 > 1 , Weapons[id] == 0)
            {
                return PLUGIN_CONTINUE
            
}
            else
            
{
                give_item(id,"weapon_m4a1")
                give_item(id,"ammo_556nato")
                give_item(id,"ammo_556nato")
                give_item(id,"ammo_556nato")
                                Weapons[id] = Weapons[id] -1
            
}
            AdminMenu(id)
        }

        case 6:
        {
            client_cmd(id, "amxmodmenu")
        }
    }
    return PLUGIN_HANDLED
}
Последний раз редактировалось hap1zzz 10 мар 2018, 16:39, всего редактировалось 1 раз.
Аватара пользователя
hap1zzz
 
Сообщения: 4
Зарегистрирован: 09 мар 2018, 11:47
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Pawn

Re: Adminmenu

Сообщение Subb98 » 10 мар 2018, 15:51

hap1zzz, добрый день. Пожалуйста, измените название темы на информативное, в соответствии с Вы должны зарегистрироваться, чтобы видеть ссылки.. Если вы не сделаете этого в течение суток, я изменю название темы сам, однако в этом случае вам будет выдано предупреждение в профиль.
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5485
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1329 раз.
Поблагодарили: 2343 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP

Re: Админ меню доступ с 2-3 раунда

Сообщение MrJunior » 10 мар 2018, 17:11

Создается переменная, в конце или в начале раунда увеличивается на 1. Получаем некий счетчик раундов. Потом при создании меню проверяем, к примеру, переменная меньше трех или нет, если да - пункт делаем не доступным.
Аватара пользователя
MrJunior
Скриптер
 
Сообщения: 146
Зарегистрирован: 21 сен 2016, 19:46
Откуда: localhost
Благодарил (а): 3 раз.
Поблагодарили: 31 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn | Web | Lua

Re: Админ меню доступ с 2-3 раунда

Сообщение hap1zzz » 10 мар 2018, 18:16

MrJunior писал(а):Создается переменная, в конце или в начале раунда увеличивается на 1. Получаем некий счетчик раундов. Потом при создании меню проверяем, к примеру, переменная меньше трех или нет, если да - пункт делаем не доступным.

Можно пример в виде кода? Буду благодарен:
Аватара пользователя
hap1zzz
 
Сообщения: 4
Зарегистрирован: 09 мар 2018, 11:47
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Pawn

Re: Админ меню доступ с 2-3 раунда

Сообщение MrJunior » 10 мар 2018, 18:26

Код: Выделить всё

new rounds_count
;
public round_start() // только что заметил, что вы не пользуетесь round_end'ом
{
    rounds_count++;
}
public AdminMenu(id)
{
    // только один пример
    if(get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(gSpawn[id] == 0 || round_count < 3) // добавили проверку, если кол-во начатых раундов меньше трех(2, 1, 0) - пункт не будет доступен
        {
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d1. Воскреснуть: [%d]^n^n", gSpawn[id])
            keys &= ~MENU_KEY_1
        
}
        else
        
{
            iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wВоскреснуть: \r[%d]^n^n", gSpawn[id])
            keys |= MENU_KEY_1
        
}          
    
}
    else
    
{
        iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\d1. Воскреснуть: [0]^n^n", gSpawn[id])
        keys &= ~MENU_KEY_1
    
}
 


Пример не полностью работоспособный.
Аватара пользователя
MrJunior
Скриптер
 
Сообщения: 146
Зарегистрирован: 21 сен 2016, 19:46
Откуда: localhost
Благодарил (а): 3 раз.
Поблагодарили: 31 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn | Web | Lua

Re: Админ меню доступ с 2-3 раунда

Сообщение hap1zzz » 11 мар 2018, 13:00

Что не так:?
Код: Выделить всё
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <fun>
#include <fakemeta>
#include <engine>

#define PLUGIN  "AdminMenu"
#define VERSION "1.0"
#define AUTHOR  "hap1zzz"

new keys MENU_KEY_1|MENU_KEY_0

new gSpawn[33]
new 
g_Round

new name[33]

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_menu("Menu 1"keys"func_menu1")
    
register_concmd("adminmenu""AdminMenu")
        
RegisterHam(Ham_Spawn"player""SpawnPlayer",1)
    
register_event("HLTV""event_round_start""a""1=0""2=0")
    
register_event("TextMsg","event_round_restart","a","2&#Game_C","2&#Game_w")
    
register_event("CurWeapon""WeaponChange""be""1=1")
}

public 
event_round_start()
{    
    
g_Round ++;
    
    for(new 
id 1;id <= get_maxplayers(); id++)
    {
        
gSpawn[id] = 2
    
}
}
 
public 
event_round_restart()
{
    
g_Round 0;
}
 
public 
AdminMenu(id)
{
    static 
menu[650], iLen
    iLen 
0
    
if(get_user_flags(id) & ADMIN_LEVEL_A)
          {
    
iLen formatex(menu[iLen], charsmax(menu) - iLen"\yАдмин Меню^n^n");
     }
     else
     {
     
iLen formatex(menu[iLen], charsmax(menu) - iLen"\yАдмин Меню^n^n");    
     }
    if(
get_user_flags(id) & ADMIN_LEVEL_A)
    {
        if(
gSpawn[id] == || g_Round 1)
        {
            
iLen += formatex(menu[iLen], charsmax(menu) - iLen"\d1. Воскреснуть: [%d]^n^n"gSpawn[id])
            
keys &= ~MENU_KEY_1
        
}
        else
        {
            
iLen += formatex(menu[iLen], charsmax(menu) - iLen"\r1. \wВоскреснуть: \r[%d]^n^n"gSpawn[id])
            
keys |= MENU_KEY_1
        
}
             
    
    }
    else
    {
        
iLen += formatex(menu[iLen], charsmax(menu) - iLen"\d1. Воскреснуть: [0]^n^n"gSpawn[id])
        
keys &= ~MENU_KEY_1
    
}
    
    
iLen += formatex(menu[iLen], charsmax(menu) - iLen"^n\r0. \wЗакрыть^n")
    
keys |= MENU_KEY_0
    
    show_menu
(idkeysmenu, -1"Menu 1");
    return 
PLUGIN_HANDLED
}
public 
func_menu(idkey)
{
    switch(
key)
    {
        case 
0:
        {
            if(
gSpawn[id] == || g_Round 1)
            {
                return 
PLUGIN_CONTINUE
            
}
            else
            {
                
ExecuteHam(Ham_CS_RoundRespawnid)
                
gSpawn[id] = gSpawn[id] -1
                AdminMenu
(id)
                
get_user_name(idname31)
            }
         }
    }
    return 
PLUGIN_HANDLED
Аватара пользователя
hap1zzz
 
Сообщения: 4
Зарегистрирован: 09 мар 2018, 11:47
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Pawn

Re: Админ меню доступ с 2-3 раунда  [Решено]

Сообщение MrJunior » 11 мар 2018, 15:24

Код: Выделить всё
if(gSpawn[id] == || g_Round 1

->
Код: Выделить всё
if(gSpawn[id] == || g_Round 2
Аватара пользователя
MrJunior
Скриптер
 
Сообщения: 146
Зарегистрирован: 21 сен 2016, 19:46
Откуда: localhost
Благодарил (а): 3 раз.
Поблагодарили: 31 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn | Web | Lua

Re: Админ меню доступ с 2-3 раунда

Сообщение hap1zzz » 15 мар 2018, 15:08

Спасибо
Аватара пользователя
hap1zzz
 
Сообщения: 4
Зарегистрирован: 09 мар 2018, 11:47
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Pawn


Вернуться в Вопросы по AMXX и его плагинам

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6